8086汇编单字符输出实现四位压缩bcd码相减
data segment
a dw 9999h
b dw 1111h
d dw ?
e dw ?
f dw ?
g dw ?
h dw ?
i dw ?
data ends
code segment
start:
assume ds:data,cs:code
mov dx,data
mov ds,dx
mov cl,12
mov ax,a
mov bx,b
shr ax,cl
shr bx,cl
mov d,ax
mov e,bx
mov dl,byte ptr d
mov al,byte ptr e
sub dl,al
das
add dl,30h
mov ah,2
int 21h
mov cl,8
mov ax,a
mov bx,b
shr ax,cl
shr bx,cl
and ax,0fh
and bx,0fh
mov f,ax
mov g,bx
mov dl,byte ptr f
mov al,byte ptr g
sub dl,al
add dl,30h
mov ah,2
int 21h
mov cl,4
mov ax,a
mov bx,b
shr ax,cl
shr bx,cl
and ax,0fh
and bx,0fh
mov h,ax
mov i,bx
mov dl,byte ptr h
mov al,byte ptr i
sub dl,al
add dl,30h
mov ah,2
int 21h
mov dl,byte ptr a
mov al,byte ptr b
and dl,0fh
and al,0fh
sub dl,al
add dl,30h
mov ah,2
int 21h
jmp $
code ends
end start