- 1、本文档共101页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 4.5.1 8086/8088指令系统 Intel早期的处理器产品从8086/8088发展到80486,每一代CPU都有不同的指令系统 80x86系列CPU的指令集是在8086/8088 CPU的指令系统上发展起来的 8086/8088 CPU的指令系统是80x86的基本指令集 80286、80386、80486的指令系统保留了基本指令集,并在此基础上又进行了扩充 扩充指令中的一部分是8086/8088基本指令的增强和一些专用指令,它们与基本指令集一起构成80x86系列微处理器的实模式指令集; 另一部分则是系统控制指令,它们对80286、80386、80486保护模式下的各种高级应用提供了控制能力 * * 8086/8088指令系统大体可以分为: 数据传送类指令 算术运算类指令 逻辑运算与移位类指令 串操作类指令 控制转移类指令 处理器控制类指令 * * 4.5.2 Pentium指令系统 奔腾(Pentium)微处理器是Intel公司1993年推出的一款32位微处理器,是继80486之后x86系列的下一代产品 Pentium外部有64位的数据总线以及36位的地址总线,同时也支持64位的物理地址空间 Pentium引入了超标量技术,内部具有可以并行工作的两条整数处理流水线,即“U”流水线和“V”流水线,可以在每个时钟周期执行2条指令 Pentium的浮点单元在80486的基础上进行了彻底的改进,包括对专用的加法、乘法和除法单元采用了新的算法 * * Pentium处理器的指令集是向上兼容的,因此它保留了8086/8088处理器的基本指令集 Pentium处理器与80x86指令集相比,新增了一些指令,主要有: 1. CPU标识指令(CPUID) 2. 寄存器与CR4之间的传送指令(MOV) 3. 八字节的比较并交换指令(CMPXCHG8B) * * 4.5.3 Pentium 4指令系统 相对于早期处理器的指令集,Pentium 4处理器新增的指令有以下几个: 1. 读时间标记计数器指令(RDTSC) 2. 读/写模式专用寄存器指令(RDMSR/ WRMSR) 3. 恢复系统管理模式指令(RSM) 4. 读性能监控计数器指令(RDPMC) 5. SSE2和SSE3扩展指令集 * * 4.5.4 Core 2指令系统 Core 2处理器最直接的改观便是彻底放弃了单核心处理器设计,全面转入“双核”乃至“多核”技术 Core 2处理器可以拥有双核乃至四核,支持64bit指令集 支持MMX、SSE、SSE2、SSE3、SSSE3、EM64T等指令集和技术 Core 2处理器采用独有的“指令融合”技术 即把两个特定的宏指令(x86指令)“融合”为一个微操作(μ-op) 指令融合的好处:使得每个周期内需要执行的指令数减少,提高处理能力 * * Core 2处理器相对于早期的Intel处理器指令集,新增了许多指令 1. 优化指令(ADDPS/HSUBPS/HADDPD/HSUBPD) 2. 数据处理指令(ADDSUBPS/ADDSUBPD/MOVSHDUP/MOVSLDUP/MOVDDUP) 3. 数据传输指令(FISTTP) 4. 特殊处理指令(LDDQU) * * 例如, INC 3A00H是一条加1指令,采用直接寻址方式,指令有效地址E=3A00H,表示将地址为3A00H的存储单元中的操作数加1 CAI演示 * * 3.间接寻址方式 间接寻址中指令地址码字段所指向的存储单元中存储的不是操作数本身,而是操作数的地址 间接寻址方式需要多次访问主存储器,既增加了指令的执行时间,又要占用主存储器单元 但是,这种寻址方式也为编程人员带来了较大的灵活性,实现起来也很简便 * * 而且,间接寻址指令可以访问较大的存储空间,从而扩大指令的寻址能力 由于地址码位数的限制,如果采用直接寻址方式,能够访问的存储空间十分有限 而间接寻址的地址码所指向的存储单元则有足够的位数,因此可以访问全部存储空间 * * 例如, INC (3A00H)是一条加1指令,采用间接寻址方式,指令有效地址E=(3A00H)=4000H,将地址为4000H的存储单元中的操作数加1 CAI演示 * * 4.寄存器寻址方式 寄存器寻址方式就是指令中的地址码是寄存器的编号,而不是操作数地址或操作数本身 寄存器的寻址方式也可以分为直接寻址和间接寻址,两者的区别在于: 前者的指令地址码给出寄存器编号,寄存器的内容就是操作数本身; 后者的指令地址码给出寄存器编号,寄存器的内容是操作数的地址 根据该地址访问主存后才能得到真正的操作数 寄存器寻址方式的优点 用寄存器来暂存操作数或其地址,无需访问主存,速度快 * * 例如, INC R1是一条加1指令,采用寄存器直接寻址方式,指令有
文档评论(0)