SGK Tin Học 10 - §5. NGÔN NGỮ LẬP TRÌNH

  • §5. NGÔN NGỮ LẬP TRÌNH trang 1
  • §5. NGÔN NGỮ LẬP TRÌNH trang 2
§5. NGÔN NGỮ LẬP TRÌNH
Với cách diễn tả thuật toán bằng cách liệt kê hoặc sơ đồ khối, máy tính chưa có khả năng trực tiếp thực hiện thuật toán được. Ta cần diễn tả thuật toán bằng một ngôn ngữ sao cho máy tính có thể thực hiện được. Kết quả diễn tả thuật toán như vậy cho ta một chương trình, ngôn ngữ để viết chương trình được gọi là ngôn ngữ lập trình.
Có nhiều loại ngôn ngữ lập trình. Sự khác nhau giữa các loại liên quan đến độ phụ thuộc của chúng vào kiến trúc và hoạt động của máy tính.
Ngôn ngữ máy
Mỗi loại máy tính đều có ngôn ngữ máy của nó. Đó là ngôn ngữ duy nhất để viết chương trình mà máy tính trực tiếp hiểu và thực hiện được. Viết các chương trình bằng ngôn ngữ máy, ta có thể khai thác triệt để các đặc điểm phần cứng của máy. Mỗi chương trình viết bằng ngôn ngữ khác muốn thực hiện trên máy tính đều phải được dịch ra ngôn ngữ máy bằng một chương trình dịch.
Các lệnh viết bằng ngôn ngữ máy ở dạng mã nhị phân hoặc ở dạng mã hexa.
Tuy nhiên ngôn ngữ máy không thuận lợi cho con người trong việc viết hoặc hiểu chương trình. Với ngôn ngữ máy, ta phải nhớ một cách máy móc các dòng số không gợi ý nghĩa của lệnh đồng thời phải dùng nhiều câu lệnh để diễn tả chi tiết các thao tác của thuật toán.
Để khắc phục nhược điểm trên của ngôn ngữ máy, một số ngôn ngữ lập trình khác đã được phát triển.
Họp ngữ
So với ngôn ngữ máy, hợp ngữ cho phép người lập trình sử dụng một số từ (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. Ví dụ, để cộng giá trị chứa trong hai thanh ghi có tên là AX và BX, có thể dùng một lệnh của hợp ngữ như sau:
ADD AX, BX
trong đó ADD (tiếng Anh có nghĩa là cộng) là kí hiệu phép cộng và kết quả được quy ước đặt vào thanh ghi AX.
Một chương trình viết bằng hợp ngữ phải được dịch ra ngôn ngữ máy nhờ chương trình hợp dịch trước khi có thể thực hiện được trên máy tính.
Ngôn ngữ bậc cao
Hợp ngữ là một ngôn ngữ đã thuận lợi hơn cho các nhà lập trình chuyên nghiệp nhưng vẫn chưa thật thích hợp với đông đảo người lập trình.
Từ đầu thập kỉ năm mươi của thế kỉ XX, người ta đã xây dựng những ngôn ngữ lập trình bậc cao, trong đó các câu lệnh được viết gần với ngôn ngữ tự nhiên hơn, có tính độc lập cao, ít phụ thuộc vào các loại máy cụ thể. Cũng như đối với hợp ngữ, mỗi ngôn ngữ lập trình bậc cao đều cần có một chương trình dịch để dịch những chương trình viết bằng ngôn ngữ này sang ngôn ngữ máy.
Ngôn ngữ bậc cao đầu tiên là ngôn ngữ FORTRAN (FORmula TRANslator) của hãng máy tính IBM, ra đời năm 1954. Tiếp theo là COBOL (COmmon Business-Oriented Language) ra đời năm 1959, sau đó một năm là Algol 60 và năm năm sau là BASIC (Beginner's All-purpose Symbolic Instruction Code). Hiện nay có rất nhiều ngôn ngữ lập trình bậc cao được sử dụng như PASCAL, c, C++, Java,... với các phiên bản khác nhau.
Các thuật ngữ chính	
Ngôn ngữ máy; Hợp ngữ; Ngôn ngữ bậc cao; Chương trình dịch.
CÂU HỎI VÀ BÀI TẬP
Em hiểu ngôn ngữ lập trình là gì?
Chương trình dịch dùng để làm gì?
Vì sao phải phát triển các ngôn ngữ bậc cao?