📄 btod(5b).asm
字号:
sseg segment stack
db 256 dup (?)
sseg ends
dseg segment
outbuf db 7 dup(?)
dseg ends
cseg segment
assume cs:cseg,ds:dseg,ss:sseg
start:
mov ax,dseg
mov ds,ax
mov ax,123
mov bx,offset outbuf
call btod
mov dx,offset outbuf
mov ah,9
int 21h
mov ah,4ch
int 21h
;*************************************
;subroutine: btod
;function : change a unsigned binary(16b) to 5bit-decade
; end with '$',the decade is in outbuf
; outbuf is already in dseg
;entry parameter: ax=the binary
; bx=offset outbuf
;attention: the outcome decade has 5 bits!
btod proc
push ax
push cx
push dx
push si
mov si,5
mov cx,10
mov byte ptr [bx][si+1],'$'
btod1:
xor dx,dx
div cx
add dl,30h
dec si
mov [bx][si],dl
or si,si
jnz btod1
pop si
pop dx
pop cx
pop ax
ret
btod endp
cseg ends
end start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -