https://blog.csdn.net/cyousui/article/details/8565219
2.RETN/RETF指令:
按照前面讲CALL指令举的那个例子,CALL指令是进入子程序的指令,而例子中所说的跳出子程序这一过程也需要2条指令,它们是RETN/RETF。
RETN/RETF是跳出子程序的指令,被称为返回指令。RETN指令用于从段内转移CALL进的子程序中返回;RETF指令用于从段间转移CALL进的子程序中返回。
RETN/RETF在反汇编代码中呈现的形式如下:
RETN
RETN 操作数1
RETF
RETF 操作数1
RETN等价于一条指令:POP eip
RETF等价于两条指令:
POP eip
POP CS
而带有操作数的RETN/RETF指令则是在POP之后,执行ESP=ESP+操作数1。
2.RETN/RETF指令:
按照前面讲CALL指令举的那个例子,CALL指令是进入子程序的指令,而例子中所说的跳出子程序这一过程也需要2条指令,它们是RETN/RETF。
RETN/RETF是跳出子程序的指令,被称为返回指令。RETN指令用于从段内转移CALL进的子程序中返回;RETF指令用于从段间转移CALL进的子程序中返回。
RETN/RETF在反汇编代码中呈现的形式如下:
RETN
RETN 操作数1
RETF
RETF 操作数1
RETN等价于一条指令:POP eip
RETF等价于两条指令:
POP eip
POP CS
而带有操作数的RETN/RETF指令则是在POP之后,执行ESP=ESP+操作数1。
没有评论:
发表评论