Bài giảng Hợp ngữ - Nguyễn Minh Tuấn - Đại cương về hợp ngữ

1.1. TổChức BộNhớCPU Intel 80x86

1.2. TổChứcThanh Ghi

1.3. Máy Ngữ& Hợp Ngữ

1.4. Cấu Trúc Chương Trình Hợp Ngữ

1.5. Một SốLệnh Đơn Giản

1.6. Tạo Chương Trình Hợp Ngữ

pdf15 trang | Chuyên mục: Vi Xử Lý – Vi Điều Khiển | Chia sẻ: dkS00TYs | Lượt xem: 2834 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Hợp ngữ - Nguyễn Minh Tuấn - Đại cương về hợp ngữ, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
HỢP NGỮ
Nguyễn Minh Tuấn
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 2
Tài Liệu Tham Khảo
1. Peter Norton's Assembly Language Book for The 
IBM PC
Peter Norton's & Johns Socha - Prentice Hall 
Press - 1986
2. Programmer's Guide to The IBM PC
Peter Norton - Microsoft Press
3. Turbo Assembler Bible
Gary Syck - SAMS – 1991
4. Assembly Programming Language & IBM / PC
Ythayu & Charles Marut
5. The Pentium Microprocessor
James L.Antonakos – Prentice-Hall, Inc. - 1997
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 3
HỢP NGỮ
1. Đại Cương về Hợp Ngữ
2. Kiểu Định Vị và Cờ
3. Lệnh Nhảy và Lặp
4. Ngăn Xếp và Thủ Tục
5. Nhập Xuất Số Hệ 2/16
6. Nhập Xuất Số Hệ 10
7. Lệnh Chuỗi
8. Bàn Phím và Màn Hình
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 4
1. Đại Cương về Hợp Ngữ
1.1. Tổ Chức Bộ Nhớ CPU Intel 80x86
1.2. Tổ ChứcThanh Ghi
1.3. Máy Ngữ & Hợp Ngữ
1.4. Cấu Trúc Chương Trình Hợp Ngữ
1.5. Một Số Lệnh Đơn Giản
1.6. Tạo Chương Trình Hợp Ngữ
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 5
1.1. TổChứcBộ Nhớ CPU Intel
z Đơn vị nhớ: Byte.
z CPU Số bit Dung lượng nhớ
địa chỉ
– 8086/8088 20 bit 1 MB
– 80286 24 bit 16 MB
– 80386 → 32 bit 4096 MB (4 GB)
z Chế độ hoạt động:
– Thực: bộ nhớ → 1 MB (8086/88→ )
– Bảo vệ: bộ nhớ → 16MB (286), 4GB (386 →)
Mặc nhiên
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 6
1.1. TổChứcBộNhớ CPU Intel (tt)
z 1134:1023 → tuyệt đối:
1134 → 11340
1023→ 01023
12363
z 4A37B →
– Địa chỉ ô tương ứng với đoạn 40FF:
4A37B
- 40FF0
0938B → địa chỉ ô = 938B
– Địa chỉ đoạn tương ứng với ô 123B:
4A37B
-0 123B
4 9140 → địa chỉ đoạn = 4914
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 7
1.2. Tổ Chức Thanh Ghi
z Gồm 4 nhóm:
– Thanh ghi đoạn
– Thanh ghi đa dụng
– Thanh ghi con trỏ và chỉ số
– Thanh ghi cờ và con trỏ lệnh.
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 8
1.3. Máy Ngữ & Hợp Ngữ
z Lệnh Dạng máy ngữ Dạng hợp ngữ
1 B4 02 MOV AH, 02h
2 80 C2 30 ADD DL, 30h
3 50 PUSH AX
z Dịch chương trình:
Trình nguồn 
(hợp ngữ)
Trình đích 
(máy ngữ)
Trình 
hợp dịch
(Assembly language) (Assembler) (Machine language)
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 9
1.4. CấuTrúc ChươngTrình Hợp Ngữ
z Tổ chức chương trình đơn giản
.MODEL SMALL ; Kiểu chương trình
.STACK ; Khai báo ngăn xếp
.DATA ; Phần dữ liệu
…………………
.CODE ; Phần lệnh
…………………
END ; Lệnh cuối cùng
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 10
1.5. Một Số Lệnh Đơn Giản
z Cách viết số:
– Thập phân: 123, -54, 123d
– Thập lục: 12Ah, 0Ah
– Nhị phân: 1011b
z Cách viết ký tự / chuỗi:
– ‘A’, “A”, ‘Hello!’, “Hi!”
– ”Don’t forget me!”, ‘”Forget me not!”’
– ’Don’’t forget me!’
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 11
1.5. Một Số Lệnh Đơn Giản (tt)
z Khai báo biến / vùng nhớ:
Tên DB Trị1, Trị2,… ; Kiểu Byte
Tên DW Trị1, Trị2,… ; Kiểu Word
z Ví dụ:
BVar1 DB 5
BVar2 DB ?
BArr DB 10, 11, 12
WVar1 DW 10
WVar2 DW 1234h
Str1 DB ‘ABC’
Str2 DB 13, 10, ‘Hello!’, 10, ‘$’
Sco DB 6 DUP(0)
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 12
1.5. Một Số Lệnh Đơn Giản (tt)
z Định nghĩa hằng:
Tên EQU Hằng
zVí dụ:
CR EQU 0Dh
LF EQU 0Ah
MESS EQU ‘Du lieu nhap sai!’
STR1 DB CR, LF, MESS, ‘$’
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 13
1.5. Một Số Lệnh Đơn Giản (tt)
$!OLLEHS
DS:DX
MOV AH, 9
MOV BX, SEG S
MOV DS, BX
MOV DX, OFFSET S
INT 21h
HELLO!
S DB ‘HELLO!$’
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 14
1.6. Tạo Ch.Trình Hợp Ngữ
z Qui trình:
1. Soạn chương trình (nguồn)
2. Dịch chương trình (nguồn)
3. Liên kết chương trình (đối tượng)
4. Chạy chương trình (đích)
NMT - HN - V3.10 - Ch1 - Ns45 - 27.10.03 15
1.6. Tạo Ch.Trình Hợp Ngữ (tt)
Trình nguồn
mov ah, 2…
Trình soạn thảo
Notepad,…
Trình nguồn
CT.ASM
Trình hợp dịch
C>TASM CT
Trình liên kết
C>TLINK CT
Trình đích
C>CT
Tập đối tượng
CT.OBJ
Trình đích
CT.EXE
Kết quả
???

File đính kèm:

  • pdfBài giảng Hợp ngữ - Nguyễn Minh Tuấn - Đại cương về hợp ngữ.pdf