我是NASM的初学者,但无法理解为什么这个NASM代码会产生两个不同的输出,尽管printf调用是一个接一个,并且之间没有任何改变:
SECTION .data
formatout: db "%d %d", 10, 0
SECTION .text
global main
extern printf
main:
mov ecx, 2
mov edx, 1
push edx
push ecx
push formatout
call printf
add esp, 12
push edx
push ecx
push formatout
call printf
add esp, 12
mov eax, 1
mov ebx, 0
int 0x80
谢谢!