a. Ngôn ngữ máy :
- Mỗi loại máy tính đều có ngôn ngữ máy riêng của nó. Là ngôn ngữ duy nhất mà máy có thể trực tiếp hiểu và thực hiện.
- Các lệnh viết bằng ngôn ngữ máy ở dạng mã nhị phân hoặc mã hexa
* Ưu điểm: khai thác triệt để tính năng phần cứng của máy tính, có thể trực tiếp hiểu được, không cần chương trình dịch.
* Nhược điểm: khó hiểu, khó nhớ, sử dụng nhiều câu lệnh để biểu diễn các thao tác.
b. Hợp ngữ :
- Hợp ngữ cho phép người lập trình sử dụng một số từ (thường là các từ tiếng Anh viết tắt) để thể hiện các lệnh cần thực hiện.
* Ưu điểm: khai thác triệt để tính năng phần cứng
* Nhược điểm: đã thuận lợi cho các nhà lập trình chuyên nghiệp nhưng chưa thích hợp với số đông người lập trình.
- Để máy tính hiểu cần có chương trình hợp dịch để chuyển hợp ngữ sang ngôn ngữ máy.
c. Ngôn ngữ bậc cao :
- Là ngôn ngữ 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.
* Ưu điểm: dễ hiểu, dễ chỉnh sửa, tính độc lập cao.
- Để máy tính hiểu được, cần phải có chương trình dịch để chuyển từ ngôn ngữ bậc cao sang ngôn ngữ máy.
- Một số ngôn ngữ lập trình bậc cao: Pascal, C, Java, …