80x86汇编6-jCC

悠悠 2022-05-11 00:24 317阅读 0赞

CMP指令:
指令格式:CMP R/M,R/M/IMM
该指令是比较两个操作数,实际上它相对于SUB指令,但是相减的结构并不保存到第一个操作数中,只是根据相减的结果来改变零标志位,两个操作数相等的时候,零标志位1

  1. MOV EAX,100
  2. MOV ECX,100
  3. CMP EAX,ECX //Z位为1
  4. MOV EAX,100
  5. MOV ECX,200
  6. CMP EAX,ECX //Z位为0
  7. CMP AX,WORD PTR DS:[405000]
  8. CMP AL,BYTE PTR DS:[405000]
  9. CMP EAX,DWORD PTR DS:[405000]

TEST指令:
指令格式:TEST R/M,R/M/IMM
该指令在一定程序上和CMP指令时类似的,两个数值进行与操作,结果不保存,但是会改变相应标志位.
常见用法:用这个指令,可以确定某寄存器是否等于0。

  1. TEST EAX,EAX //如果EAX为空,则Z位为1

在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,317人围观)

还没有评论,来说两句吧...

相关阅读

    相关 80x86汇编6-jCC

    CMP指令: 指令格式:CMP R/M,R/M/IMM 该指令是比较两个操作数,实际上它相对于SUB指令,但是相减的结构并不保存到第一个操作数中,只是根据相减的结果来改

    相关 80x86汇编4-内存堆栈

    假设我们需要一块内存,有如下的要求: 1、主要用于临时存储一些数据,如果数量很少就放到寄存器中 2、能够记录存了多少数据 2、能够记录存了多少数据 ![在这里插入

    相关 80x86汇编2-数据宽度&逻辑运算

    数据宽度 1. 数学上的数字,是没有大小限制的,可以无限的大。但在计算机中,由于受硬件的制约,数据都是有长度限制的(我们称为数据宽度),超过最多宽度的数据会被丢弃 2.