最近看汇编语言,顺便整理一下学了的指令以及寄存器,后面会逐步整理整理完善
寄存器(register)
通用寄存器(General Purpose Registers,8个)
通用寄存器是一种通用型寄存器,用于传送和暂存数据,也可以参与算术逻辑运算,并保存运算结果。
| 寄存器 | 功能 | |
|---|---|---|
| 16位 | 32位 | |
| AX | EAX | 累加器 |
| BX | EBX | sdfa |
| CX | ECX | |
| DX | EDX | |
| EBP | ||
| ESP | ||
| ESI | ||
| EDI | ||
段寄存器(Segment Registers,16位,6个)
| 寄存器 | 功能 |
|---|---|
| CS | 代码段寄存器 |
| DS | 数据段寄存器 |
| SS | 栈段寄存器 |
| ES | 附加(数据)段寄存器 |
| FS | 数据段寄存器 |
| GS | 数据段寄存器 |
程序状态与控制寄存器(Program Status and Control Registers,32位,1个)
EFLAGS:标志位寄存器
EFLAGS是32位的寄存器,该寄存器的每位都有意义,每位的值为0或1代表On/Off或True/False,其中有些位由系统直接设定,有些位则 根据程序指令的执行结果来设定
指令指针寄存器(Instruction Pointer,32位,1个)
指令
| 指令(instruction) | 功能 |
|---|---|
更多内容请参考Intel开发者手册:
https://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf