首页 > 代码库 > 汇编笔记二【32位通用寄存器 以及 常用汇编指令】
汇编笔记二【32位通用寄存器 以及 常用汇编指令】
一、32位通用寄存器(EAX,ECX,EDX,EBP,ESP,EBP,ESI,EDI)
二、十六位通用寄存器(AX,CX,DX,BX,SP,BP,SI,DI)
三、八位通用寄存器(AH,AL,CH,CL,DH,DL,BH,BL)
四、32位,16位,8位寄存器之间的关系
1.寄存器都是高位在前,低位在后。
2.都是包含关系,32位寄存器之中包含了16位寄存器,16位寄存器之中包含了8位寄存器。
关系如下:
五、32位的含义
一位只能放0或1,32位就意味着能放32个0或1。
所以32位最小取值为00000000000000000000000000000000=0x00000000
最大取值为11111111111111111111111111111111=0xFFFFFFFF
六、OD中EIP的含义:EIP指向了当前CPU运行到的指令地址。双击EIP的值,可以在CPU窗口中回到EIP指向的地址。
七、汇编常见指令及其用法
A、Mov指令
定义:拷贝源操作数到目标操作数
语法定义:Mov 目标操作数,源操作数
语法规定:
a、源操作数可以使立即数,通用寄存器,段寄存器,或者内存单元
b、目标操作数可以是通用寄存器,段寄存器,或者内存单元
c、操作数的宽度必须一样
d、源操作数和目标操作数不能同时为内存单元
B、ADD指令
定义:加法指令,两数相加
C、SUB指令
定义:减法指令,两数相减
D、AND指令
定义:与指令,两个数都是1,结果才是1
E、OR指令
定义:或指令,两个数只要有一个为1,结果就是1.
F、XOR指令
定义:异或指令,两个数不相同,结果才是1
G、NOT指令
定义:非指令,当被此运算符修饰时,每位取反
汇编笔记二【32位通用寄存器 以及 常用汇编指令】