如何将地址转换为字符串?(16 位汇编)
How to convert a address to a string ?(16 bit assembly)
如果我想将像“$”(代表当前地址)这样的地址转换为字符串以便将其显示在控制台上,我该怎么做?
我已经看到很多关于如何使用其他语言执行此操作的示例,但我还没有看到任何在汇编中执行此操作的示例。
这个 DOS 小程序会在屏幕上显示“$”的值。
输出将为“0100”。
ORG 256
mov bx,$
mov cx,0404h
.again:
rol bx,cl
mov dl,bl
and dl,0000_1111b
add dl,'0'
cmp dl,'9'
jbe .OK
add dl,7
.OK:
mov ah,02h
int 21h ;Print Character
dec ch
jnz .again
mov ax,4C00h
int 21h ;Terminate
如果我想将像“$”(代表当前地址)这样的地址转换为字符串以便将其显示在控制台上,我该怎么做?
我已经看到很多关于如何使用其他语言执行此操作的示例,但我还没有看到任何在汇编中执行此操作的示例。
这个 DOS 小程序会在屏幕上显示“$”的值。 输出将为“0100”。
ORG 256
mov bx,$
mov cx,0404h
.again:
rol bx,cl
mov dl,bl
and dl,0000_1111b
add dl,'0'
cmp dl,'9'
jbe .OK
add dl,7
.OK:
mov ah,02h
int 21h ;Print Character
dec ch
jnz .again
mov ax,4C00h
int 21h ;Terminate