我目前正在开始使用 NASM,并想知道如何使用 NASM 以十六进制输出寄存器的内容。我可以输出 eax 的内容
section .bss
reg_buf: resb 4
.
.
.
print_register:
mov [reg_buf], eax
mov eax, SYS_WRITE
mov ebx, SYS_OUT
mov ecx, reg_buf
mov edx, 4
int 80h
ret
假设 eax 包含 0x44444444 那么输出将是“DDDD”。显然,每对“44”都被解释为“D”。我的 ASCII 表批准了这一点。
但是如何让我的程序输出实际的寄存器内容(0x44444444)?