社区
汇编语言
帖子详情
retn是什么意思?
justin_0009
2008-10-13 08:52:20
请教一下。最好给个例子。谢谢
...全文
2752
5
打赏
收藏
retn是什么意思?
请教一下。最好给个例子。谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gqhyz
2012-10-19
打赏
举报
回复
在16-bit Windows下 把代码分成data.code等段的内存模式不同
而Win32只有一种内存模式, 即FLAT模式, 没有64K的段大小限制
所有的Win32的应用程序运行在一个连续,平坦,巨大的4GB空间中
如果你运行在实模式下,那么ret需要考虑段间,还是段内的跳转
如果是在32位保护模式下.整个段空间为2的32次方,也就是4GB
不存在段间跳转.
retn 0x ;就足以满足要求了
youh2009
2009-10-17
打赏
举报
回复
支持cnzdgs的说法。
cnzdgs
2008-10-13
打赏
举报
回复
RETN是段内调用返回;RETF是段间调用返回。两者差别是段间返回要在堆栈中弹出cs。
zhizhi_2008
2008-10-13
打赏
举报
回复
应该是RET N吧?
就是子程序返回,然后把堆栈的N个字节弹出来。
其实就是执行ret后,将n加入sp中,实际上是从堆栈中弹出n个字节的数据,以冲掉在call指令前压入堆栈的参数。
相当于这样:
ret
add sp,n
BAYNPU
2008-10-13
打赏
举报
回复
ret i16:有参数段内返回:IP<--SS:[SP],SP<--SP+2
ret i16:有参数段间返回:IP<--SS:[SP],SP<--SP+2
CS<--SS:[SP],SP<--SP+2,SP+I16
主程序:
MOV AL,0FH
CALL ABC
...
ABC: ABC AND AL,OFH
OR AL,30H
CMP AL,39H
JBE ABC
ADD AL,7
ABC RET
尽管段内返回和段间返回具有相同的汇编助记符,但汇编程序能自动产生不同的指令代码,也可以分别采用RETN和RETF表示段内和段间返回。
什么是re
tn
指令
网上的一大堆回答把我给看晕了,太多答非所问的东西,很简单的东西都被弄得很复杂。经过一番查找,我在这里记录下来: re
tn
指令的含义 举例 re
tn
10 含义是: pop eip add esp, 10h 注意 re
tn
10 的 10 是十六进制的,它的十进制数是 16。 ...
汇编中re
tn
4的含义详析
re
tn
4 是个函数返回指令。 以前一直纠结这个re
tn
的寄存器操作顺序,手头正好在调试,详细跟了一下,豁然开朗,特分享。 先假设个环境: re
tn
4未执行时,ESP=0013feb8;EIP=5d1d8b97;而[0013feb8]=7c974a19 执行re
tn
4之后: 首先 EIP=[0013feb8] :即此时cpu先指挥EIP获取到栈中0013f
汇编指令re
tn
详解
汇编指令re
tn
用来结束当前过程返回到上一调用过程 当re
tn
指令执行时是将esp指向地址得值弹出到EIP指令指针寄存器 实际就是执行了一次pop eip 然后esp+4 紧接着开始执行eip指向的地址 rern指令执行前esp指向0041FC9C ,EIP指向002225c7 堆栈中0041fc9c保存的是00222714 re
tn
指令执行后ESP指向0041FCA0,EIP指向00222714 也就是说re
tn
指令执行后把esp指向地址保存的数据弹出到eip 然后esp+0x4 相当于执行了po
汇编指令re
tn
和re
tn
x的区别
的使用取决于函数调用约定和参数的传递方式。有些函数调用约定要求调用者清理栈上的参数,而有些则由被调用函数负责。因此,具体的使用方式取决于你的编程环境和约定。参考资料:https://blog.csdn.net/q873412892/article/details/121205493。指令用于从子过程(或函数)返回,但它们之间有一些区别。
汇编语言
21,500
社区成员
41,618
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章