itoa.asm
comment *
MASM32 SDK
ml /c /AT /Fl itoa.asm
link16 /t itoa;
*
.186
.model tiny
.code
org 0100h
main proc
mov di, offset buf
mov ax, 0f0a9h
call itoa4
inc di
mov al, 5ch
call itoa2
mov ah, 09h
mov dx, offset buf
int 21h
mov ax, 4c00h
int 21h
main endp
itoa2 proc
mov cx, 2
@@loop:
rol al, 4
push ax
and al, 0fh
cmp al, 0ah
sbb al, 69h
das
stosb
pop ax
loop @@loop
ret
itoa2 endp
itoa4 proc
mov cx, 4
@@loop:
rol ax, 4
push ax
and al, 0fh
cmp al, 0ah
sbb al, 69h
das
stosb
pop ax
loop @@loop
ret
itoa4 endp
buf db 'xxxx:xx', 0dh, 0ah, '$'
end main
別バージョン
itoa4.asm
comment *
MASM32 SDK
ml /c /AT /Fl itoa4.asm
link16 /t itoa4;
*
.186
.model tiny
.code
org 0100h
main proc
mov di, offset buf
mov ax, 09afh
call itoa4
mov ah, 09h
mov dx, offset buf
int 21h
mov ax, 4c00h
int 21h
main endp
itoa4 proc
mov cx, 4
@@loop:
rol ax, 4
push ax
mov bl, al
and bx, 000fh
mov al, hexstr[bx]
stosb
pop ax
loop @@loop
ret
itoa4 endp
hexstr db '0123456789ABCDEF'
buf db 'xxxx', 0dh, 0ah, '$'
end main
最終更新:2018年08月18日 08:05