Bài 1: Khái niệm về lập trình và ngôn ngữ lập trình
BÀI 1: KHÁI NIỆM LẬP TRÌNH VÀ NGÔN NGỮ LẬP TRÌNH
Mục Lục
1. Ngôn ngữ lập trình
– Ngôn ngữ lập trình là ngôn ngữ dùng để diễn tả thuật toán sao cho máy tính hiểu và thực hiện được.
– Có 3 loại ngôn ngữ lập trình:
- Ngôn ngữ máy: bao gồm các lệnh được mã hóa bằng các kí hiệu 0 – 1. Chương trình được viết trên ngôn ngữ máy có thể được nạp vào bộ nhớ và thực hiện ngay. Đây cũng là ngôn ngữ duy nhất mà máy tính có thể trực tiếp hiểu và xử lý đựơc.
- Hợp ngữ: Là loại ngôn ngữ sử dụng một số từ để thực hiện lệnh trên thanh ghi. Hợp ngữ sử dụng các từ viết tắt tiếng Anh để diễn tả câu lệnh.
- Ngôn ngữ bậc cao: Là loại ngôn ngữ gần với ngôn ngữ tự nhiên, ít phụ thuộc vào loại máy. Các lệnh được mã hóa bằng một ngôn ngữ gần với ngôn ngữ Tiếng Anh.
- Chương trình viết trên ngôn ngữ bậc cao phải được chuyển đổi thành chương trình trên ngôn ngữ máy mới có thể thực hiện được => Phải sử dụng một chương trình dịch để chuyển đổi.
-
Lập trình bằng ngôn ngữ bậc cao dễ viết hơn vì các lệnh được mã hóa gần với ngôn ngữ tự nhiên. Lập trình trên ngôn ngữ máy rất khó, thường các chuyên gia lập trình mới lập trình được.
2. Lập trình
– Lập trình là việc sử dụng cấu trúc dữ liệu và các lệnh của ngôn ngữ lập trình cụ thể để mô tả dữ liệu và diễn đạt các thao tác của thuật toán.
3. Chương trình dịch
– Chương trình dịch là chương trình đặc biệt, có chức năng chuyển đổi chương trình được viết bằng ngôn ngữ lập trình bậc cao sang ngôn ngữ máy.
a. Biên dịch (Compiler)
– Biên dịch được thực hiện qua hai bước
- Bước 1: Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của lệnh trong chương trình nguồn.
- Bước 2: Dịch toàn bộ chương trình nguồn thành một chương trình trên ngôn ngữ máy.
=> Biên dịch thuận tiện cho các chương trình ổn định và cần thực hiện nhiều lần.
b. Thông dịch (Interpreter)
– Thông dịch được thực hiện bằng cách lặp lại dãy các bước sau:
- Bước 1: Kiểm tra tính đúng đắn của lệnh tiếp theo trong chương trình nguồn.
- Bước 2: Chuyển lệnh đó thành ngôn ngữ máy.
- Bước 3: Thực hiện các câu lệnh vừa được chuyển đổi.
=> Thông dịch phù hợp với môt trường đối thoại giữa người và máy.