汇编语言408

操作码后边跟着的以X为结尾或者以E开头,说明是寄存器。

E表示取出寄存器中的32bit全部取出来,没有E是取出最后16bit

[ ]里是主存的地址,访问主存。
请添加图片描述
ptr前边指明内存读写的单位。2是指令中指明的一个常量,也可以来自于寄存器,主存等。

move用于将一个数据从源地址传送到目标地址
请添加图片描述
移位运算符是先指明了要移位的寄存器,然后在指明移动位数。

请添加图片描述
cmp指令对象一个是内存里变量,一个是1;是从内存里取出4B大小的变量与1进行对比,这个变量实际上就是n。

以 j 开头的是转移类的指令,有条件转移到f1+32h这个地址,执行对应地址下的代码。

通过cmp的结果,判断ZA、CF等标志位得到判断结果,条件指令进行判断
请添加图片描述
push eax 压栈保存寄存器里的内容,包括参数、函数返回地址之类的

call指令是函数调用指令。用于满足条件时,递归调用自身,跳回到函数第一句进行指令。

ret表示return指令请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值