ret 指令的用法有多少?

请问 ret 指令的作用是什么?请大家赐教!
[22 byte] By [dreamsfly-酷型僧] at [2008-5-24]
# 1
ret指令一般是用来在子程序中返回主程序。它就是从stack中弹出16位的操作数或者32位的操作数到IP或CS:IP,ret指令表面上是用做返回之用,实际上它也可以代替call指令。因为汇编程序并不象高级语言的编译器一样检查call与ret配对,只要先将转移地址入栈,然后ret一下就可以修改IP或同时修改CS:IP,起到调用子程序的功能。
# 2
ret

ret val
其中:val是一个无符号的偶数常量
ret指令需要进行堆栈操作,当然是它自动的,不用程序员的,在call指令调用子程序时,把断点存放在堆栈中,当子程序结束时,把堆栈中的断点恢复到IP(或和CS),当使用val时,堆栈栈顶指针SP+val:)
ddszhan-高等数学 at 2007-10-23 > top of Msdn China Tech,其他开发语言,汇编语言...
# 3
汇编指令都特别灵活,就看你发现了
可以函数返回,当jmp。。。
vcshcn-黑天的猩猩 at 2007-10-23 > top of Msdn China Tech,其他开发语言,汇编语言...