diff --git a/Intel 手册中文版/卷一:基本架构.md b/Intel 手册中文版/卷一:基本架构.md index f392322..16fa42d 100644 --- a/Intel 手册中文版/卷一:基本架构.md +++ b/Intel 手册中文版/卷一:基本架构.md @@ -275,11 +275,26 @@ CS , DS , SS 和 ES 这四个段寄存器与 Intel 8086 and Intel 286 处理器 @翻译人:符宇舟Alex -#### 4.3 POINTER DATA TYPES +## 4.3 POINTER DATA TYPES @翻译人:Colinxu2020 +指针是指向内存中一个位置的地址。 +在非64位模式下,该架构定义了两种类型的指针:近指针和远指针。一个近 +指针是一个段内的32位(或16位)偏移(也称为有效地址)。 +近指针用于平坦的内存模型中的所有内存引用,或者用于分段内存模型中的引用,其中被访问段的基址是隐含的。 +远指针是一个逻辑地址,由一个16位段选择器和一个32位(或16位)偏移量组成。远指针用于分段内存模型中的内存引用,其中被访问段的身份必须明确指定。 +带有32位偏移量的近指针和远指针如图4-4所示 + 图4-4 +### 4.3.1 Pointer Data Types in 64-Bit Mode +在64位模式(IA-32e模式的一个子模式)中,一个近指针是64位。这等同于一个有效的地址。 +64位模式下的远指针可以是三种形式之一。 +- 16位段选择器,16位偏移,如果操作数是32位的话 +- 16位段选择器,32位偏移,如果操作数是32位的话 +- 如果操作数为64位,16位段选择器,64位偏移量 +见图4-5 + 图4-5 + # 第五章 Instruction Set Summary -#### 5. # 第六章 Procedure Calls, Interrupts, and Exceptions