想知道是否有人可以解决我在NASM汇编程序中遇到的一个小问题;我对它很陌生,所以不了解很多原则......
无论如何,我调用一个函数,连接,它将寄存器rcx推入堆栈,执行连接代码,然后将rcx推出堆栈。在此之后,当它获得ret
语句时会发生分段错误。
这就是我的电话:
mov eax, first ;first operand
mov ebx, second ;second operand
mov ecx, result
call concatenate
我认为在函数调用中发生的事情是它以某种方式从堆栈中弹出返回地址?我不确定为什么会发生这种情况,但同样,这也就是我在这里的原因。
我的功能:
con:
push rcx ;just pushes one register right now to test
;code is here, nothing related to sp
pop rcx
ret
如果有人能为我清除这一点,我将非常感激。