Intel软件开发者手册

IA-32基础执行环境

  • 寻址空间——线性地址空间4GB(2^32 Bytes)。物理地址空间64GB(2^36 Bytes)。
  • 基础寄存器——8个通用寄存器,6个段寄存器,EFLAGS寄存器,EIP寄存器。这些寄存器实现基本的整型算数运算、处理程序流控制、操作bit和byte字符串、内存寻址。
  • x87 FPU寄存器——8个x87 FPU数据寄存器,控制寄存器,状态寄存器,IP寄存器,operand(data)指针寄存器,标记寄存器,opcode寄存器。这些寄存器实现对单精度、双精度、扩展双精度、word整型、doubleword整型、quadword整型、BCD值得操作。
  • MMX寄存器——8个MMX寄存器。实现64位的字节、字、双字、四字整型的SIMD。
  • XMM寄存器——8个XMM寄存器和MXCSR寄存器。实现128位的单精度、双精度浮点SIMD操作和128位的字节、字、双字、四字整型操作。
  • YMM寄存器——YMM数据寄存器。支持256位的单精度、双精度、字节、字、双字、四字SIMD操作。
  • Bounds寄存器——BND0-BND3寄存器存储内存缓冲区的上下边界(每个64位)。支持Intel MPX指令的执行。
  • BNDCFGU和BNDSTATUS——BNDCFGU配置边界检查时用户模式的MPX操作。BNDSTATUS提供由MPX产生的#BR附加信息。
  • 栈——用于支持procedure和subroutine之间的调用以及参数传递。栈和栈管理资源属于执行环境。栈位于内存中,因此没有在下图中画出。

图:

jietu20180829-193948-2x