目录
CPU寄存器
x86-64 Linux System V ABI
| 寄存器 |
用途 |
调用约定 |
%rax |
返回值 |
Caller-saved |
%rbx |
基址寄存器 |
Callee-saved |
%rcx |
传递参数 |
Caller-saved |
%rdx |
传递参数 |
Caller-saved |
%rsi |
传递参数 |
Caller-saved |
%rdi |
传递参数 |
Caller-saved |
%rsp |
栈指针 |
Callee-saved |
%rbp |
帧指针 |
Callee-saved |
%r8 |
传递参数 |
Caller-saved |
%r9 |
传递参数 |
Caller-saved |
%r10 |
临时寄存器 |
Caller-saved |
%r11 |
临时寄存器 |
Caller-saved |
%r12 - %r15 |
被调用者保存寄存器 |
Callee-saved |
|
|
|
%rip |
指令指针 |
|
%rflags |
标志寄存器 |
|
Flags 标志位
| VS显示名称 |
标志位 |
全称 |
为1时表明... |
用户态可用 |
| OV |
OF |
Overflow Flag |
有符号数运算结果溢出 |
√ |
| UP |
DF |
Direction Flag |
字符串指令的处理方向递减 |
√ |
| EI |
IF |
Interrupt Flag |
允许外部中断 |
|
| PL |
SF |
Sign Flag |
结果为负数 |
√ |
| ZR |
ZF |
Zero Flag |
结果为零 |
√ |
| AC |
AF |
Auxiliary carry Flag |
(辅助进位) |
√ |
| PE |
PF |
Parity Flag |
结果的二进制表示中1的个数为偶数 |
√ |
| CY |
CF |
Carry Flag |
无符号数运算结果溢出 |
√ |