Nếu thuật toán chỉ được diễn tả bằng phương pháp liệt kê hoặc sơ đồ khối thì máy tính có thể hiểu và thực hiện để giải quyết bài toán hay?. không?[r]
Trang 1§5 : NGÔN NGỮ LẬP
TRÌNH
Ti t: 17 ế
Trang 2 Nếu thuật toán chỉ được diễn tả bằng phương pháp liệt kê hoặc sơ đồ khối thì máy tính có thể hiểu và thực hiện để giải quyết bài toán hay
không? Tại sao?
Máy tính không thể hiểu và thực hiện được thuật toán dưới dạng như vậy vì đó là các cách mô tả cho
con người Trong máy tính chỉ có các thông tin đã
được mã hóa thành dãy bít
Làm thế nào để máy tính có thể hiểu
và trực tiếp thực hiện được thuật toán?
Trang 3Khái niệm ngôn ngữ lập trình
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 gọi là ngôn ngữ lập trình
* Có nhiều loại ngôn ngữ lập trình:
Ngôn ngữ máy.
Hợp ngữ.
Ngôn ngữ bậc cao
Trang 4I Ngôn ngữ máy :
Ưu điểm
Ưu điểm:
Là ngôn ngữ duy nhất để viết ch ơng trình mà máy tính có thể trực tiếp hiểu và thực hiện, cho phép khai thác triệt để và tối u khả năng của máy
Nh ợc điểm
Nh ợc điểm:
Ngôn ngữ phức tạp, phụ thuộc nhiều vào phần cứng, không thuận lợi cho con ng ời trong việc viết hoặc hiểu ch ơng trình và khó hiệu chỉnh
Vì vậy ngôn ngữ này không thích hợp với số đông ng ời lập trình.
Trang 5II Hợp ngữ:
Ưu điểm
Ưu điểm:
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
Ví dụ : ẹể cộng giá trị chứa trong hai thanh ghi 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 q a đ ợc quy ớc đặt vào thanh ghi ủ
AX
Nh ợc điểm
Nh ợc điểm:
Còn phức tạp.
Vì vậy ngôn ngữ này chỉ thích hợp với các nhà lập trình chuyên nghiệp.
Để ch ơng trình viết bằng hợp ngữ thực hiện đ ợc trên máy tính, nó cần đ ợc dịch ra ngôn ngữ máy bằng
ch ơng trình hợp dịch.
Maựy tớnh coự theồ hieồu vaứ thửùc hieọn trửùc tieỏp chửụng trỡnh vieỏt baống hụùp ngửừ khoõng?
Trang 6Ưu điểm
Ưu điểm:
III Ngôn ngữ bậc cao:
Là ngôn ngữ ít phụ thuộc vào loại máy, 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.
Vì vậy ngôn ngữ này thích hợp với phần
đông ng ời lập trình.
Một số ngôn ngữ bậc cao:
Turbo Pascal, Visual Basic, Java, C ++
Cũng như ngụn ngữ mỏy, mỗi ngụn ngữ lập
trỡnh bậc cao đều 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