Các ngôn ngữ lập trình Các ngôn ngữ lập trình Bởi: Khoa CNTT ĐHSP KT Hưng Yên Lập trình hệ thống không thiết phải sử dụng ngôn ngữ assembly Thật vậy, tuyệt đại đa số module chức cấu thành hệ điều hành Windows, Unix, Linux viết ngôn ngữ C Ưu điểm ngôn ngữ cấp cao rõ ràng, dễ đọc, dễ diễn đạt giải thuật, diễn đạt giải thuật cô đọng Như vậy, chưa thật cần thiết phải dùng assembly hay ngôn ngữ máy, bạn nên dùng ngôn ngữ cấp cao C, C++ để viết ứng dụng bạn Ngược lại, ngôn ngữ Assembly hay ngôn ngữ máy không thiết để dùng cho lập trình hệ thống mà dùng để viết ứng dụng Tuy nhiên nhược điểm assembly ngôn ngữ máy yếu để diễn đạt giải thuật nên người dùng chúng trực tiếp Như nói, viết hệ điều hành hay hệ thống nhúng (chương trình điều khiển thiết bị ghi ROM thiết bị đó), người ta cố gắng dùng ngôn ngữ cấp cao C, trừ đoạn code đặc biệt dùng assembly hay mã máy Trong trường hợp buộc phải dùng assembly hay mã máy, bạn phải lưu ý ngôn ngữ phụ thuộc hoàn toàn vào CPU dùng Bạn viết đoạn code assembly hay mã máy mà chạy nhiều loại CPU Riêng CPU Intel từ 80386 trở lên, hoạt động chế độ quản lý nhớ khác như: Real-mode (chế độ mặc định bị reset ban đầu), protected-mode (quản lý theo segment) 386-enchanced mode (quản lý vừa theo segment, vừa theo page, chế độ quản lý nhớ hoàn hảo nhất) Thí dụ boot máy hay máy boot chạy MSDOS, CPU Intel chạy chế độ Real-mode, máy chạy Linux, Windows XP CPU Intel chạy chế độ 386-enchanced mode Nếu bạn lập trình ngôn ngữ cấp cao, bạn không cần biết chế độ quản lý nhớ dùng để chạy ứng dụng Còn lập trình assembly hay mã máy, bạn cần phải nắm vững chế độ quản lý nhớ CPU, phải định chế độ quản lý dùng để chạy ứng dụng, từ bắt đầu viết lệnh tương thích với chế độ quản lý nhớ mong muốn Thí dụ bạn lập trình chế độ real-mode (1 chế độ 16-bit), bạn dùng ghi 16-bit CPU ax, bx, cx, dx, ds, cs, es, ss) Còn bạn lập trình chế độ 386-enchanced mode, bạn dùng ghi 32 bit CPU, có ghi fs, gs bạn đề cập Lưu ý ứng dụng viết chế độ 32bit chạy môi trường Windows (hay Linux), chạy MSDOS Chi tiết chế độ quản lý nhớ tập lệnh CPU chế 1/2 Các ngôn ngữ lập trình độ quản lý nhớ trình bày tài liệu kỹ thuật giới thiệu CPU tương ứng Bạn tìm tài liệu kỹ thuật Internet hay liên hệ trực tiếp với đại lý Intel 2/2 .. .Các ngôn ngữ lập trình độ quản lý nhớ trình bày tài liệu kỹ thuật giới thiệu CPU tương ứng Bạn tìm tài liệu kỹ thuật