– XỬ LÝ CHUỖI KÝ TỰ WRITELN MACRO BIEN1 LOCAL BIEN1 MOV AH,09 L...

Bài 6 – Xử lý chuỗi ký tự

writeln macro bien1

LOCAL bien1

mov

ah,09

lea dx, bien1

int

21h

mov

ah,02h

mov dl, 0ah

mov dl, 0dh

endm

dseg segment

tbao db "Chuong tring so sanh oldpass va newpass$"

oldpass db "0123456789"

newpass db "1234567890"

tbao1

db

"Haichuoi giong nhau $"

tbao2 db "Haichuoi khong giong nhau $"

dseg ends

cseg segment

assume cs:cseg, ds:dseg, es: dseg

begin: mov ax, dseg

mov ds, ax

mov es, ax

writeln

tbao

cld

;

chonchieu xu ly chuoi

mov cx, 10

; so ky tu/so byte can so sanh

lea si, oldpass; (DS:SI)--> dia chi cua chuoi nguon

lea di, newpass; (ES:DI)--> dia chi cua chuoi dich

repe cmpsb

; so sanh tung ky tu/byte

je

intb1

writeln

tbao2

jmp

thoat

intb1: writeln tbao2

thoat:

mov

ah,08h

mov ah, 4ch

cseg ends

end

begin

-

Hãy sửa

đổi file BAI_6A1.ASM, kết hợp với file BAI_6A.ASM (chương trình

mẫu) và lưu với tên BAI_6A2.ASM để có thể thực hiện được nhiệm vụ sau: nhập

vào một chuỗi ký tự có 10 ký tự, trong lúc nhập chỉ hiện thị ra ký tự “*”. Sau đó so

sánh với một oldpass có nội dung tùy ý (nhưng chỉ có độ dài là 10 ký tự mà do