在学习 x64 汇编时,我正在尝试使用 add 方法来添加两个整数并使用汇编返回整数。我有 x86 的工作代码,我试图转换为 x64
只是我将寄存器的名称更改为 x64 的名称,并且生成的目标文件没有错误,但是当我在 C 函数中使用它时,我总是得到 sum = 0。
我认为参数位置存在问题,并且我没有找到解决此类问题的良好文档。
section .text
global addi
addi:
push rbp
mov rbp, rsp
mov rax,[rbp+12]
mov rdx,[rbp+8]
add rax, rdx
pop rbp
ret