1
我是这种语言的新手,并试图熟悉它。在这个例子中,我得到一个“错误的地址”错误,但是它有什么问题?尝试将十六进制转换为ascii时出现“错误寻址”错误
hextoasc proc near ; AX input, si point result storage address
push ax bx cx dx si di bp es
mov cx,00h
mov bx,0ah
hexloop1:
mov dx,0
div bx
add dl,'0'
push dx
inc cx
cmp ax, 0ah
jge hexloop1
add al, '0'
mov [si], al
hexloop2:
pop ax
inc si
mov [si], al
loop hexloop2
inc si
mov al, '$'
mov [si], al
pop es bp di si dx cx bx ax
ret
endp
这是我的错误:
太感谢你了!它现在的工作 – WorldOfEmre
一些汇编程序(如FASM)支持PUSH/POP作为多操作数伪操作,因此您偶尔可能会遇到此语法的示例。 –
还有PUSHA/POPA按顺序推动AX,CX,DX,BX,SP,BP,SI,DI,并以相反顺序弹出它们(因此它们被正确恢复) – Idloj