Tin Học Python 11 – Bài 1: Khái Niệm Lập Trình Và Ngôn Ngữ Lập Trình 11/2022

Danh sách bài học

Video hướng dẫn

Mục tiêu bài học

  • Biết được khái niệm lập trình và ngôn ngữ lập trình.
  • Biết có 3 ngôn ngữ lập trình: Ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao.
  • Biết chức năng của chương trình dịch.
  • Biết khái niệm và phân biệt được thông dịch và biên dịch.

Trong bài học này, mình sẽ có 4 nội dung:

1. Khái niệm lập trình và ngôn ngữ lập trình

a) Thuật toán:

Là một dãy hữu hạn các thao tác được sắp xếp theo một trình tự xác định sao cho khi thực hiện dãy thao tác đó, từ Input (Đưa vào máy thông tin gì?) của bài toán này, ta nhận được Output (Cần lấy ra thông tin gì?) cần tìm.

Ví dụ: Giải phương trình bậc nhất: ax2 + bx + c = 0 (a#0)

  • Input: 2 số a,b,c (a#0).
  • Output: Nghiệm x thỏa mãn phương trình.

Từ đó, bạn sẽ mô tả thuật toán bằng các bước:

Bước 1: Nhập 3 số a,b,c (a#0).

Bước 2: Tính d = (b*b – 4*a*c).

Bước 3: Xét điều kiện của d:

  • Nếu d < 0 thì đưa ra thông báo phương trình vô nghiệm rồi kết thúc.
  • Nếu d = 0 thì đưa ra thông báo phương trình có 1 nghiệm đơn là x = -b/(2*a) và kết thúc.
  • Nếu d > 0 thì đưa ra thông báo phương trình có 2 nghiệm là x1 = (-b + √d)/(2*a) và x2 = (-b – √d)/(2*a) rồi kết thúc.

b) Chương trình

Là một dãy tuần tự các lệnh chỉ dẫn cho máy biết điều cần làm

  • Mỗi lệnh thể hiện một thao tác xử lý dữ liệu.
  • Lệnh được đưa vào máy tính dưới dạng mã nhị phân (0,1) để lưu trữ, xử lý như những dữ liệu khác.

c) Ngôn ngữ lập trình

Là ngôn ngữ dùng để viết chương trình cho máy tính điện tử.

d) Lập trình

Là sử dụng cấu trúc dữ liệu và các câu 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.

2. Phân loại ngôn ngữ lập trình

Gồm có 3 loại sau:

  • Ngôn ngữ máy.
  • Hợp ngữ
  • Ngôn ngữ bậc cao.

a) Ngôn ngữ máy:

Là ngôn ngữ duy nhất mà máy tính có thể trực tiếp hiểu và thực hiện được. Các lệnh được viết dưới dạng mã nhị phân (0,1) hoặc mã hexa (hệ cơ số 16).

Lưu ý: Mã hexa là mã được sử dụng các ký hiệu 0 => 9 và các chữ cái từ A => Z.

b) Hợp ngữ

Là ngôn ngữ kết hợp ngôn ngữ máy với ngôn ngữ tự nhiên của con người (thường là viết tắt các từ tiếng Anh) để thể hiện các lệnh cần thực hiện.

c) Ngôn ngữ lập trình bậc cao

Là ngôn ngữ có lệnh viết gần với ngôn ngữ tự nhiên, có tính độc lập cao, ít phụ thuộc vào loại máy tính và chương trình phải được chuyển sang ngôn ngữ máy mới được thực hiện.

Một số ngôn ngữ lập trình bậc cao: Java, C, C++, C#, Python, PHP, JavaScript, Pascal,…

3. Chương trình dịch

Là chương trình có chức năng chuyển đổi chương trình viết bằng ngôn ngữ lập trình bậc cao thành chương trình thực hiện được trên máy tính.

Chương trình dịch được chia làm 2 loại: Thông dịch và biên dịch.

a) Thông dịch

Thông dịch (Interpreter) được thực hiện lặp đi lặp lại dãy các bước sau:

  •  Kiểm tra tính đúng đắn của câu lệnh tiếp theo trong chương trình nguồn.
  •  Chuyển đổi câu lệnh đó thành một hay nhiều câu lệnh tương ứng trong ngôn ngữ máy.
  •  Thực hiện các câu lệnh vừa chuyển đổi được.

b) Biên dịch

Biên dịch (Compiler) được thực hiện qua 2 bước: 

  •  Duyệt, phát hiện lỗi, kiểm tra tính đúng đắn của các câu lệnh trong chương trình nguồn.
  •  Dịch toàn bộ chương trình nguồn thành một chương trình có thể thực hiện trên máy và có lưu trữ để sử dụng khi cần thiết.

Như vậy: Trong thông dịch không có chương trình đích để lưu trữ, còn trong biên dịch cả chương trình nguồn và chương trình đích có thể lưu trữ lại để sử dụng về sau.

Vậy là mình đã hoàn thành xong bài 1, tiếp theo bạn sẽ sang tiếp Bài 2: Các thành phần của ngôn ngữ lập trình.