Danh mục

Chương 2 - Các chỉ logic và điều khiển

Số trang: 17      Loại file: pdf      Dung lượng: 433.45 KB      Lượt xem: 11      Lượt tải: 0    
tailieu_vip

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Tài liệu tham khảo giáo án lập trình hợp ngữ dành Cho sinh viên Ngành Công nghệ Thông tin
Nội dung trích xuất từ tài liệu:
Chương 2 - Các chỉ logic và điều khiển Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCác lệnh điều khiển rẻ nhánhCác lệnh nhảy có điều kiện:* Phạm vi của lệnh nhảy có điều kiện: cấu trúc mã máy củalệnh nhảy có điều kiện đòi hỏi nhãn đích phải đứng trước lệnhnhảy không quá 126 byte hoặc đứng sau không quá 127 byte* Có 3 loại lệnh nhảy có điều kiện:+ Các lệnh nhảy có dấu: được dùng khi kết quả trả về là cácsố có dấu+ Các lệnh nhảy không dấu: được dùng khi kết quả trả về là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ÅNCác lệnh điều khiển rẻ nhánhCác lệnh nhảy có điều kiện:* Các lệnh nhảy có dấu: Ký hiệu Chức năng Điều kiện nhảy Nhảy nếu lớn hơn JG/JNLE ZF=0 và SF=0F Nhảy nếu lớn hơn hoặc bằng JGE/JNL SF=0F Nhảy nếu nhỏ hơn JL/JNGE SF0F Nhảy nếu nhỏ hơn hoặc bằng JLE/JNG ZF=1 hay SF=0F Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCác lệnh điều khiển rẻ nhánhCác lệnh nhảy có điều kiện:* Các lệnh nhảy không dấu: Ký hiệu Chức năng Điều kiện nhảy Nhảy nếu lớn hơn JA/JNBE CF=0 và ZF=0 Nhảy nếu lớn hơn hoặc bằng JAE/JNB CF=0 Nhảy nếu nhỏ hơn JB/JNAE CF=1 Nhảy nếu nhỏ hơn hoặc bằng JBE/JNA CF=1 hay ZF=1 Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCác lệnh điều khiển rẻ nhánhCác lệnh nhảy có điều kiện:* Các lệnh nhảy điều kiện đơn: Ký hiệu Chức năng Điều kiện nhảy Nhảy nếu bằng/Nhảy nếu bằng 0 JE/JZ ZF=1 Nhảy nếu không bằng/Nếu khác 0 JNE/JNZ ZF=0 Nhảy nếu có nhớ JC CF=1 Nhảy nếu không nhớ JNC CF=0 Nhảy nếu tràn số JO OF=1 Nhảy nếu không tràn JNO OF=0 Nhảy nếu dấu âm JS SF=1 Nhảy nếu dấu dương JNS SF=0 Nhảy nếu cờ chẵn JP/JPE PF=1 Nhảy nếu cờ lẻ JNP/JPO PF=0 Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCác lệnh điều khiển rẻ nhánhCác lệnh nhảy có điều kiện: Ví dụ: Viết chương trình hiển thị toàn bộ tập hợp các ký tự của hệ IBM ;trả quyền điều khiển TITLE BAITAP4:IBM .MODEL SMALL MOV AH,4Ch .STACK 100h INT 21h .CODE MAIN ENDP MAIN PROC END MAIN MOV AH,2 ; số ký tự MOV CX,256 MOV DL,0 ; NULL PRINT_LOOP INT 21h INC DL DEC CX JNZ PRINT_LOOP Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCác lệnh điều khiển rẻ nhánhCác lệnh nhảy có điều kiện: Lệnh CMP Lệnh CMP dùng để so sánh giữa 2 toán tử bằng cách lấy toán tử đích trừ đi toán tử nguồn , Cú pháp: CMP Chú ý: + Thường được sử dụng chung với lệnh nhảy có điều kiện + CMP giống lệnh SUB nhưng toán hạng đích không bị thay đổi giá trị. Ví dụ: Với AX=7FFFh, BX=0001h ;điều kiện nhảy AX>BX CMP AX,BX ;nếu lớn hơn thì nhả đến nhãn NHAN JG NHAN NHAN: Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCác lệnh điều khiển rẻ nhánhLệnh nhảy không điều kiện: Lệnh JMP Lệnh JMP dùng để nhảy không điều kiện, dùng để khắc phục giới hạn của lệnh nhảy có điều kiện: Cú pháp: JMP Ví dụ: MOV CX,10 TOP: ;giảm bộ đếm DEC CX ;đúng lặp lại nếu CX> JNZ BOTTOM ;sai  nhảy đến nhãn EXIT JMP EXIT BOTTOM: JMP TOP EXIT: MOV AX,BX Chöông 2: CAÙC CHÆ THÒ LOGIC VAØ ÑIEÀU KHIEÅNCấu trúc rẻ nhánh IF…THEN….ELSECấu trúc rẻ nhánh IF…THEN…..ELS ...

Tài liệu được xem nhiều: