Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng
0 1
d d d s s s
CHƯƠNG II: GIỚI THIỆU TẬP LỆNH CỦA VI XỬ
LÝ 8085
I. NHÓM LỆNH DI CHUYỂN 8 BIT:
1. Lệnh truyền dữ liệu giữa các thanh ghi:
+ Cú pháp: MOV d, s
s (source): tượng trưng cho các thanh ghi phát.
d (destination): tượng trưng cho thanh nhận.
+ Mã đối tượng:
+ Các bit ddd và sss tra ở BẢNG 2.1 cuối tập lệnh.
+ Ý nghóa: chuyển nội dung thanh ghi s vào thanh ghi d, nội dung thanh ghi s vẫn còn.
+ Lệnh này chiếm 1 byte, số chu kỳ xung clock = 4.
+ Thanh ghi trạng thái không thay đổi.
(Tương tự cho các lệnh khác).
2. Lệnh chuyển dữ liệu thanh ghi vào ô nhớ:
Cú pháp: MOV M, s
3. Lệnh chuyển dữ liệu từ ô nhớ vào thanh ghi:
Cú pháp: MOV d, M
4. Lệnh truyền tức thời dữ liiệu 8 bit vào thanh ghi:
Cú pháp: MVI d, D8
5. Lệnh truyền tức thời dữ liệu 8 bit vào ô nhớ:
Cú pháp: MVI M, D8
1. Lệnh cộng thanh ghi:
+ Cú pháp: ADD s
+ Mã đối tượng:
+ Ý nghóa: nội dung thanh ghi A được cộng với nội dung thanh ghi s, kết quả chứa
trong thanh ghi A , nội dung thanh ghi s vẫn còn.
+ Lệnh này chiếm một byte, số chu kỳ xung clock = 4.
+ Lệnh này ảnh hưởng đến thanh ghi trạng thái.
2. Lệnh cộng thanh ghi có số nhớ ban đầu:
+ Cú pháp: ADC s
+ Mã đối tượng:
+ Ý nghóa: nội dung thanh ghi A được cộng với nội dung thanh ghi s cộng với bit Cy,
kết quả chứa trong thanh ghi A, nội dung thanh ghi s vẫn còn.
+ Lệnh nầy chiếm 1 byte, số chu kỳ xung clock = 4.
+ Lệnh nầy ảnh hưởng đến thanh ghi trạng thái.
(Tương tự cho các lệnh khác)
3. Lệnh trừ thanh ghi:
Cú pháp: SUB s
4. Lệnh trừ thanh ghi có số nhớ ban đầu:
Cú pháp: SBB s
5. Lệnh and với thanh ghi:
Cú pháp: ANA s
6. Lệnh Ex-or với thanh ghi:
Cú pháp: XRA s
7. Lệnh or với thanh ghi:
Cú pháp: ORA s
8. Lệnh so sánh với thanh ghi:
Cú pháp: CMP s
+ Lệnh nầy ảnh hưởng đến thanh ghi trạng thái.
(Tương tự cho các lệnh khác)
3. Lệnh trừ với ô nhớ:
Cú pháp: SUB M
4. Lệnh trừ ô nhớ có số nhớ ban đầu:
Cú pháp: SBB M
5. Lệnh and với ô nhớ:
Cú pháp: ANA M
6. Lệnh Ex-or với ô nhớ:
Cú pháp: XRA M
7. Lệnh or với ô nhớ:
Cú pháp: ORA M
8. Lệnh so sánh với ô nhớ:
Cú pháp: CMP M
V. NHÓM LỆNH SỐ HỌC GIỮA THANH GHI A VÀ DỮ LIỆU 8 BIT:
1. Lệnh cộng tức thời với dữ liệu 8 bit:
+ Cú pháp: ADI D8
+ Mã đối tượng:
+ Ý nghóa: nội dung thanh ghi A được cộng với dữ liệu 8 bit D8, kết quả chứa trong
thanh ghi A.
+ Lệnh nầy chứa 2 byte, số chu kỳ xung clock = 7.
+ Lệnh nầy ảnh hưởng đến thanh ghi trạng thái.
2. Lệnh cộng tức thời với dữ liệu 8 bit có số nhớ ban đầu:
+ Cú pháp: ACI D8
+ Mã đối tượng:
Cú pháp: ANI D8
6. Lệnh Ex-or tức thời với dữ liệu 8 bit:
Cú pháp: XRI D8
7. Lệnh or tức thời với dữ liệu 8 bit:
Cú pháp: ORI D8
8. Lệnh so sánh tức thời với dữ liệu 8 bit:
Cú pháp: CPI D8
VI. NHÓM LỆNH NẠP TỨC THỜI CẶP THANH GHI:
1. Lệänh nạp cặp thanh ghi BC:
+ Cú pháp: LXI B, D16 + Mã đối tượng:
+ Ý nghóa: dữ liệu 16 bit D16 được nạp vào cặp thanh ghi BC.
+ Lệnh nầy chiếm 3 byte, số chu kỳ xung clock = 10.
+ Không ảnh hưởng đến thanh ghi trạng thái.
(Tương tự cho các lệnh khác)
2. Lệnh nạp cặp thanh ghi DE:
Cú pháp: LXI D, D16
3. Lệnh nạp cặp thanh ghi HL:
Cú pháp: LXI H, D16
4. Lệnh nạp cặp thanh ghi SP:
Cú pháp: LXI SP, D16
VII. NHÓM LỆNH PUSH:
1. Lệnh cất cặp thanh ghi BC:
+ Cú pháp: PUSH B
+Mã đối tượng:
(Tương tự cho các lệnh khác cùng nhóm).
2. Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi DE:
+ Cú pháp: POP D
3. Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi HL:
+ Cú pháp: POP H
4. Lệnh chuyển nội dung ngăn xếp vào cặp thanh ghi AF:
+ Cú pháp: POP PSW
IX. NHÓM LỆNH CỘNG CẶP THANH GHI VỚI CẶP THANH GHI:
1. Lệnh cộng cặp thanh ghi BC:
+ Cú pháp: DAD B
+ Mã đối tượng:
+ Ý nghóa: nội dung cặp thanh ghi BC được cộng với cặp thanh ghi HL, kết quả cất
trong cặp thanh ghi HL. Thanh ghi L được cộng với C, thanh ghi H được cộng với B.
+ Lệnh này chiếm 1 byte, số chu kỳ clock =10.
+ Lệnh này chỉ làm ảnh hưởng đến bit trạng thái Cy.
Tương tự cho các lệnh cùng nhóm này như sau:
2. Lệnh cộng cặp thanh ghi DE:
+ Cú pháp: DAD D
3. Lệnh cộng cặp thanh ghi HL:
+ Cú pháp: DAD H
4. Lệnh cộng cặp thanh ghi SP:
+ Cú pháp: DAD SP
X. NHÓM LỆNH TĂNG CẶP THANH GHI: 1.Lệnh tăng cặp thanh ghi BC:
+ Cú pháp: INX B
+ Mã đối tượng: +Ý nghóa: nội dung cặp thah ghi BC tăng thêm một đơn vò.
+ Lệnh này chiếm 1 byte, số chu kỳ clock =6.
8 bit cao
XI. LỆNH GIẢM CẶP THANH GHI:
1. Lệnh giảm cặp thanh ghi BC:
+ Cú pháp: DCX D
+ Mã đối tượng:
+ Ý nghóa: nội dung cặp thanh ghi BC giảm thêm 1 đơn vò.
+ Lệnh này chiếm 1 byte, số chu kỳ clock=6.
+ Lệnh này không làm ảnh hưởng đến thanh ghi trạng thái.
(Tương tự cho các lênh khác)
2. Lệnh giảm cặp thanh ghi DE:
+ Cú pháp: DCX D
3. Lệnh giảm cặp thanh ghi HL:
+ Cú pháp: DCX H
4. Lệnh giảm cặp thanh ghi SP:
+ Cú pháp: DCX SP
XII. NHÓM LỆNH GIÁN TIẾP DÙNG CẶP THANH GHI:
1. Lệnh lưu trữ gián tiếp dùng cặp thanh ghi BC:
+ Cú pháp: STAX B
+ Mã đối tượng:
+ Ý nghóa: nội dung thanh gi được lưu trữ gián tiếp vào ô nhớ có đòa chỉ chứa trong
cặp thanh ghi BC.
+ Lệnh này không ảnh hưỏng đến thanh ghi trạng thái.
(Tương tự cho các lênh khác cùng nhóm)
2. Lệnh lưu trữ gián tiếp dùng cặp thanh ghi DE:
+ Cú pháp: STAX D
3. Lệnh nạp gián tiếp dùng cặp thanh ghi BC:
+ Cú pháp: LDAX B
8 bit thấp
8 bit cao
0 0 0 0 0 1 1 1+ Ý nghóa: nội dung thanh ghi A được lưu trữ vào ô nhớ có đòa chỉ ADDR.
+ Lệnh này chiếm 3 byte, số chu kỳ clock=13.
+ Lệnh này không ảnh hưởng đến thanh ghi trạng thái.
2. Lệnh nạp trực tiếp:
+ Cú pháp: LDA ADDR
+ Mã đối tượng: + Ý nghóa: nội dung ô nhớ có đòa chỉ là ADDR được chuyển vào thanh ghi A.
+ Lệnh này chiếm 3 byte, số chu kỳ xung clock =13.
+ Lệnh nầøy không ảnh hưởng đến thanh ghi trạng thái.
3. Lệnh lưu trữ trực iếp cặp thanh ghi:
+ Cú pháp: SHLD ADDR + Mã đối tượng: + Ý nghóa: nội dung cặp thanh ghi HL đựoc lưu vào 2 ô nhớ liên tiếp là ADDR và
(ADDR+1). Nội dung thanh ghi L được lưu trữ vào ô nhớ có đòa chỉ là ADDR, nội dufg của
thanh ghi H được lưu trữ vào ô nhớ có đòa chỉ là (ADDR+1).
+ Lệnh nầy chiếm 3 byte, số chu kỳ xung clock = 16.
Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng
0 0 0 0 1 1 1 1
1 1 0 0 0 0 1 1
8 bat thấp
8 bit cao
1 1 0 0 0 0 1 0
8 bit thấp
8 bit cao
+ Ý nghóa: nội dung thanh ghi A dòch từ phải sang trái, bit MSB được chuyển sang
bit Cy và bit LSB.
+ Lệnh này chiếm 1byte, số chu kỳ lock =4.
+ Lệnh này chỉ ảnh hưởng đến bit trạng thái Cy.
2. Lệnh dòch thanh ghi A sang phải:
+ Cú p`áp: RRC
+ Mã đối tượng:
+ Ý nghóa: nội dung thanh ghi A dòch từ trái sang phải, bit LSB được chuyển sang
bit Cy và bit MSB.
+ Lệnh này chiếm 1byte, số chu kỳ lock =4.
+ Lệnh này chỉ ảnh hưởng đến bit trạng thái Cy.
( Tương tự cho các lệnh khác).
.
Trường ĐH SPKT Luận văn tốt nghiệp GVHD: Nguyễn Đình Phú SVTH: Nguyễn Trung Dũng
1 1 0 0 1 1 0 1
8 bit thấp
8 bit cao
1 1 0 0 1 1 0 1
8 bit thấp
8 bit cao
4. Lệnh nhảy khi bit C=0:
+ Cú pháp: JNC ADDR
5. Lệnh nhảy khi bit C=1:
+ Cú pháp: JC ADDR
6. Lệnh nhảy khi bit P=0:
+ Cú pháp: JPO ADDR
7. Lệnh nhảy khi bit P=1:
+ Cú pháp: JPE ADDR
8. Lệnh nhảy khi bit S=0:
+ Cú pháp: JP ADDR
9. Lệnh nhảy khi bit S=1:
+ Cú pháp: JM ADDR
XVI. NHÓM LỆNH GỌI:
1. Lệnh gọi không điều kiện:
+ Cú pháp: CAAL ADDR