1. Hãy viết chương trình hợp ngữ tựđộng bật tổ hợp các phím CapLock, Insert, NumLock 2. hãy lập trình để khởi tạo chếđộ làm việc một mạch UART 8250A cho cổng COM2 với các thông số:
a. 6 bít mã kí tự truyền , tốc độ truyền 1200 bits/ giây, parity lẻ, hai bít stop. b. 7 bít mã kí tự truyền , tốc độ truyền 9600 bits/ giây, parity chẵn 1.5 bít stop.
3. Sử dụng các dịch vụ ngắt của BIOS phục vụ cho màn hình (ngắt 10h) trong chế độ dồ
họa để vẽ ra màn hình các hình sau: a. Tam giác b. Hình vuông c. Hình tròn d. Hình Parabol 4.6 TÀI LIỆU THAM KHẢO
1. Nguyễn Nam Trung. Cấu trúc máy Vi tính và Thiết bị ngoại vi. Nhà XB Khoa học Kỹ
thuật.2000.
2. Hồ Khánh Lâm. Giáo trình Kỹ thuật Vi xử lý Tập 1&2. Nhà XB Bưu điện. 2006.
3. Đặng Thành Phu. Turbo Assembler và Ứng dụng. Nhà XB Khoa học và Kỹ thuật. 1998. 4.Nguyễn Minh San. Cẩm nang Lập trình Hệ thống (tập 2). Bản dịch. Nhà XB Tài chính Thống Kê. 1996.
TÀI LIỆU THAM KHẢO
1. Đặng Thành Phu. Turbo Assembler và Ứng dụng. Nhà XB Khoa học và Kỹ thuật. 1998. 2. Nguyễn Nam Trung. Cấu trúc máy Vi tính và Thiết bị ngoại vi. Nhà XB Khoa học Kỹ
thuật.2000.
3. Hồ Khánh Lâm. Giáo trình Kỹ thuật Vi xử lý Tập 1&2. Nhà XB Bưu điện. 2006.
4.Nguyễn Minh San. Cẩm nang Lập trình Hệ thống (tập 1&2)- bản dịch. Nhà XB Tài chính Thống Kê. 1996.
5.Nguyễn Đình Việt. Giáo Trình nhập môn Hợp ngữ và Lập trình Hệ thống. Hà nội. 1998. 6. webstie : www.emu8086.com
7. Randall Hyde. Entire Windows Assembly Programming. University California Riverside, USA. 2003.
MỤC LỤC LỜI NÓI ĐẦU...1 CHƯƠNG 1: GIỚI THIỆU ...3 1.1 CẤU TRÚC BỘ VI XỬ LÝ...3 1.1.1 Sơđồ kiến trúc bộ Vi xử lý 8088 ...3 1.1.2 Chức năng các thành phần ...4 1.2 MỘT SỐ CHỨC NĂNG CỦA NGẮT 21H...7 1.3 GIỚI THIỆU VỀ TẬP LỆNH CỦA 8088 ...9 1.3.1 Nhóm lệnh di chuyển dữ liệu ...9 1.3.2 Nhóm các lệnh tính toán số học ...11 1.3.3 Nhóm các lệnh thao tác bít...14 1.3.4 Nhóm các lệnh làm việc với xâu kí tự...17 1.3.5 Nhóm các lệnh nhảy...18 1.3.6 Các lệnh điều khiển khác ...20 1.4 TÓM TẮT ...21 1.5 CÂU HỎI VÀ BÀI TẬP ...22
1.6 TÀI LIỆU THAM KHẢO...23
CHƯƠNG 2: LẬP TRÌNH BẰNG HỢP NGỮ...24
2.1 VIẾT VÀ THỰC HIỆN MỘT CHƯƠNG TRÌNH HỢP NGỮ...24
2.1.1 Cấu trúc lệnh và khai báo dữ liệu cho chương trình ...24
2.1.2 Khung của chương trình Hợp ngữ...26 2.1.3 Tạo, dịch, hợp dịch và thực hiện chương trình Hợp ngữ...30 2.2 CÁC CẤU TRÚC LẬP TRÌNH CƠ BẢN TRONG CHƯƠNG TRÌNH HỢP NGỮ.31 2.2.1 Cấu trúc tuần tự...32 2.2.2 Cấu trúc IF… THEN...32 2.2.3 Cấu trúc IF… THEN…ELSE ...33 2.2.4 Cấu trúc CASE...34 2.2.5 Cấu trúc lặp FOR-DO ...36 2.2.6 Cấu trúc lặp WHILE-DO ...37 2.2.7 Cấu trúc lặp REPEAT-UNTIL...38
2.3 CHƯƠNG TRÌNH CON VÀ MACRO ...39
2.3.1 Chương trình con: cơ chế làm việc và cấu trúc...39
2.3.2 Truyền tham số...41
2.3.3 Chương trình gồm nhiều module ...42
2.3.5 Macro ... 48
2.4 Chương trình ví dụ... 53
2.5 TÓM TẮT ... 60
2.6 BÀI TẬP... 61
2.7 TÀI LIỆU THAM KHẢO... 61
CHƯƠNG 3. CÁC CÔNG CỤ HỖ TRỢ... 62
3.1 BỘ GỠ RỐI DEBUG ... 62
3.1.1 Tổng quan về Debug ... 62
3.1.2 Sử dụng Debug... 62
3.1.3 Các lệnh của Debug... 63
3.2 CHƯƠNG TRÌNH MÔ PHỎNG EMU8086 ... 69
3.2.1 Các chức năng soạn thảo, dịch và thực hiện chương trình... 69
3.2.2 Chức năng mô phỏng quá trình thực hiện chương trình... 70
3.2.3 Các chương trình mẫu. ... 72
3.3. KẾT NỐI HỢP NGỮ VỚI CÁC NGÔN NGỮ BẬC CAO... 80
3.3.1 Ngôn ngữ C và Hợp ngữ... 80
3.3.2 Ngôn ngữ Pascal và Hợp ngữ... 93
3.4 CÁC CHƯƠNG TRÌNH NGẮT ... 96
3.4.1 Ứng dụng các ngắt của BIOS & DOS... 96
3.4.2 Chương trình thường trú và chương trình ngắt ... 108
3.5 TÓM TẮT ... 112
3.6 BÀI TẬP... 113
3.6.1 Câu hỏi trắc nghiệm ... 113
3.6.2 Bài tập ... 114
3.7 TÀI LIỆU THAM KHẢO... 115
CHƯƠNG 4: LẬP TRÌNH PHỐI GHÉP ... 116
4.1 TRUYỀN THÔNG TIN NỐI TIẾP VỚI BỘĐIỀU HỢP UART... 116
4.1.1 Cơ bản về truyền tin nối tiếp ... 116
4.1.2 Các thanh ghi của UART 8250A/16450 ... 117
4.1.3 Lập trình cho UART 8250A/16450 ... 121
4.2 MỘT SỐ LẬP TRÌNH PHỐI GHÉP CƠ BẢN... 125
4.2.1 Lập trình phối ghép với bàn phím ... 125
4.2.2 Lập trình phối ghép với màn hình ... 131
4.3 LẬP TRÌNH HỢP NGỮ TRONG WINDOWS... 135
4.3.1 Công cụ hỗ trợ lập trình hợp ngữ trên windows... 135
4.3.2 Sử dụng công cụ phát triển RadASM... 136
4.5 BÀI TẬP ...139
4.5.1 Câu hỏi trắc nghiệm ...139
4.5.2 Bài tập Lập trình ...140
4.6 TÀI LIỆU THAM KHẢO...140
TÀI LIỆU THAM KHẢO...141
LẬP TRÌNH HỆ THỐNG
VÀ ĐIỀU KHIỂN THIẾT BỊ
Mã số: 492LHD350
Chịu trách nhiệm bản thảo