常用的汇编指令

一、一般指令

MOV(内存存内容)、ADD(加运算)、SUB(减运算)、and(与运算)、OR(或运算)、XOR(异或运算)、NOT(非运算)

NOT运算要说明一下,后面只能跟内存或寄存器,不能跟立即数。

以上指令有一个要注意的点,就是不能内存到内存的运算。

二、特殊的指令

1.MOVS指令:移动数据 内存-内存

常用的汇编指令_第1张图片

使用MOVS一般情况下就结合ESI和EDI一起使用,EDI、ESI可以有特别的用途,一般EDI、ESI内部存的是内存地址。主要用于内存中的值的复制。  

标志寄存器:EFL 00000246 每一个二进制位代表含义不同

例如:00000246 即 0000 0000 0000 0000 0000 0010 0100 0110 其中从右往左第十位为0,代表者EDI和ESI每复制完数值内存要正向进位,为1代表内存地址要逆向进位。

常用的汇编指令_第2张图片

 也就是这个D。

2.STOS指令

常用的汇编指令_第3张图片

 就是讲Al/AX/EAX的值存储到EDI指定内存中,复制过去后,内存地址也会跟着前进。

3.REP指令

根据计数寄存器(ECX)中指定的次数重复执行字符串指令(次数为16进制)

例如:MOV ECX, 10          REP MOVSD     就是执行MOVSD16次。

你可能感兴趣的:(汇编)