这里有新人,我已经有了一个问题.
我正在调整Jeff Duntemann的汇编书中使用的示例代码,我想打印出存储在数据寄存器中的整数值到终端?
下面的代码是什么,它打印出好的字符串,在ECX中推送值好,但是当它达到以下代码时:
pop ecx
mov eax,4
mov ebx,1
mov edx, ecx
int 80h
Run Code Online (Sandbox Code Playgroud)
它不会在终端上显示edx的内容,不过我认为我告诉它使用mov eax,4等.
有人能给我任何"指针"(双关语意)吗?
代码(自2012年6月17日起修订):
SECTION .data
submessage: db "I am subtracting 5 from 10!", 10
msglen: equ $-submessage
ansmsg: db "Answer is:", 10
msglen2: equ $-ansmsg
EOL: db 10
SECTION .bss
msg: resd 2 ; reserve space for 2 dwords
SECTION .text
global _start
_start: nop
;Displays test on shell
mov eax,4 ;print to terminal
mov ebx,1
mov ecx, submessage
mov edx, msglen
int 80h …Run Code Online (Sandbox Code Playgroud)