intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Giáo trình Lập trình căn bản - ThS. Nguyễn Cao Trí

Chia sẻ: Nga Nga | Ngày: | Loại File: PPT | Số trang:74

148
lượt xem
35
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Giáo trình Lập trình căn bản của ThS. Nguyễn Cao Trí nhằm giúp các bạn biết được một số thuật ngữ liên quan đến máy tính và lập trình, sơ lược về ngôn ngữ lập trình, ngôn ngữ minh họa Pseudo code và Pascal, các giải thuật cơ bản. Từ đó, giúp các bạn có cơ sở lý thuyết và kỹ năng cơ bản về lập trình máy tính.

 

 

Chủ đề:
Lưu

Nội dung Text: Bài giảng Giáo trình Lập trình căn bản - ThS. Nguyễn Cao Trí

  1. Giáo trình LẬP TRÌNH CĂN BẢN Dành cho sinh viên chính quy chuyên ngành Công Nghệ Thông Tin ThS. Nguyễn Cao Trí caotri@dit.hcmut.edu.vn www.dit.hcmut.edu.vn/~caotri Đại Học Bách Khoa Tp.HCM Bài giảng môn Lập Trình Căn Bản Khoa Công Nghệ Thông Tin
  2. Giới thiệu  Mục tiêu môn học Giới thiệu các khái niệm cơ bản về lập trình trên máy tính. Cung cấp cơ sở lý thuyết và kỹ năng cơ bản về lập trình cho các môn học sau.  Nội dung – Một số thuật ngữ liên quan đến máy tính và lập trình. – Sơ lược về ngôn ngữ lập trình – Ngôn ngữ minh họa Pseudo code và Pascal – Các giải thuật cơ bản  Kỹ năng tư duy và thực hành trên ngôn ngữ cụ thể. Đại Học Bách Khoa Tp.HCM Trang 2 Khoa Công Nghệ Thông Tin
  3. Phương thức  Phương thức học – Giờ lý thuyết: giảng và báo cáo – Giờ thực hành tại phòng máy  Kiểm tra và thi – Kiểm tra thực hành: kỹ năng lập trình – Thi lý thuyết : trắc nghiệm khách quan – Được tham khảo tài liệu  Tài liệu tham khảo – Slide bài giảng Lập Trình Căn Bản – Giáo trình Lập trình căn bản – Khoa CNTT  Tài liệu khác – CDROM bài tập PASCAL và thực hành – www.dit.hcmut.edu.vn/~caotri Đại Học Bách Khoa Tp.HCM Trang 3 Khoa Công Nghệ Thông Tin
  4. Chương 1 Khái niệm cơ bản Một số khái niệm cơ bản về –Máy tính & chương trình máy tính –Ngôn ngữ lập trình ,translator,.. Giải thuật và flow chart –Giải thuật & biểu diễn giải thuật –Flowchart Công cụ phát triển –Công cụ IDE, Compiler –Error & debug Đại Học Bách Khoa Tp.HCM Bài giảng môn Lập Trình Căn Bản Khoa Công Nghệ Thông Tin
  5. Máy tính ­ Computer  Máy tính Analog  Máy tính số – Hệ nhị phân – Máy tính lập trình được – Mô hình máy Turing và Von Newman – Các thế hệ máy tính  Đặc tính chung – Khả năng tính toán – Khả năng thực hiện các phép toán logic – Tốc độ tính toán cao – Làm theo chỉ thị Đại Học Bách Khoa Tp.HCM Trang 5 Khoa Công Nghệ Thông Tin
  6. Kiến trúc máy tính  Máy tính (Computer system) Bao gồm nhiều thiết bị phần cứng (hardware devices)  Keyboard  Screen (monitor)  Disks  Memory  Processing Units  Hệ điều hành (Operating System – OS)  Phần mềm (software) – Công dụng: êệ thống, ứng dụng, cơ sở dữ liệu – Môi trường hoạt động: OS, Network, WEB, Server,.. Đại Học Bách Khoa Tp.HCM Trang 6 Khoa Công Nghệ Thông Tin
  7. Chương trình máy tính  Chương trình – Danh mục các trang thiết bị, tài nguyên sử dụng – Tiến trình sử dụng các tài nguyên và thực hiện các công việc định trước – Kết quả thực hiện  Chương trình máy tính – Tập hợp các lệnh được liệt kê theo một trình tự nhất định – Các dữ liệu sẽ được nhận – Các tài nguyên cần sử dụng – Các kết quả sẽ có được – Mục tiêu: xử lý dữ liệu theo yêu cầu định trước  Lập trình: viết chương trình cho máy tính Đại Học Bách Khoa Tp.HCM Trang 7 Khoa Công Nghệ Thông Tin
  8. Ngôn ngữ lập trình  Ngôn ngữ lập trình – Phương tiện để viết chương trình cho máy tính – Hàng trăm ngôn ngữ lập trình khác nhau – Những quy định về cú pháp (syntax) & ngữ nghĩa (semantic) – Máy tính có thể hiểu được  Phân chia làm 3 nhóm chính – Ngôn ngữ máy - Machine languages  Ngôn ngữ duy nhất của máy tính - CPU – Hợp ngữ - Assembly languages – Ngôn ngữ cấp cao - High-level languages Đại Học Bách Khoa Tp.HCM Trang 8 Khoa Công Nghệ Thông Tin
  9. Ngôn ngữ máy ­ Machine languages  Ngôn ngữ duy nhất được máy tính (CPU) hiểu trực tiếp.  Được xác định bởi tập lệnh của CPU – Phụ thuộc vào máy tính cụ thể – Dạng nhị phân {0,1}* – Rất khó đọc hiểu – Khó có khả năng viết chương trình trực tiếp  Khó nhớ hàng chục ngàn lệnh dạng {0,1}*  Rất khó xác định & sửa lỗi  Không được sử dụng trong thực tế để viết chương trình  Nền tảng xây dựng hợp ngữ Đại Học Bách Khoa Tp.HCM Trang 9 Khoa Công Nghệ Thông Tin
  10. Hợp ngữ ­ Assembly Languages  Sử dụng các từ khóa tiếng Anh cho các lệnh hay nhóm lệnh của mã máy.  Được dịch sang mã máy khi thực hiện  Chuyển đỗi nhanh chóng  Dễ đọc và dễ hiểu hơn  Vẫn tương đối khó sử dụng do – Các lệnh còn đơn giản nên phải dùng nhiều lệnh. – Chưa có những cấu trúc điều khiển thuận tiện – Khả năng tìm và sửa lỗi cũng chưa thuận tiện.  Nền tảng xây dựng các ngôn ngữ cấp cao Đại Học Bách Khoa Tp.HCM Trang 10 Khoa Công Nghệ Thông Tin
  11. Ngôn ngữ cấp cao  Một câu lệnh diễn tả nhiều động thái  Có cấu trúc ngày càng giống ngôn ngữ tự nhiên (tiếng Anh)  Được dịch sang assembly hay mã máy bằng các chương trình dịch trước khi thực thi. – Source code & Executed code  Được phân làm nhiều lớp – Lập trình goto – Lập trình cấu trúc – Structured – Lập trình hướng đối tượng – Object Oriented – Các dạng khác Đại Học Bách Khoa Tp.HCM Trang 11 Khoa Công Nghệ Thông Tin
  12. Học ngôn ngữ lập trình  Học ngữ pháp – Quy tắc ngữ pháp – Từ vựng – Cấu trúc câu  Ngữ nghĩa của các lệnh  Các “thành ngữ”  Học ngôn ngữ lập trình VS. Học ngôn ngữ tự nhiên – Quy tắc ngữ pháp đơn giản – Từ vựng ít, tự quy định – Cấu trúc câu đơn giản  Hạn chế và khó khăn của sử dụng ngôn ngữ lập trình. Đại Học Bách Khoa Tp.HCM Trang 12 Khoa Công Nghệ Thông Tin
  13. Chương trình dịch  Dùng để dịch từ một ngôn ngữ lập trình này sang ngôn ngữ lập trình khác  Mục tiêu cuối cùng là dịch sang mã máy để có được executed code –> chương trình thực thi  Phân loại: – Intepreter – thông dịch – Compiler – biên dịch – Intepreter vs. Compiler  Công cụ phát triển – Integrated Development Environment (IDE) – Soạn thảo – Dịch và sửa lỗi chương trình – Chạy thử và sửa lỗi Đại Học Bách Khoa Tp.HCM Trang 13 Khoa Công Nghệ Thông Tin
  14. Một số khái niệm khác  Lỗi và sửa lỗi – Syntax error – lỗi ngữ pháp – Semantic error- lỗi ngữ nghĩa – Runtime error - Lỗi thực thi  Debug – Tìm và sửa lỗi  Dữ liệu, kiểu dữ liệu – Các kiểu dữ liệu cơ bản  integer, long, character, byte, ….  Real (double, float)  Kiểu khác: string – Kiểu dữ liệu có cấu trúc: array, string, record,..  Biến (Variable) & Hằng (Constant)  Giải thuật: khái niệm, công cụ biểu diễn  Flow chart – lưu đồ Đại Học Bách Khoa Tp.HCM Trang 14 Khoa Công Nghệ Thông Tin
  15. Flow chart • Start /Begin bắt đầu giải thuật. Chỉ có 1 và chỉ 1 điểm START. Start • Dòng xử lý • Input / Output dữ liệu xuất/nhập • Đặc tả thao tác xử lý hay tính toán dữ liệu No Điều kiện • Điều khiển rẽ nhánh Yes Giá trị xét phân nhánh • Phát biểu rẽ nhánh khác Trường hợp 1 Trường hợp i  Khác Stop • Stop/End kết thúc của giải thuật. Có thể có một hoặc nhiều  điểm STOP. Đại Học Bách Khoa Tp.HCM Trang 15 Khoa Công Nghệ Thông Tin
  16. Flow chart   Ưu điểm – Trình bày trực quan giải thuật – Độc lập với ngôn ngữ tự nhiên – Độc lập với ngôn ngữ lập trình – Bảo đảm khả năng lập trình – Cho phép dễ dàng kiểm tra giải thuật  Nguyên tắc kiểm tra – Đi từ START theo bất cứ đường nào cũng phải đến một điểm dừng STOP – Không có sự quay vòng vĩnh viễn – Không có sự kết thúc lưng chừng Đại Học Bách Khoa Tp.HCM Trang 16 Khoa Công Nghệ Thông Tin
  17. Flow chart Start Algorithms Giải phương trình ax + b = 0  Nhập a, b Yes Yes a=0 ? b=0 ? No No X=­b/a Không có nghiệm Vô số nghiệm Stop Đại Học Bách Khoa Tp.HCM Trang 17 Khoa Công Nghệ Thông Tin
  18. Cấu trúc điều khiển cơ bản  If then Statement;  If then Statement 1 else Statement 2;  Case of value 1 : Statement 1; ……….. value n : Statement n; else : Statement 0 end;  While do Statement;  Repeat Statement until ;  For counter=start value to end value do Statement;  For counter=start value downto end value do Statement Đại Học Bách Khoa Tp.HCM Trang 18 Khoa Công Nghệ Thông Tin
  19. Chu kỳ sống của phần mềm  Thu thập yêu cầu  Phân tích thiết kế  Phát triển chương trình - codeing – Xác định giải thuật – Viết code và dịch thử , hiệu chỉnh các lỗi syntax  Thử nghiệm - Testing – Chạy thử với các dữ liệu mẫu để kiểm tra lỗi semantic và runtime  Vận hành và bảo trì  Phát triển theo yêu cầu Đại Học Bách Khoa Tp.HCM Trang 19 Khoa Công Nghệ Thông Tin
  20. Một số ngôn ngữ lập trình  Lập trình goto – Assembly – Basic  Lập trình cấu trúc – Pascal, C – Foxpro  Lập trình hướng đối tượng – Java, C++, Object Pascal,…  Khác – Prolog, LISP, Visual basic (VB), VC++, J++, Delphi, ASP, PHP,.. – Visual studio .NET: VB.NET, ASP.NET, C++.NET, C# Đại Học Bách Khoa Tp.HCM Trang 20 Khoa Công Nghệ Thông Tin
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2