Em có bài ASM này nhưng không biết lỗi ở đâu cả mà khi chạy thì nó không đúng kết quả! mong các bác sửa giúp em với! em cảm ơn!
Đề bài là: "VIẾT CHƯƠNG TRÌNH NHẬP VÀO MỘT KÍ TỰ, KIỂM TRA XEM CÓ PHẢI LÀ CHỮ CÁI HAY KO? NẾU LÀ CHỮ CÁI THÌ IN RA MÀN HÌNH, NẾU KO PHẢI CHỮ CÁI THÌ IN RE THÔNG BÁO MỜI NHẬP LẠI? (LƯU Ý, CHỮ CÁI CÓ CẢ CHỮ HOA VÀ CHỮ THƯỜNG)
bài code của em đây:
.model small
.stack 100h
.data
tb1 db 'nhap vao mot chu cai bat ki:$'
tb2 db 13,10,'$'
tb3 db 'nhap sai! nhap lai: $'
tb4 db 'ki tu vua nhap la chu $'
a db ?
.code
main proc
;KHOI TAO
mov ax,@data
mov ds,ax
mov ah,9
lea dx,tb1
int 21h
lap:
;NHAP KI TU VAO
mov ah,1
int 21h
mov a,al
mov ah,9
lea dx,tb2
int 21h
and dl,al
;kiem tra co phai la chu cai ko
cmp a,'a'
jge la_chu
and al,0fh
or bl,al
jl no_chu
cmp a,'z'
jle la_chu
and al,0fh
jg no_chu
or bl,al
cmp a,'A'
jge la_chu
and al,0fh
jl no_chu
or bl,al
cmp a,'Z'
jle la_chu
and al,0fh
jg no_chu
or bl,al
no_chu:
;hien thi tb
mov ah,9
lea dx,tb3
int 21h
lea dx,tb2
int 21h
jmp lap
la_chu:
mov ah,9
lea dx,tb2
int 21h
mov ah,9
lea dx,tb4
int 21h
mov ah,2
mov dl,a
int 21h
jmp thoat
thoat:
;tro ve dos
mov ah,4ch
int 21h
main endp
end main