Chương trình sử dụng trình dịch emu8086.
Mã nguồn ASM:
.model small
.stack 100
.data
TBao DB 'Go vao 1 so he 2 (max 16 bit,'
DB 'CR de thoi):$'
.code
MAIN Proc
mov ax,@data
mov ds,ax
mov ah,9
lea dx,TBao
int 21h
mov cx,16
xor bx,bx ;xoa bx=0
mov ah,1 ;nhap 1 ky tu tu ban phim
TIEP:
int 21h ;Nhap vao thanh ghi AL.
cmp al,13
je THOIDOC ;AL=enter thi THOIDOC
sub al,30h ;-30h chuyen qua he 2.
rol bx,1 ;quay trai 1 bit de lay cho DOC tiep
or bl,al ;cong bit vua doc dc: al->bl
LOOP TIEP
THOIDOC:
mov ah,2
mov dl,13 ;ve dau dong
int 21h
mov ah,2
mov dl,10 ;enter
int 21h
mov cx,16 ;lap lai 16 lan in ra
mov ah,2
HIEN:
xor dl,dl ;xoa dl=0
rol bx,1 ;quay trai 1 bit, bit cao nhat dc dua vao CF
adc dl,30h ;cong co nho voi CF: dl=dl+30h+CF,chuyen qua ASCII
int 21h
LOOP HIEN
mov ah,4ch
int 21h
MAIN endp
end MAIN
0 nhận xét:
Đăng nhận xét