1.专用寄存器
1): IP(instruction pointer)指令指针寄存器,用来存放代码段中的偏移地址。
2):SP 堆栈指针寄存器,用来存放栈顶的偏移地址
3):Flags 标志寄存器,又称状态寄存器(program status word;PSW)
(1) : OF (overflow flag)溢出标志:在运算过程中如果操作数超出了机器表示的范围称为溢出,此时OF位置1,否则置0
(2):SF (sign flag)符号标志,记录运算结果的符号,结果为负时置1 否则置0
(3):ZF (zero flag)零标志,运算结果为0时ZF置1,否则置0
(4) CF (carry flag) 进位标志,
2:80386寄存器之间默认组合
cs : IP
SS : ESP /EBP BP栈帧 SP 栈顶 SS:栈底
DS :EAX,EBX,ECX,EDX,EDI,ESI,一个8位或32位数
ES: EDI (用于串指令)
3:AX(accumulator)作为累计器用,所以它是算数运算的主要寄存器。
(1) 在乘除等指令中指定用来存放操作数
(2)I/O指令中使用这一寄存器与外部设备传送信息
BX (base)
(1)作为通用寄存器使用
(2) 在计算存储器地址时,经常用作基址寄存器
CX(count)
(1) 通用寄存器
(2)常用来保存计数值,如在移位指令,循环指令,和串操作指令中用作隐含的计数器
DX (data)
(1)作为通用寄存器使用,
(2)一般在作双字长运算时把 DX和AX组合在一起存放一个双字长度,DX用来存放高字位
(3)对某些I/O操作,DX可用来存放I/O的端口地址