Bài giảng Kỹ thuật lập trình - Chương 1: Giới thiệu về máy tính và lập trình - Trần Quang

Nội dung
 Tổ chức máy tính.
 Ngôn ngữ lập trình.
 Các công việc trong lập trình.
 Dữ liệu và giải thuậ 
pdf 39 trang xuanthi 27/12/2022 1780
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kỹ thuật lập trình - Chương 1: Giới thiệu về máy tính và lập trình - Trần Quang", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfbai_giang_ky_thuat_lap_trinh_chuong_1_gioi_thieu_ve_may_tinh.pdf

Nội dung text: Bài giảng Kỹ thuật lập trình - Chương 1: Giới thiệu về máy tính và lập trình - Trần Quang

  1. Nội dung  Tổ chức máy tính.  Ngôn ngữ lập trình.  Các công việc trong lập trình.  Dữ liệu và giải thuật. Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 2
  2. Phần cứng (hardware) Gồm các bộ phận dùng để lắp ráp thành máy tính:  Hộp máy (case),  Bo mạch chủ(mainboard, motherboard),  Bàn phím (keyboard),  Màn hình (display),  Chuột (mouse),  Bộ nhớ (memory),  Ổ đĩa cứng HDD (Hard Disk Drive),  Bộ cấp nguồn (power supply),  Dây nối (cables),  . . . Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 4
  3. Sơ đồ khối của một máy tính Để điều khiển các thiết bị phần cứng như hình bên, chúng ta cầnchương trình máy tính. Để tạo rachương trình máy tính, chúng ta cần ngôn ngữ lập trình. Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 6
  4. Bộ nhớ (memory)  Bộ nhớ chính Main memory  Là bộ phận giúp máy tính lưu trữ thông tin (chương trình và dữ liệu) dùng trong quá trình tính toán.  Phân loại :  ROM (Read Only Memory)  RAM (Random Access Memory). Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 8
  5. Thiết bị lưu trữ (Storage)  Bộ nhớ thứ cấp – Secondary memory / storage Unit  Gồm những thiết bị giúp máy tính lưu trữ lượng lớn dữ liệu lâu dài.  Các thiết bị điển hình: Đĩa cứng (HDD), SSD, USB drive, CD R/W, Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 10
  6. Ngôn ngữ máy  Dạng thức là số, đặc tả các lệnh của máy tính.  Mỗi kiểu CPU có tập lệnh riêng.  Ngày nay, rất khó có thể ra lệnh trực tiếp kiểu này cho các chương trình thực tế và lớn. Chuỗi lệnh sốsẽ được sinh ra từ chương trình dịch (compiler) chuyển từ ngôn ngữ cấp cao sang.  Ví dụ: 01001101 11011010 11000110 10110010 Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 12
  7. Ngôn ngữ Assembly (hợp ngữ)  Ví dụ, bộ vi xử lý x86 / IA-32 có thể thực hiện được chỉ thị nhị phân sau (thể hiện ở dạng ngôn ngữ máy): 10110000 01100001 (thập lục phân: 0xb061)  Lệnh trên tương đương với một chỉ thị hợp ngữ dễ nhớ hơn sau: mov al, 061h  Chỉ thị lệnh trên có nghĩa là: gán giá trị thập lục phân 61 (97 dạng thập phân) cho thanh ghi trong bộ vi xử lý có tên là "al". Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 14
  8. Ngôn ngữ lập trình C  Lịch sử  Tiến hóa từ ngôn ngữ lập trình trước đó là “B” và “BCPL”  “Traditional C” là một tiến hóa của C vào khoảng gần 1970  Có nhiều biến thể của C tồn tại và chúng không tương thích nhau, ví dụ bộ chuyển ngữ có thể không hiểu mã nguồn C được viết cho bộ chuyển ngữ khác.  “Standard C” xuất hiện vào khoảng1989 , cập nhật lại vào khoảng 1999.  Ứng dụng quan trọng  Được dùng để phát triển các hệ điều hành nổi tiếng và hiện đại như UNIX và Linux  Được dùng để phát triển các chương trình chạy trên các thiết bị nhúng, như nhúng vào xe hơi, máy móc y tế, Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 16
  9. Ngôn ngữ lập trình C++  C là nền tảng của ngôn ngữ mở rộng của nó là C++  C++ bổ sung thêm vào C những khả năng mới giúp dễ dàng tổ chức các chương trình lớn. Những tính năng khác, C++ dùng của C. Do đó, dùng được C là nền tảng để học C++  Những tính năng mới  Tham khảo (reference): một chức năng mới cho phép truy xuất một vùng nhớ qua một tên gọi khác.  Hướng đối tượng (Object-Oriented): đây là bổ sung quan trọng nhất, hướng đến một triết lý lập trình khác. Ở đó, chương trình là tập các đối tượng tương tác nhau để hoàn thành công việc. Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 18
  10. Các công việc trong lập trình  Biên dịch (Compile)  Đối tượng thực hiện: bộ biên dịch thuộc IDE  Công việc thực hiện: chuyển từ mã C sang mã đối tượng, cho từng tập tin mã nguồn  Liên kết (Link)  Đối tượng thực hiện: bộ liên kết thuộc IDE  Công việc thực hiện: liên kết các tập tin mã đối tượng và thư viện của C để tạo chương trình thực thi  Đầu ra: tập tin thực thi (*.exe) Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 20
  11. Dữ liệu và giải thuật  Quan điểm:  Chương trình là những chuỗi lệnh, được chọn lựa bởi các cấu trúc điều khiển, để xử lý dữ liệu  Do đó, hai yếu tố quan trọng tạo thành chương trình  Dữ liệu và cấu trúc để tổ chức dữ liệu  Giải thuật xử lý, nghĩa là, các chuỗi của những lệnh nào và chọn lựa thực thi ra sao Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 22
  12. Giải thuật  Giải thuật  Là các bước để giải quyết một bài toán  Một số cách để mô tả giải thuật  Mã giả (pseudocode)  Lưu đồ (flowchart)  Dùng chính mã lập trình Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 24
  13. Mã giả Pseudocode = English/Vietnamese + Code Cú pháp không đòi hỏi quá Lệnh điều khiển thực thi chặtchẽ để hỗ trợ việc dễ đọc 1.Tuần tự 2.Rẽ nhánh 3.Lặp Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 26
  14. Mã giả 1. Declare variables: dividend, divisor, quotient 2. Prompt user to enter dividend and divisor 3. Get dividend and divisor 4. IF divisor is equal to zero, THEN 4.1. DO 4.1.1. Display error message, “divisor must be non-zero” 4.1.2. Prompt user to enter divisor 4.1.3. Get divisor 4.2. WHILE divisor is equal to zero 5. ENDIF 6. Display dividend and divisor 7. Calculate quotient as dividend/divisor 8. Display quotient Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 28
  15. Lưu đồ (Flowchart)  Lưu đồ được biểu diễn bởi các hình cơ bản, mỗi chúng có ý nghĩa đã được quy định trước Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 30
  16. Lưu đồ (Flowchart)  Process  Khối xử lý công việc  Predefined process  Khối xử lý tạo sẵn (thư viện), có thể dùng bởi flowchart khác  On-page connector  Điểm tập kết dòng điều khiển (flow line) trên một flowchart  Off-page connector  Điểm tập kết của dòng điều khiển (flow line) từ trang khác  Preparation  Các bước chuẩn bị, thiết lập điều kiện đầu  Annotation  Giải thích Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 32
  17. Lưu đồ (Flowchart) false true Cấu trúcif -else Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 34
  18. Lưu đồ (Flowchart) false true Cấu trúcfor Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 36
  19. Xác định sốnguyên tố a c Bắt đầu b Nhập n đếm = đếm + 1 đếm = 2 S đếm > n / 2 ? Đ n MOD đếm = 0 ? Đ Nguyên tố S Không nguyên tố b a c Kết thúc Trần Quang Kỹ thuật lập trình Chương 1: Giới thiệu về máy tính và lập trình © 2016 38