Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅN
Các lệnh điều khiển rẻ nhánh
Các lệnh nhảy điều kiện:
* Phạm vi của lệnh nhảy điều kiện: cấu trúc máy của
lệnh nhảy điều kiện đòi hỏi nhãn đích phải đứng trước lệnh
nhảy không quá 126 byte hoặc đứng sau không quá 127 byte
* 3 loại lệnh nhảy điều kiện:
+ Các lệnh nhảy dấu: được dùng khi kết quả tr về các
số dấu
+ Các lệnh nhảy không dấu: được dùng khi kết quả trả về
các số không dấu
+ Các lệnh nhảy điều kiện đơn: điều kiện phụ thuộc vào 1 cờ
riêng biệt
Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅN
Các lệnh điều khiển rẻ nhánh
Các lệnh nhảy điều kiện:
* Các lệnh nhảy dấu:
hiệu Chức năng Điều kiện nhảy
JG/JNLE
Nhảy nếu
lớn hơn
ZF=0 và
SF=0F
JGE/JNL
Nhảy
nếu lớn hơn hoặc bằng
SF=0F
JL/JNGE
Nhảy
nếu nhỏ hơn
SF<>0F
JLE/JNG
Nhảy
nếu nhỏ hơn hoặc bằng
ZF=1 hay
SF=0F
Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅN
Các lệnh điều khiển rẻ nhánh
Các lệnh nhảy điều kiện:
* Các lệnh nhảy không dấu:
hiệu Chức năng Điều kiện nhảy
JA/JNBE
Nhảy nếu lớn hơn
CF=0 và
ZF=0
JAE/JNB
Nhảy
nếu lớn hơn hoặc bằng
CF=0
JB/JNAE
Nhảy
nếu nhỏ hơn
CF=1
JBE/JNA
Nhảy
nếu nhỏ hơn hoặc bằng
CF=1 hay ZF=1
Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅN
Các lệnh điều khiển rẻ nhánh
Các lệnh nhảy điều kiện:
* Các lệnh nhảy điều kiện đơn:
hiệu Chức năng Điều kiện nhảy
JE/JZ
Nhảy nếu bằng/Nhảy nếu bằng 0
ZF=1
JNE/JNZ
Nhảy
nếu không bằng/Nếu khác 0
ZF=0
JC
Nhảy
nếu có nhớ
CF=1
JNC
Nhảy
nếu không nhớ
CF=0
JO
Nhảy
nếu tràn số
OF=1
JNO
Nhảy
nếu không tràn
OF=0
JS
Nhảy
nếu dấu âm
SF=1
JNS
Nhảy
nếu dấu dương
SF=0
JP/JPE
Nhảy
nếu cờ chẵn
PF=1
JNP/JPO
Nhảy
nếu cờ lẻ
PF=0
Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅN
Các lệnh điều khiển rẻ nhánh
Các lệnh nhảy điều kiện:
dụ: Viết chương trình hiển thị toàn bộ tập hợp các tự của hệ IBM
TITLE BAITAP4:IBM
.MODEL SMALL
.STACK 100h
.CODE
MAIN PROC MAIN ENDP
END MAIN
MOV AH,4Ch
;trả quyền điều khiển
INT 21h
MOV AH,2
MOV CX,256 ; số tự
MOV DL,0 ; NULL
PRINT_LOOP
INT 21h
INC DL
DEC CX
JNZ PRINT_LOOP