📄 7.asm
字号:
decidec segment
assume cs:decidec
main proc far
repeat: call decibin
call crlf
call binidec
call crlf
jmp repeat
main endp
decibin proc near
mov bx,0 ;
newchar:
mov ah,1
int 21h
sub al,30h
jl exit
cmp al,9d
jg exit
cbw ;byte in AL to word AX
xchg ax,bx
mov cx,10d
mul cx
xchg ax,bx
;Add digit in AX to nnumber in BX
add bx,ax
jmp newchar
exit:
ret
decibin endp ;end of decbin proc
binidec proc near
;Subbroutine to convert binary number in BX
; to decimal on console screen
mov cx,10000d
call dec_div
mov cx,1000d
call dec_div
mov cx,100d
call dec_div
mov cx,10d
call dec_div
mov cx,1d
call dec_div
ret
;*********************************
dec_div proc near
mov ax,bx
mov dx,0
div cx
mov bx,dx
mov dl,al
;print the contents of DL on screen
add dl,30h
mov ah,2
int 21h
ret
dec_div endp
binidec endp
;*************************************
crlf proc near
mov dl,0dh
mov ah,2
int 21h
mov dl,0ah
mov ah,2
int 21h
ret
crlf endp
decidec ends
end main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -