80x86 架构

80x86 16bit架构中用了14个寄存器:   ┏ 指令指针寄存器

AX  BX  CX  DX  SI  DI  SP  BP  IP  CS  SS  DS  ES  PSW/FLAG

┗━━━━━━━━━━━━━━━━━━━┛    ┗━━━━━┛    ┗━━━━━━━┛              ┗━━━━━━━━━━━━━━━━━━━┛      状态寄存器

       通用寄存器    变址寄存器   指针寄存器                 段寄存器          状态寄存器

 

AX  (AH AL)累加寄存器 

             以下指令使用该寄存器:DIV  MUL  XLAT

BX  (BH BL)基地址寄存器

             该寄存器可用于内存寻址

             以下指令使用该寄存器:XLAT

CX  (CH CL)计数器寄存器

             以下指令使用该寄存器:LOOP

DX  (DH DL)数据寄存器

             以下指令使用该寄存器:DIV(32)  MUL(32)  IDIV(32)  IMUL(32)  XLAT

SI  源变址寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:MOVS  STOS  LODS  CMPS  SCAS

DI  目的变址寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:MOVS  STOS  LODS  CMPS  SCAS

SP  堆栈指针寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:PUSH/POP  PUSHF/POPF  PUSHA/POPA  CALL/RET

BP  基指针寄存器

IP  指令指针寄存器

             以下指令使用该寄存器:CALL/RET

CS  代码段寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:CALL/RET

DS  数据段寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:MOVS  STOS  LODS  CMPS  SCAS

SS  堆栈段寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:MOVS  STOS  LODS  CMPS  SCAS

ES  附加段寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:MOVS  STOS  LODS  CMPS  SCAS

PSW/FLAG  状态寄存器

             以下指令影响该寄存器:LAHF/SAHF   PUSHF/POPF  ADD/SUB  ADC/SBB  INC/DEC  NEG  CMP  MUL  DIV  IMUL  IDIL  AND/OR/XOR/TEST  SHL/SAR  SHL/SAR  

以下指令影响 OF溢出标志:INC/DEC  ADD/SUB  ADC/SBB  NEG  CMP  MUL  IMUL

以下指令影响 SF符号标志INC/DEC  ADD/SUB  ADC/SBB  NEG  CMP

以下指令影响 ZF零标志:INC/DEC  ADD/SUB  ADC/SBB  NEG  CMP

以下指令影响 CF进位/借位标志:MUL  IMUL

以下指令影响 AF辅助进位标志:INC/DEC  ADD/SUB  ADC/SBB  NEG  CMP

以下指令影响 PF奇偶标志INC/DEC  ADD/SUB  ADC/SBB  NEG  CMP

以下指令影响 整个标志寄存器:LAHF  POPF  DIV  IDIV  XADD

80x86 32bit架构中用了16个寄存器:

EAX  EBX  ECX  EDX  ESI  EDI  ESP  EBP  EIP  CS  SS  DS  ES  FS  GS  EFLAG

┗━━━━━━━━━━━━━━━━━━━━━━━┛  ┗━━━━━━━━┛  ┗━━━━━━━━━━┛             ┗━━━━━━━━━━━━━━━━━━━━━━━━━━┛   状态寄存器

       通用寄存器         变址寄存器  指针寄存器                             段寄存器 

各寄存器的作用与16位差不多

EAX  (AH AL)累加寄存器 

             以下指令使用该寄存器:DIV  MUL  XLAT

EBX  (BH BL)基地址寄存器

             该寄存器可用于内存寻址

             以下指令使用该寄存器:XLAT

ECX  (CH CL)计数器寄存器

             以下指令使用该寄存器:LOOP

EDX  (DH DL)数据寄存器

             以下指令使用该寄存器:DIV(32)  MUL(32)  IDIV(32)  IMUL(32)  XLAT

ESI  源变址寄存器

             该寄存器用于内存寻址

             以下指令使用该寄存器:MOVS  STOS  LODS  CMPS  SCAS

EDI  目的变址寄存器

             该寄存器用于内存寻址

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值