汇编 RETN 4是什么意思
RETN4是什么意思其一般都有什么特殊的含义的呢??很是苦恼,RETN听说等于一个段,那么RETN4什么意思的呢?...
RETN 4是什么意思其一般都有什么特殊的含义的呢??很是苦恼,RETN听说等于一个段, 那么RETN 4什么意思的呢?
展开
2个回答
2013-04-09
展开全部
retn表示return near,与之对应的是retf
n没有恢复段的过程,retf有个除了pop ip以外还会pop cs
不管是retn还是rentf,后面带的数字是在执行完ret指令以后sp增加的字节数
默认ret相当于ret 0
retn4 4 相当于pop ip,add sp, 4,也就是在返回的同时释放了参数使用的栈空间,windows api中常见的stdcall就是这种调用形式,所以省去了函数调用外的一条add指令
比如一般的,在调用函数时
push 123 ; 参数
call foo
add sp, 2 ; 或者pop ax
如果使用ret 2的话(ret等价于retn),最后一条add sp, 2或者pop ax就可以省掉了
n没有恢复段的过程,retf有个除了pop ip以外还会pop cs
不管是retn还是rentf,后面带的数字是在执行完ret指令以后sp增加的字节数
默认ret相当于ret 0
retn4 4 相当于pop ip,add sp, 4,也就是在返回的同时释放了参数使用的栈空间,windows api中常见的stdcall就是这种调用形式,所以省去了函数调用外的一条add指令
比如一般的,在调用函数时
push 123 ; 参数
call foo
add sp, 2 ; 或者pop ax
如果使用ret 2的话(ret等价于retn),最后一条add sp, 2或者pop ax就可以省掉了
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
STM32F103是一款高性能的嵌入式芯片,由意法半导体(STMicroelectronics)公司生产。它是STM32系列芯片之一,具有紧凑、低功耗、高性能等特点,被广泛应用于嵌入式系统中。STM32F103的主要特点包括:1. 集成了A...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询