![](data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA60AAAXvCAIAAADEh4rVAAAACXBIWXMAABYlAAAWJQFJUiTwAAAYtUlEQVR42uzWMQEAMAjEQFqXyEH5d6oK7iRkSs1MAQDAAt2d7yRRBACAba4EAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwDggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMA4IMlAADABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDACADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAB8sAQAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAPhgCQAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAMAHSwAAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDACADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAA+WAIAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDwwRIAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwDggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDACAD5YAAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAAfLAEAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwDggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMA4IMlAADABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDACADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAB8sAQAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAPhgCQAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAMAHAwCADwYAAB8MAAA+GAAAfDAAAPhgAADwwQAA4IMBAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAIAPBgAAHwwAAD4YAAB8MAAA+GAAAPDBAADggwEAwAcDAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMAgA8GAAAfDAAAPhgAAHwwAAD4YAAA8MEAAOCDAQDABwMA4IMBXjt2TAQADMNAjIb5wwuFDC6PVILg6c8AoIMBAEAHAwCADgYAAB0MAAA6GAAAdDAAAOhgAADQwQAAoIMBAEAHAwCADgYAAB0MAAA6GAAAdDAAAOhgAADQwQAAoIMBAEAHAwCggwEAQAcDAIAOBgCAS9q2nZkk1gAA4Lwku+sPBgDgRw9nxiaVUQFeXQAAAABJRU5ErkJggg==)
Bộ môn Công nghệ điều khiển tự động Giáo trình hợp ngữ
MỤC LỤC
Chương 1. NGÔN NGỮ ASM VÀ CÁCH LẬP TRÌNH ..............................................1
1.1. Mở đầu.................................................................................................................3
1.2. Cài đặt chương trình dịch TASM.........................................................................3
1.3. Các bước thực hiện một chương trình Assember trên máy PC : .........................4
1.4. Sự hỗ trợ của hệ thống cho việc lập trình Assember ...........................................4
1.4.1 Cấu trúc các thanh ghi ...................................................................................4
1.4.2 Cách thể hiện địa chỉ ô nhớ (ROM hoặc RAM): dạng lôgíc và dạng vật lý .7
1.4.3 Các ngắt hay dùng hỗ trợ cho lập trình Assembler........................................7
1.5. Hệ lệnh Assembler ...............................................................................................7
1.5.1. Cú pháp của một dòng lệnh ASM................................................................7
1.5.2. Tập lệnh Mnemonic.....................................................................................8
1.5.3 Các lệnh điều khiển khi dịch chương trình (directive) ................................21
1.6. Chương trình con................................................................................................34
1.6.1. Ý nghĩa của chương trình con.....................................................................34
1.6.2. Cơ chế khi một chương trình con bị gọi....................................................34
1.6.3. Cú pháp một chương trình con ASM.........................................................34
1.7. MACRO .............................................................................................................37
1.7.1. Ý nghĩa........................................................................................................37
1.7.2. Khai báo (xác lập) MACRO .......................................................................37
1.7.3 Cách dùng MACRO đã được xác lập..........................................................38
1.8. Directive INCLUDE ..........................................................................................38
1.8.1. Ý nghĩa........................................................................................................38
1.8.2 Cú pháp chèn................................................................................................38
1.8.3. Cơ chế khi chương trình dịch TASM gặp directive INCLUDE.................39
1.9. Chương trình đa tệp............................................................................................48
1.9.1. Ý nghĩa........................................................................................................48
1.9.2. Directive PUBLIC ......................................................................................48
1.9.3. Directive EXTRN .......................................................................................48
1.9.4. Cách dịch và liên kết..................................................................................50
1.10. Biến hỗn hợp : Directive STRUC, RECORD và UNION ...............................51
1.10.1 Cấu trúc STRUC........................................................................................51
1.10.2 Directive UNION.......................................................................................51
1.11. Xây dựng chương trình Assembly để được tệp thực hiện dạng .COM............51
1.11.1 Sự khác nhau chương trình dạng COM và EXE........................................51
1.11.2 Làm thế nào để có được chương trình dạng .COM ...................................51
1.11.3 Các vấn đề cần lưu ý..................................................................................52
1.11.4 Dạng thường thấy 1 chương trình ASM để được dạng COM ...................52
Chương 2: LIÊN KẾT CÁC NGÔN NGỮ BẬC CAO VỚI ASM...............................57
2.1 Liên kết Pascal với ASM ....................................................................................57
2.1.1 Inline ASM..................................................................................................57
2.1.2 Viết tách biệt tệp ngôn ngữ Pascal và tệp ASM .........................................58
2.2 Liên kết c/c++ với ASM...................................................................................67
2.2.1. Inline Assembly.......................................................................................67
2.2.2 Viết tách biệt C/C++ và tệp ASM.............................................................68
Ch−¬ng 1- Ng«n ng÷ ASM vµ c¸ch lËp tr×nh 1