Ktl-icon-tai-lieu

Chương 2: Giới thiệu hợp ngữ

Được đăng lên bởi dcruoiden
Số trang: 7 trang   |   Lượt xem: 532 lần   |   Lượt tải: 0 lần
2. Hợp ngữ

Chương 2
Hợp Ngữ (Assembly)
1.
2.
3.
4.
5.
6.

Thứ tự
lệnh

Ngôn ngữ máy
Hợp ngữ
Đặc tính tổng quát của Hợp ngữ
Hợp ngữ MASM
Cấu trúc chương trình
Cách tạo chương trình Hợp ngữ

Giá trị thập
lục phân

Hợp Ngữ

1

B4 09

MOV AH, 09h

AH ← 09h

2

BA 03 01

MOV DX, 0103h

DX ← 0103h

3

40

INC AX

AX ← AX + 1

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

1. Ngôn ngữ máy
Thứ tự
lệnh

Giá trị thập
lục phân

Ý nghĩa

3

Ngôn ngữ Máy và Hợp Ngữ
Mã lệnh nhị phân
(CPU thi hành)

1

B4 09

10110100 00001001

2

BA 03 01

10111010 00000011 00000001

3

40

01000000

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

2

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

4

3. Đặc tính tổng quát của Hợp ngữ

Nhãn

• Dòng lệnh
Tên

–
–
–
–

Mã Lệnh

• Ví dụ:
NH: MOV AX, DS ; NH là nhãn đánh dấu một địa chỉ ô
nhớ
FOO LABEL near ; đặt tên cho địa chỉ ô nhớ sau lệnh
giả này
CTCON PROC FAR ; địa chỉ bắt đầu của chương
trình con
EXTRN NH near ; NH là nhãn ngoài chương trình
gốc nầy

Toán Hạng Chú Thích

Tên: Hằng, Biến, Nhãn
Mã lệnh: Lệnh giả - lệnh mã máy
Toán hạng
Chú thích

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

5

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

4. Hợp ngữ MASM
•

•

Biến – Ký hiệu (Hằng)

Dòng lệnh
Tên

Từ gợi nhớ mã lệnh
hoặc lệnh giả

7

Toán hạng hoặc
biểu thức

• Ví dụ:
TWO

Ghi chú

2 ; khai báo biến TWO có giá trị là 2

FOO EQU 7h ; ký hiệu FOO thay thế giá trị 07h
TOTO = 0Fh ; ký hiệu TOTO thay thế giá trị 0Fh

Ví dụ:
BDAU: MOV DX, 3F8h ; 3F8H là địa chỉ cổng vào ra nối tiếp
BDAU
– Tên với vai trò là nhãn
:
– (Dấu 2 chấm) phân cách Tên và Từ gợi nhớ
MOV
– Từ gợi nhớ mã lệnh
DX, 3F8h
– Hai toán hạng, phân cách bằng dấu phẩy
3F8H là địa chỉ cổng vào ra nối tiếp – Câu chú thích
;
– (Dấu ; ) Phân cách Toán hạng và Chú thích
Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

DB

6

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

8

Lệnh giả
•
•
•
•

Là lệnh của trình hợp dịch, không có mã máy tương ứng
Không điều khiển CPU hoạt động.
Chỉ hướng dẫn trình hợp dịch.
Bốn nhóm lệnh giả:
– Cấu trúc chương trình
– Bộ nhớ
– Toán hạng, Toán tử
– Dịch có điều kiện

Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006

9

Lệnh giả cấu trúc chương trình

ASSUME: Chỉ định loại của một đoạn
• Cú pháp: ASSUME <SegRes>:<Tên1>,<SegRes>:<Tên2>
• Ví dụ: Chỉ định đoạn có tên DATA là đoạn dữ liệu (DS) và
đoạn có tên CODE là đoạn lệnh (CS):
ASSUME

DS: DATA, CS: CODE

Chú ý: L nh ASSUME ph i đ c v...
1. Ngôn ng máy
2. Hp ng
3. Đặc tính tng quát ca Hp ng
4. Hp ngMASM
5. Cu trúc chương trình
6. Cách to chương trình Hp ng
Chương 2
Hp Ng (Assembly)
Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006 2
1. Ngôn ngmáy
01000000403
10111010 00000011 00000001BA 03 012
10110100 00001001B4 091
Mã lnh nh phân
(CPU thi hành)
Giá tr thp
lc phân
Th t
lnh
Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006 3
2. Hp ng
AX AX + 1
INC AX40 3
DX 0103h
MOV DX, 0103hBA 03 01 2
AH 09h
MOV AH, 09hB4 09 1
Ý nghĩa
Hp Ng
Giá tr thp
lc phân
Th t
lnh
Assembly: Chapter 2 - MEng. Nguyen Hua Duy Khang, 2006 4
Ngôn ngMáy và Hp Ng
Chương 2: Giới thiệu hợp ngữ - Trang 2
Để xem tài liệu đầy đủ. Xin vui lòng
Chương 2: Giới thiệu hợp ngữ - Người đăng: dcruoiden
5 Tài liệu rất hay! Được đăng lên bởi - 1 giờ trước Đúng là cái mình đang tìm. Rất hay và bổ ích. Cảm ơn bạn!
7 Vietnamese
Chương 2: Giới thiệu hợp ngữ 9 10 542