Ngôn ngữ lập trình bậc thấp

Trong khoa học máy tính, ngôn ngữ lập trình bậc thấp là một ngôn ngữ lập trình liên quan chặt chẽ đến phần cứng máy tính. Từ "thấp" không có nghĩa là ngôn ngữ này kém hơn các ngôn ngữ lập trình bậc cao mà điều này nghĩa là các lệnh của nó rất gần ngôn ngữ máy.

Các từ "bậc cao" và "bậc thấp" còn sử dụng với ý nghĩa tương đối; một lập trình viên Java có thể xem ngôn ngữ C là ngôn ngữ lập trình bậc thấp.

Các ngôn ngữ lập trình bậc thấp thường được chia thành hai loại: thế hệ thứ nhất và thế hệ thứ hai.

Thế hệ thứ nhất 
Ngôn ngữ lập trình thế hệ thứ nhất, hay 1GL, là mã máy. Nó là ngôn ngữ duy nhất mà bộ vi xử lý có thể hiểu. Hiện nay các lập trình viên hầu như không bao giờ viết chương trình trực tiếp bằng ngôn ngữ máy vì nó không chỉ yêu cầu chú ý nhiều đến các chi tiết mà một ngôn ngữ bậc cao xử lý một cách tự động mà còn yêu cầu ghi nhớ và tìm những mã lệnh bằng số cho mỗi chỉ thị được sử dụng.

Thế hệ thứ hai 
Ngôn ngữ lập trình thế hệ thứ hai, hay 2GL, là ngôn ngữ assembly. Nó được xem là ngôn ngữ thế hệ thứ hai vì mặc dù nó không phải là ngôn ngữ máy nhưng lập trình viên vẫn phải hiểu về kiến trúc của bộ vi xử lý (như các thanh ghi và các lệnh của bộ vi xử lý). Những câu lệnh đơn giản được dịch trực tiếp ra mã máy.

Xem thêm 
 Ngôn ngữ lập trình bậc cao

Tham khảo

Ngôn ngữ lập trình
Hệ thống phân loại ngôn ngữ lập trình
Ngôn ngữ lập trình bậc thấp