Chương 4 - Các chỉ thị chuỗi, dữ liệu nhị phân và ÁC II
Số trang: 18
Loại file: pdf
Dung lượng: 735.96 KB
Lượt xem: 13
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tham khảo tài liệu chương 4 - các chỉ thị chuỗi, dữ liệu nhị phân và ác ii, công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Nội dung trích xuất từ tài liệu:
Chương 4 - Các chỉ thị chuỗi, dữ liệu nhị phân và ÁC II Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIICác đặc trưng của chỉ thị chuỗi Một chỉ thị chuỗi có thể xử lý trên một byte, một từ hay từ kép- Các chỉ thị chuỗi sử dụng các thanh ghi DS:SI hoặc ES:DI, trong đó SI và- DI chứa địa chỉ offset 5 chỉ thị chuỗi thường sử dụng:- di chuyển 1 byte, từ hoặc từ kép từ vi trí này đến vị trí khác trong bộ MOVS nhớ nạp từ bộ nhớ 1 byte vào AL, một từ vào AX, hoặc từ kép vào EAX LODS cất nội dung các thanh ghi AL,AX hoặc EAX vào bộ nhớ STOS So sánh các vùng nhớ trong bộ nhớ theo byte, từ hay từ kép CMPS So sánh nội dung của các thanh ghi AL,AX,EAX với nội dung của SCAS một vùng nhớ Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIIChỉ thị MOVS* Chức năng: Di chuyển chuỗi (sao chép nội dung chuỗi) Giá trị Điều kiện Thao tác Thanh ghi Địa chỉ vùng dữ liệu đích ES:DI Vào DI Địa chỉ vùng dữ liệu nguồn DS:SI SI Số ký tự cần di chuyển CX * Ví dụ: Chép nội dung của chuỗi N1 vào N2 (với N2 là chuỗi rỗng) .MODEL SMALL .CODE .DATA MOV AX,@DATA N1 DB Assembler$ MOV DS,AX N2 DB 10 DUP( ) MOV ES,AX MSG5 DB 0Ah,0Dh,Chuoi thu nhat=$ CALL DICHUYEN MSG6 DB 0Ah,0Dh,Chuoi thu hai=$ CALL INKETQUA MOV AH,1 INT 21h MOV AH,4Ch INT 21h Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIIChỉ thị MOVS INKETQUA PROC NEAR DICHUYEN PROC NEAR MOV AH,9 MOV CX,10 LEA DI,N2 LEA DX,MSg5 LEA SI,N1 INT 21h REP MOVSB LEA DX,N1 RET INT 21h DICHUYEN ENDP LEA DX,MSG6 INT 21h LEA DX,N2 INT 21h RET INKETQUA ENDP Demo Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIICác chỉ thị thay đổi cờ hướng DF Cờ hướng DF xác định hướng mà chỉ thị chuỗi được lặp lại (0: trái sang- phải, 1=phải sang trái) Các chỉ thị thiết lập cờ hướng:- * Chỉ thị CLD: Xóa DF về 0 * Chỉ thị STD: Thiết lập cờ DF lên 1V í dụ : ;Thiết lập DF=1 STD MOV CX,20 LEA DI,S2 LEA SI,S1 REP MOVSB Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIITiền tố lặp lại - REP Cho phép lặp lại việc thực thi chỉ thị dựa trên giá trị CX - Sau mỗi lần lặp, CX giảm đi 1 cho đến khi CX=0 - Cờ hướng DF xác định hướng mà chuỗi lặp lại: - * Xử lý từ trái sang phải: dùng chỉ thị CLD xóa cờ DF về 0 * Xử lý từ phải sang trái: dùng chỉ thị STD để thiết lập cờ DF về 1 V í dụ : CLD MOV CX,20 LEA DI,STRING2 LEA SI,STRING1 REP MOVSB JCXZ LABEL2 LABEL1: MOV AL,[SI] MOV [DI],AL INC DI INC SI LOOP LABEL1 LABEL2:...... - Các lệnh khác: REPE/REPZ – REPNE/REPNZ ( Điều kiện bởi Cờ ZF) Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIIChỉ thị LODS* Chức năng: Nạp chuỗi- Nạp từ bộ nhớ vào AL (byte), vào AX (từ)- Địa chỉ vùng dữ liệu được nạp vào DS:SI- Giảm/tăng nội dung SI bởi 1 (nạp byte), bởi 2 (nạp từ) với cờ DF Giá trị Điều kiện Thao tác Thanh ghi Địa chỉ vùng dữ liệu đích ES:DI Vào DI Địa chỉ vùng dữ liệu nguồn DS:SI SI Số ký tự cần nạp ...
Nội dung trích xuất từ tài liệu:
Chương 4 - Các chỉ thị chuỗi, dữ liệu nhị phân và ÁC II Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIICác đặc trưng của chỉ thị chuỗi Một chỉ thị chuỗi có thể xử lý trên một byte, một từ hay từ kép- Các chỉ thị chuỗi sử dụng các thanh ghi DS:SI hoặc ES:DI, trong đó SI và- DI chứa địa chỉ offset 5 chỉ thị chuỗi thường sử dụng:- di chuyển 1 byte, từ hoặc từ kép từ vi trí này đến vị trí khác trong bộ MOVS nhớ nạp từ bộ nhớ 1 byte vào AL, một từ vào AX, hoặc từ kép vào EAX LODS cất nội dung các thanh ghi AL,AX hoặc EAX vào bộ nhớ STOS So sánh các vùng nhớ trong bộ nhớ theo byte, từ hay từ kép CMPS So sánh nội dung của các thanh ghi AL,AX,EAX với nội dung của SCAS một vùng nhớ Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIIChỉ thị MOVS* Chức năng: Di chuyển chuỗi (sao chép nội dung chuỗi) Giá trị Điều kiện Thao tác Thanh ghi Địa chỉ vùng dữ liệu đích ES:DI Vào DI Địa chỉ vùng dữ liệu nguồn DS:SI SI Số ký tự cần di chuyển CX * Ví dụ: Chép nội dung của chuỗi N1 vào N2 (với N2 là chuỗi rỗng) .MODEL SMALL .CODE .DATA MOV AX,@DATA N1 DB Assembler$ MOV DS,AX N2 DB 10 DUP( ) MOV ES,AX MSG5 DB 0Ah,0Dh,Chuoi thu nhat=$ CALL DICHUYEN MSG6 DB 0Ah,0Dh,Chuoi thu hai=$ CALL INKETQUA MOV AH,1 INT 21h MOV AH,4Ch INT 21h Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIIChỉ thị MOVS INKETQUA PROC NEAR DICHUYEN PROC NEAR MOV AH,9 MOV CX,10 LEA DI,N2 LEA DX,MSg5 LEA SI,N1 INT 21h REP MOVSB LEA DX,N1 RET INT 21h DICHUYEN ENDP LEA DX,MSG6 INT 21h LEA DX,N2 INT 21h RET INKETQUA ENDP Demo Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIICác chỉ thị thay đổi cờ hướng DF Cờ hướng DF xác định hướng mà chỉ thị chuỗi được lặp lại (0: trái sang- phải, 1=phải sang trái) Các chỉ thị thiết lập cờ hướng:- * Chỉ thị CLD: Xóa DF về 0 * Chỉ thị STD: Thiết lập cờ DF lên 1V í dụ : ;Thiết lập DF=1 STD MOV CX,20 LEA DI,S2 LEA SI,S1 REP MOVSB Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIITiền tố lặp lại - REP Cho phép lặp lại việc thực thi chỉ thị dựa trên giá trị CX - Sau mỗi lần lặp, CX giảm đi 1 cho đến khi CX=0 - Cờ hướng DF xác định hướng mà chuỗi lặp lại: - * Xử lý từ trái sang phải: dùng chỉ thị CLD xóa cờ DF về 0 * Xử lý từ phải sang trái: dùng chỉ thị STD để thiết lập cờ DF về 1 V í dụ : CLD MOV CX,20 LEA DI,STRING2 LEA SI,STRING1 REP MOVSB JCXZ LABEL2 LABEL1: MOV AL,[SI] MOV [DI],AL INC DI INC SI LOOP LABEL1 LABEL2:...... - Các lệnh khác: REPE/REPZ – REPNE/REPNZ ( Điều kiện bởi Cờ ZF) Chöông 4: Caùc chæ thò chuoãi, döõ lieäu nhò phaân vaø ASCIIChỉ thị LODS* Chức năng: Nạp chuỗi- Nạp từ bộ nhớ vào AL (byte), vào AX (từ)- Địa chỉ vùng dữ liệu được nạp vào DS:SI- Giảm/tăng nội dung SI bởi 1 (nạp byte), bởi 2 (nạp từ) với cờ DF Giá trị Điều kiện Thao tác Thanh ghi Địa chỉ vùng dữ liệu đích ES:DI Vào DI Địa chỉ vùng dữ liệu nguồn DS:SI SI Số ký tự cần nạp ...
Tìm kiếm theo từ khóa liên quan:
hợp ngữ lập trình máy tính chỉ thị logic xử lý màn hình dữ liệu nhị phân xử lý xuất nhập lạp trình điều khiểnGợi ý tài liệu liên quan:
-
Bài giảng Tin học lớp 11 bài 1: Giới thiệu ngôn ngữ lập trình C#
15 trang 222 0 0 -
15 trang 195 0 0
-
65 trang 152 0 0
-
Luận văn: Xây dựng hệ thống băng tải đếm sản phẩm sử dụng PLC S7-200
61 trang 147 0 0 -
69 trang 143 0 0
-
Bài giảng Công nghệ phần mềm - Chương 2: Quy trình xây dựng phần mềm
36 trang 135 0 0 -
3 trang 114 0 0
-
Giáo trình Kỹ thuật vi điều khiển
121 trang 110 0 0 -
Giáo trình cơ sở CAD/CAM trong thiết kế và chế tạo máy_3
20 trang 99 0 0 -
133 trang 97 0 0