郁金香初级班 5/17 15-20

目录:

16.call指令与ret指令的影响

17 18.x86环境 常见的六种参数调用约定传递与平栈

19.C,C++条件表达式,逻辑运算符与判断语句

20.-汇编指令test,cmp,jmp,jz,jnz

内容

16 .call指令与ret指令的影响

call指令拆解 call 0x123;

mov eip,0x123;

push 下一行指令的地址;

 

ret指令

lea esp,[esp+4]

mov eip,[esp-4]

 

17 x86下调用约定

 

 19.C,C++条件表达式,逻辑运算符与判断语句

认识了解简单的表达式
条件表达式
真值假值
if语句
if...else语句
逻辑运算符

20.汇编指令test,cmp,jmp,jz,jnz

TEST指令

指令格式:TEST  R/M,R/M/IMM

该指令在一定程序上和CMP指令时类似的,两个数值进行与操作,结果不保存,但是会改变相应标志位.

常见用法:用这个指令,可以确定某寄存器是否等于0。

不为0 -z变 0

为0 变1

 

 

 

4.cmp指令

 

指令格式:CMP  R/M,R/M/IMM

 

该指令是比较两个操作数,实际上,它相当于SUB指令,但是相减的结构并不保存到第一个操作数中。

 

只是根据相减的结果来改变零标志位的,当两个操作数相等的时候,零标志位置1。

 

cmp:算数处理指令,用于把一个寄存器的内容和另一个寄存器的内容或立即数进行减法比较,不存储结果,都会更改标志位:

 

jmp jz jnz 跳转

 

总结:内容很少 因为之前学习过

 

posted @ 2023-05-17 15:33  大橘|博客  阅读(11)  评论(0)    收藏  举报