




已阅读5页,还剩78页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
只翻译了三章,不当之处,请多包含比目鱼第一章.关于本手册 (ABOUT THIS MANUAL)61.1本手册包含的INTEL 64 AND IA-32处理器(INTEL 64 AND IA-32 PROCESSORS COVERED IN THIS MANUAL)61.2卷一概览:基础技术(OVERVIEW OF VOLUME 1: BASIC ARCHITECTURE)81.3符号习惯(NOTATIONAL CONVENTIONS)101.3.1位和字节序(Bit and Byte Order)101.3.2保留位和软件兼容性(Reserved Bits and Software Compatibility)指令操作(Instruction Operands)111.3.3十六进制数与二进制数(Hexadecimal and Binary Numbers)121.3.4段寻址(Segmented Addressing)121.3.5获取CPUID, CR, and MSR值的新语法(A New Syntax for CPUID, CR, and MSR Values)131.3.6异常(Exceptions)141.4相关文献(RELATED LITERATURE)14第二章.INTEL 64 AND IA-32架构 (INTEL 64 AND IA-32 ARCHITECTURES)172.1INTEL 64 AND IA-32 ARCHITECTURE历史简介(BRIEF HISTORY OF INTEL 64 AND IA-32 ARCHITECTURE)172.2更多特殊性能(MORE ON SPECIFIC ADVANCES)172.3历代INTEL 64 AND IA-32 处理器(INTEL 64 AND IA-32 PROCESSOR)17第三章.基础运行环境 (BASIC EXECUTION ENVIRONMENT)183.1操作模式(MODES OF OPERATION)183.1.1Intel 64架构(Intel 64 Architecture)183.2基础运行环境概览(OVERVIEW OF THE BASIC EXECUTION ENVIRONMENT)193.2.164位模式运行环境(64-Bit Mode Execution Environment)233.3内存组织(MEMORY ORGANIZATION)233.3.1IA-32的内存模型(IA-32 Memory Models)253.3.2页和虚拟内存(Paging and Virtual Memory)263.3.364位模式下内存组织(Memory Organization in 64-Bit Mode)263.3.4操作模式相对内存模型(Modes of Operation vs. Memory Model)273.3.532,16位地址和操作数32-Bit and 16-Bit Address and Operand Sizes273.3.6保护模式下物理地址扩展(Extended Physical Addressing in Protected Mode)283.3.764位模式下地址计算(Address Calculations in 64-Bit Mode)2规范寻址(Canonical Addressing)293.4程序执行基础寄存器(BASIC PROGRAM EXECUTION REGISTERS)293.4.1通用寄存器(General-Purpose Registers)3064位模式下通用寄存器(General-Purpose Registers in 64-Bit Mode)323.4.2段寄存器(Segment Registers)364位模式下段寄存器(Segment Registers in 64-Bit Mode)353.4.3标志寄存器(EFLAGS Register)3状态标志(Status Flags)3方向标志(DF Flag)3系统标志和I/O特权级别域(System Flags and IOPL Field)3 64位模式下标志寄存器(RFLAGS Register in 64-Bit Mode)403.5指令指针(INSTRUCTION POINTER)403.5.164位模式下指令指针(Instruction Pointer in 64-Bit Mode)413.6操作数和地址的大小属性(OPERAND-SIZE AND ADDRESS-SIZE ATTRIBUTES)413.6.164位模式下操作数和地址的大小(Operand Size and Address Size in 64-Bit Mode)423.7操作数寻址(OPERAND ADDRESSING)423.7.1立即数(Immediate Operands)433.7.2寄存器操作数(Register Operands)464位模式下寄存器操作数(Register Operands in 64-Bit Mode)443.7.3内存操作数(Memory Operands)464位模式下内存操作数(Memory Operands in 64-Bit Mode)463.7.4 Specifying a Segment Selector464位模式下分段(Segmentation in 64-Bit Mode)473.7.5指定偏移(Specifying an Offset)464位模式下指定偏移(Specifying an Offset in 64-Bit Mode)493.7.6汇编器和编译器寻址模式(Assembler and Compiler Addressing Modes)493.7.7I/O端口寻址(I/O Port Addressing)49第四章.数据类型 (DATA TYPES)514.1基本数据类型(FUNDAMENTAL DATA TYPES)514.1.1字,双字,四字,八字对齐(Alignment of Words, Doublewords, Quadwords, and Double Quadwords)524.2数学数据类型(NUMERIC DATA TYPES)524.2.1整型(Integers)5无符号整型(Unsigned Integers)5有符号整型(Signed Integers)554.2.2浮点数据类型(Floating-Point Data Types)564.3指针数据类型(POINTER DATA TYPES)584.3.164位模式下指针数据类型(Pointer Data Types in 64-Bit Mode)584.4位字段数据类型(BIT FIELD DATA TYPE)594.5串数据类型(STRING DATA TYPES)604.6封装的SIMD数据类型(PACKED SIMD DATA TYPES)604.6.1封装的64位SIMD数据类型(64-Bit SIMD Packed Data Types)604.6.2封装的128位SIMD数据类型(128-Bit Packed SIMD Data Types)604.7BCD和封装的BCD整数(BCD AND PACKED BCD INTEGERS)624.8实数和浮点数格式(REAL NUMBERS AND FLOATING-POINT FORMATS)634.8.1实数系(Real Number System)644.8.2浮点数格式(Floating-Point Format)6规范化数(Normalized Numbers)6增阶码(Biased Exponent)664.8.3实数和非规范化数验证码(Real Number and Non-number Encodings)6有符号零(Signed Zeros)6规范化的非规范化数(Normalized and Denormalized Finite Numbers)6有符号无限数(Signed Infinities)6NaNs(NaNs)6操作SNaNs和QNaNs(Operating on SNaNs and QNaNs)6在程序中使用SNaNs和QNaNs(Using SNaNs and QNaNs in Applications)7QNaN不定浮点(QNaN Floating-Point Indefinite)7 Half-Precision Floating-Point Operation714.8.4舍入(Rounding)7舍入控制域(Rounding Control (RC) Fields)7SSE与SSE2截断转换指令(Truncation with SSE and SSE2 Conversion Instructions)734.9浮点异常概述(OVERVIEW OF FLOATING-POINT EXCEPTIONS)734.9.1浮点异常条件(Floating-Point Exception Conditions)7无效操作异常(Invalid Operation Exception (#I)7非规范化数异常(Denormal Operand Exception (#D)7零除异常(Divide-By-Zero Exception (#Z)7数字上溢异常Numeric Overflow Exception (#O)7数字下溢异常(Numeric Underflow Exception (#U)7不准确结果异常(Inexact-Result (Precision) Exception (#P)784.9.2浮点异常的优先级(Floating-Point Exception Priority)794.9.3典型异常程序的功能(Typical Actions of a Floating-Point Exception Handler)80Figure 1-1. Bit and Byte Order10Figure 1-2. Syntax for CPUID, CR, and MSR Data Presentation13Figure 3-1. IA-32 Basic Execution Environment for Non-64-bit Modes20Figure 3-2. 64-Bit Mode Execution Environment24Figure 3-3. Three Memory Management Models25Figure 3-4. General System and Application Programming Registers30Figure 3-5. Alternate General-Purpose Register Names32Figure 3-6. Use of Segment Registers for Flat Memory Model34Figure 3-7. Use of Segment Registers in Segmented Memory Model35Figure 3-8. EFLAGS Register37Figure 3-9. Memory Operand Address45Figure 3-10. Memory Operand Address in 64-Bit Mode45Figure 3-11. Offset (or Effective Address) Computation47Figure 4-1. Fundamental Data Types51Figure 4-2. Bytes, Words, Doublewords, Quadwords, and Double Quadwords in Memory52Figure 4-3. Numeric Data Types54Figure 4-4. Pointer Data Types58Figure 4-5. Pointers in 64-Bit Mode59Figure 4-6. Bit Field Data Type60Figure 4-7. 64-Bit Packed SIMD Data Types61Figure 4-8. 128-Bit Packed SIMD Data Types62Figure 4-9. BCD Data Types62Figure 4-10. Binary Real Number System65Figure 4-11. Binary Floating-Point Format65Table 3-1. Instruction Pointer Sizes29Table 3-2. Addressable General Purpose Registers32Table 3-3. Effective Operand- and Address-Size Attributes41Table 3-4. Effective Operand and Address-Size Attributes in 64-Bit Mode42Table 3-5. Default Segment Selection Rules46Table 4-1. Signed Integer Encodings55Table 4-2. Length, Precision, and Range of Floating-Point Data Types56Table 4-3. Floating-Point Number and NaN Encodings57Table 4-4. Packed Decimal Integer Encodings64Table 4-5. Real and Floating-Point Number Notation66Figure 4-12. Real Numbers and NaNs67Table 4-6. Denormalization Process68Table 4-7. Rules for Handling NaNs70第一章.关于本手册(ABOUT THIS MANUAL)Intel 64 and IA-32架构软件开发者手册,卷一:基本架构(索引号253665)主要描述了Intel 64 and IA-32处理器的架构和软件运行环境。这套手册剩下的两卷是:The Intel 64 and IA-32 Architectures Software Developers Manual, Volumes 2A, 2B & 2C:指令集参考手册(索引号253666, 253667 and 326018)The Intel 64 and IA-32 Architectures Software Developers Manual, Volumes 3A, 3B & 3C:系统程序指南(索引号253668, 253669 and 326019)Intel 64 and IA-32 Architectures Software Developers Manual,卷一,主要描述了Intel 64 and IA-32处理器的架构和软件运行环境。Intel 64 and IA-32 Architectures Software Developers Manual,卷 2A, 2B & 2C,主要描述了处理器的指令集和操作码结构。这两卷给操作和应用程序开发者提供了应用程序。Intel 64 and IA-32 Architectures Software Developers Manual,卷 3A, 3B & 3C,主要描述了支持Intel 64 and IA-32处理器操作系统,这卷主要适合操作系统和BIOS设计者。Intel 64 and IA-32 Architectures Software Developers Manual,卷 3B,讲述了主机操作系统类软件的编程环境(原文:addresses the programming environment for classes of software that host operating systems.)1.1本手册包含的INTEL 64 AND IA-32处理器(INTEL 64 AND IA-32 PROCESSORS COVERED IN THIS MANUAL)本手册所包含的信息主要是关于最近的Intel 64 and IA-32处理器,它们包括:Pentium processorsP6 family processorsPentium 4 processorsPentium M processorsIntel Xeon processorsPentium D processorsPentium processor Extreme Editions64-bit Intel Xeon processorsIntel Core TM Duo processorIntel Core TM Solo processorDual-Core Intel Xeon processor LVIntel CoreTM2 Duo processorIntel CoreTM2 Quad processor Q6000 seriesIntel Xeon processor 3000, 3200 seriesIntel Xeon processor 5000 seriesIntel Xeon processor 5100, 5300 seriesIntel CoreTM2 Extreme processor X7000 and X6800 seriesIntel CoreTM2 Extreme processor QX6000 seriesIntel Xeon processor 7100 seriesIntel Pentium Dual-Core processorIntel Xeon processor 7200, 7300 seriesIntel Xeon processor 5200, 5400, 7400 seriesIntel CoreTM2 Extreme processor QX9000 and X9000 seriesIntel CoreTM2 Quad processor Q9000 seriesIntel CoreTM2 Duo processor E8000, T9000 seriesIntel Atom TM processor familyIntel Core TM i7 processorIntel Core TM i5 processorIntel Xeon processor E7-8800/4800/2800 product familiesIntel Xeon processor E5 familyIntel Xeon processor E3-1200 familyIntel Core TM i7-3930K processor2nd generation Intel Core TM i7-2xxx, Intel Core TM i5-2xxx, Intel Core TM i3-2xxx processor seriesIntel Xeon processor E3-1200 v2 product family3rd generation Intel Core TM processorsNext generation Intel Core TM processorsP6系列处理器是基于P6系列微技术的IA-32处理器。它们包括PentiumPro, Pentium II, Pentium III, and Pentium III Xeon processors。 此处略去1.2卷一概览:基础技术(OVERVIEW OF VOLUME 1: BASIC ARCHITECTURE)手册内容描述如下:Chapter 1 关于手册。为五卷Intel 64 and IA-32架构软件开发人员手册提供概览。它包括这本手册所用的计数标记符号和列出软件开发员和硬件设计员所感兴趣 的手册和文档。Chapter 2 Intel 64 and IA-32架构。介绍Intel 64 and IA-32架构以及基于该技术的Intel系列处理器。并概述这些处理器的基本特性和简要历史。Chapter 3 基础运行环境。介绍内存组织模式和描述应用程序中寄存器使用设置。Chapter 4 数据类型。描述处理器的数据类型和寻址模式;概述实数和浮点数格式和浮点数异常。Chapter 5 指令集一览。以不同技术组分别列出Intel 64 and IA-32指令集。Chapter 6 过程调用,中断,异常。描述过程堆栈和中断,异常程序调的用机制。Chapter 7 通用指令。描述在保护模式下,基本加载和储存,程序控制,算数和串等基础数据类型操作,通用寄存器、段寄存器,并描述系统指令。Chapter 8 x87 FPU。描述x87浮点单元,包括浮点寄存器和浮点类型。概述浮点指令集和处理器浮点异常条件。Chapter 9 Intel MMX技术。描述Intel MMX技术,包括MMX寄存器和数据类型;并给出MMX指令集。Chapter 10 Streaming SIMD Extensions (SSE)。描述SSE扩展,包括XMM寄存器,MXCSR寄存器和封装的单精度数据类型;并给出SSE指令集,和使用SSE扩展编写代码的原则。Chapter 11 Streaming SIMD Extensions 2 (SSE2)。描述SSE2扩展,包括XXM寄存器和封装的双精度浮点数据类型;并列出SSE2指令集,和使用SSE扩展编写代码的原则。这章还描述了SSE和SSE2指令所产生的SIMD浮点数异常。并给出具体支持SSE和SSE2的操作系统和应用程序代码的一般原则。Chapter 12 SSE3,SSSE3,SS4。提供SSE3指令集概览。以及SSE3,SSE4和使用这些扩展编写代码的原则。(原文:Supplemental SSE3, SSE4, and guidelines for writing code that accesses these extensions.)Chapter 13 AVX。概述Intel AVX指令集并给出使用AVX扩展的编写代码的原则。Chapter 14 Input/Output。描述处理器的I/O机制,包括I/O端口寻址,I/O指令,I/O保护机制。Chapter 15 处理器识别和特性判别。描述如何用处理器判别CPU类型和可用功能。Appendix A 标志相互影响。总结IA-32指令如何影响标志寄存器。Appendix B 标志条件代码。总结如何实现使用标志寄存器的标志(OF, CF, ZF, SF, and PF)进行条件跳转,条件移动和字节设置的条件代码指令。Appendix C 浮点数异常概览。总结由x87 FPU和SSE/SSE2/SSE3浮点指令引起的异常。Appendix D 编写x87 FPU异常句柄的原则。描述如何设计和编写MSDOS*兼容的异常,掌握FPU异常(包括软硬件配置和实例汇编代码)。该附录描述编写FPU异常句柄的通用技术。Appendix E 编写SIMD浮点数异常句柄的原则。给出编写由SSE/SSE2/SSE3指令引起异常的异常操作原则。1.3符号习惯(NOTATIONAL CONVENTIONS)这本手册使用特殊的数据格式标记,以表示指令,十六进制数,二进制数。方式如下。1.3.1位和字节序(Bit and Byte Order)Figure 1-1. Bit and Byte Order在内存中数据结构图表中,低地址在图表下;地址向上增长。位数从右到左编号。每个置位的值等于2的第几位数次幂。Intel 64 and IA-32 处理器使用低端字节序(little endian)。这表示每个字的字节从低有效字节开始编号。See Figure 1-1。1.3.2保留位和软件兼容性(Reserved Bits and Software Compatibility)在许多寄存器和描述符中,某些位被标记为保留位(reserved)。当位被标记为保留位,是为了日后让软件处理,即使还未知其功能。使用保留位不仅被视为不确定的而且是不可预测的。软件处理保留位时应遵守以下原则当测试寄存器的某些值时,不要依赖任何保留位。使用前应屏蔽他们。当要储存内存或寄存器时,不要依赖任何保留位。不要依靠保留位写入的任何信息当载入寄存器时,都应载入文档中声明过的保留位,或者载入先前从同一寄存器读取的值注意避免软件依赖Intel 64 and IA-32寄存器的保留位。依赖寄存器的保留位相当依赖了于一种不可测的方式。这是由处理器将来决定的。依赖保留位的软件可能会与将来的处理器不兼容。指令操作(Instruction Operands)当用符号来表示指令时,使用的是IA-32汇编语言的一个子集。在这个子集中,指令使用以下格式:标签:助记符 参数1,参数2,参数3其中:标签(label)是后面总跟着冒号的标识符助记符(mnemonic)是与指令代码有相同功能的保留字操作数参数(argument)1,2,3是可以选择的。这里可以有0到3个参数,这取决于操作代码。它们以字面值或数据项的标识符的形式出现。标识符可以是寄存器保留字也可以是在程序的其他部分声明过的被假定为数据的标志符。当在两个操作数出现在算数或逻辑指令中时,右边的参数是源参数,左边的参数是目标参数。例如:LOADREG: MOV EAX, SUBTOTAL本例中,LOADREG是一个标签。MOV是操作码标识符,EAX是目标操作数,而SUBTOTAL是原操作数。有些汇编语言两者的位置则相反。1.3.3十六进制数与二进制数(Hexadecimal and Binary Numbers)十六进制数(hexadecimal)用末尾为字符H的字符串表示(例如:0F82EH)。十六进制数数位用下列字符表示:0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, and F。二进制数(binary)用一系列1和0组成的字符串表示,有时后末尾跟着字符B(例如:1010B)。字符B使用在会混淆数字类型的情况下才使用。1.3.4段寻址(Segmented Addressing)处理器采用字节寻址方式。这意味处理器以有序字节的方式组织和使用内存。无论是存取一个或多个字节,处理器都用字节的地址定位一个或多个字节。可寻址的范围被称为地址空间(address space) 处理器也支持段寻址。在这种寻址形式下,一个程序或许有许多各自独立的地址空间,我们成为段(segments)。例如,一个程序有它的代码和堆栈在其各自的段中。代码寻址总是指向代码空间,堆栈寻址总指向堆栈空间。下列格式指向某段中的一个字节空间:段寄存器:字节地址例如,下列段寻址指定了一个字节地址指向DS寄存器所指段中的偏移为FF79H的地址:DS:FF79H下列段寻址指定了代码段中的一条指令。CS寄存器指向代码段,EIP寄存器包含某条指令的地址。CS:EIP1.3.5获取CPUID, CR, and MSR值的新语法(A New Syntax for CPUID, CR, and MSR Values)Figure 1-2. Syntax for CPUID, CR, and MSR Data Presentation通过使用CPUID指令,获得特征标志;通过检查控制寄存器(control register)的位和读取特殊模式寄存器(model-specific register),获得系统状态和信息。我们进一步说明该说明。See Figure 1-2。1.3.6异常(Exceptions)异常通常发生在指令产生异常的情况下。例如,除以0就会生成一个异常。然而,一些异常,像中断,有其他条件产生。一些异常会提供错误代码。一个错误代码带来了额外的错误的有关信息。下面是异常和错误代码的表示方式:#PF(fault code)这个例子表示页错误(page-fault)异常,此时错误代码叫做错误类型。在有些情况下,一些异常产生的错误代码不能产生一个准确的代码。这时,错误代码就是0,像下面的通用保护异常(general-protection exception):#GP(0)1.4相关文献(RELATED LITERATURE)关于Intel 64 and IA-32处理器的在线文献:/content/www/us/en/processors/architectures-software-developer-manuals.html.html一些在线观看的文档;有些需要在线订购。文献根据处理器和下列类型列出的:应用程序注意事项,数据表格,手册,文件,特定更新。See also:The data sheet for a particular Intel 64 or IA-32 processorThe specification update for a particular Intel 64 or IA-32 processorIntel C+ Compiler documentation and online help:/en-us/articles/intel-compilers/Intel Fortran Compiler documentation and online help:/en-us/articles/intel-compilers/Intel VTune Performance Analyzer documentation and online help:/cd/software/products/asmo-na/eng/index.htmIntel 64 and IA-32 Architectures Software Developers Manual (in three or five volumes):/content/www/us/en/processors/architectures-software-developer-manuals.html.htmlIntel 64 and IA-32 Architectures Optimization Reference Manual:/content/www/us/en/architecture-and-technology/64-ia-32-architectures-optimizationmanual.htmlIntel Processor Identification with the CPUID Instruction, AP-485:/Assets/PDF/appnote/241618.pdfIntel 64 Architecture x2APIC Specification:/content/www/us/en/architecture-and-technology/64-architecture-x2apic-specification.htmlIntel 64 Architecture Processor Topology Enumeration:/articles/eng/3887.htmIntel Trusted Execution Technology Measured Launched Environment Programming Guide:/content/www/us/en/software-developers/intel-txt-software-development-guide.htmlIntel SSE4 Programming Reference:/Link.aspx?id=1630&wapkw=intel sse4programming referenceDeveloping Multi-threaded Applications: A Platform Consistent Approach:/cd/00/00/05/15/51534_developing_multithreaded_applications.pdfUsing Spin-Loops on Intel Pentium 4 Processor and Intel Xeon Processor:/en-us/articles/ap949-using-spin-loops-on-intel-pentiumr-4-processor-and-intelxeonr-processor/Performance Monitoring Unit Sharing Guide/file/30388More relevant links are:Software network link:/isn/home/Developer centers:/cd/ids/developer/asmo-na/eng/dc/index.htmProcessor support general link:/support/processors/Software products and packages:/cd/software/products/asmo-na/eng/index.htmIntel 64 and IA-32 processor manuals (printed or PDF downloads):/content/www/us/en/processors/architectures-software-developer-manuals.html.htmlIntel Multi-Core Technology:/partner/multicoreIntel Hyper-Threading Technology (Intel HT Technology):/technology/platform-technology/hyper-threading/index.htm第二章.INTEL 64 AND IA-32架构(INTEL 64 AND IA-32 ARCHITECTURES)成指数增长的计算能力和拥有量使计算机成为商业和社会发展最重要的力量之一。作为世界上所有计算机计算能力的衡量标准Intel 64 and IA-32架构处理器一直处于这场革命的前沿和消费者首选处理器。2.1INTEL 64 AND IA-32 ARCHITECTURE历史简介(BRIEF HISTORY OF INTEL 64 AND IA-32 ARCHITECTURE)此处略去2.2更多特殊性能(MORE ON SPECIFIC ADVANCES)此处略去2.3历代INTEL 64 AND IA-32 处理器(INTEL 64 AND IA-32 PROCESSOR)此处略去第三章.基础运行环境(BASIC EXECUTION ENVIRONMENT)这章通过汇编程序,主要描述了Intel 64 and IA-32处理器的基础运行环境。它描述处理器如何执行指令;如何储存操作数据。主要包括:内存(地址空间),通用寄存器(general-purpose data Register),段寄存器(segment register),标志寄存器(flag register),指令指针寄存器(instruction pointer register)。3.1操作模式(MODES OF OPERATION)IA-32架构支持三种基本操作模式:保护模式(protected mode),实模式(real-address mode),系统管理模式(system management mode,SMM)。操作模式指处理器可用的指令和架构。保护模式这种模式是处理器的自然状态。在保护模式下处理器可以在多任务环境中直接运行实模式下运行的8086软件。尽管这种特性不是一种真正的操作模式,我们依然称这种特性为虚拟8086模式(virtual-8086 mode)。虚拟8086模式事实上是保护模式下任何程序都能利用一种特性。实模式这种模式实现了Intel处理器程序执行环境的扩展(比如切换保护模式或系统管理模式)。处理器在加电或重启后就处于该模式。系统管理模式这种模式给操作系统提供了一种透明机制的平台特定功能,比如电源管理和系统安全。当外部SMM中断引脚被激发或高级可编程中断控制器(APIC)收到一个系统管理中断(System Management Interrupt,SMI),处理器就会进入系统管理模式。在SMM模式下,储存当前运行的程序或任务上下文时,处理器会切换到独立的地址空间。代码透明地运行于SMM。从SMM返回时,处理器回到SMI产生前的状态。SMM从Intel386 SL and Intel486 SL处理器引入,并成为奔腾系列的标准IA-32特性。3.1.1Intel 64架构(Intel 64 Architecture)Intel 64 架构增加IA-32e模式。IA-32e有两种子模式。兼容模式(Compatibility mode,IA-32的子模式)兼容模式允许大部分旧有的16位或32位程序不经二次编写运行在64位操作系统。简单起见,兼容子模式指的就是IA-32架构下的兼容模式。兼容模式的运行环境将在3.2章节中详述。兼容模式支持所有64位模式和保护模式支持的特权级。运行在虚拟8086模式的传统程序或使用硬件任务管理的程序无法运行在兼容模式。兼容模式由操作系统基于代码段启动。这意味着一个64位操作系统可以让64位程序运行在64位模式,也可以让传统32位程序(没有重新编译成64位程序)运行在兼容模式。兼容模式类似于32位保护模式。程序仅可以访问开始的4GB的线性地址空间。兼容模式使用16位和32位的地址和操作数。但是在保护模式下可以允许程序使用物理地址扩展(Physical Address Extensions,PAE)访问大于4GB的物理内存。64位模式(64-bit mode,IA-32的子模式)这种模式64位允许操作系统运行于被编写访问64位线性地址空间的程序。简单起见,64位子模式指的就是IA-32架构下的64位模式。64位模式把通用寄存器SIMD扩展寄存器从八个扩展到十六个。通用寄存器的位宽扩展到64位。该模式引进了新的操作代码前缀(pref
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年内科学术论文考察答案及解析
- 2025年放射科CT检查常见异常结果解读考核答案及解析
- 2025年眼科常见眼病诊断与治疗技能竞赛答案及解析
- 2025年神经外科手术操作风险评估模拟测试卷答案及解析
- 2025年口腔颌面外科颌骨骨折急救处理模拟考试卷答案及解析
- 2025年口腔科口腔疾病常见治疗技术综合检测答案及解析
- 2025年内镜检查操作规范考试卷答案及解析
- 2025年病理生理学实验分析操作考核试卷答案及解析
- 外墙装饰施工方法及技术保证措施
- 2025年整形外科美容手术风险评估模拟测试答案及解析
- 村级财务业务知识培训课件
- 2025年特种设备检验人员资格考试(压力管道检验师GDS)历年参考题库含答案详解(5套)
- 2025年河南省公开遴选公务员考试(案例分析与对策性论文)历年参考题库含答案详解(5套)
- 2025年中药三基试题及答案大全
- 白内障囊外摘除联合青光眼人工晶体植入术后护理查房
- 药品停产管理办法
- 2025年《临床输血技术规范》
- 2025年江苏无锡离婚协议书
- 人员管理办法格式范本
- 减糖与健康口腔课件
- 北京员工待岗管理办法
评论
0/150
提交评论