- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 2012 * 华东师范大学计算机科学技术系 发展大事记 高端的RISC处理器早已进入64位时代,Intel和AMD都开发了x86兼容的64位处理器,如: Intel的安腾(Itanium), 主流市场已开始跨入64位。 Pentium 4所采用的NetBurst可能是Intel推出的最后一款IA-32处理器架构,肩负着谱写出IA-32最后的辉煌的使命。 Intel将Pentium 4的处理器架构取名为NetBurst,Pentium 4在开发过程中所瞄准的目标就是让最终用户在运行其现有的应用软件时能感到有较大的性能提升,并特别考虑了处理器在Internet、图像、视频流、语音、3D图形、多媒体和多任务等方面的应用背景。同时着眼于在未来几年中为处理器不断提高工作频率和性能留有发展空间。 2012 * 华东师范大学计算机科学技术系 2.8 实例:IA-32指令 三、32位指令子集(386) IA-32寄存器 80386寄存器组: P86图2-40 · A:8位 AX:16位 EAX:32位 · 指令操作类型:图2-41 与MIPS比较: · IA-32为8个通用寄存器,MIPS是它的四倍; · IA-32算术和逻辑指令必须有一个操作数既是源又 是目的, MIPS源和目的可取不同的寄存器 · 允许一个操作数来自存储器, MIPS则均为寄存器 2012 * 华东师范大学计算机科学技术系 三、32位指令子集 2. 数据寻址模式 支持七种数据存储器寻址模式,偏移量可以是8位或32位 在不同的寻址模式中,寄存器使用有一定的限制: 模式 说明 寄存器限制 寄存器间接寻址 E=(R) 不能用ESP,EBP 基址寻址 E=(Rx)+偏移量 同上 基址比例寻址 E=(Rx)+2比例×数组下标 基址:任意GRP 下标:不能用ESP 基址比例及偏移量寻址 E=(Rx)+2比例×数组下标 +偏移量 基址:任意GRP 下标:不能用ESP 寄存器间接寻址:指令中的形式地址R是操作数地址的指示器 即:E=(R) S =(R)=((R)) 比例 1:16位数据;2:32位数据;3:64位数据 R 操作数 OP S … … 内存 指令寄存器 寄存器 寄存器R 操作数地址 基址寻址: 偏移量 … 操作数 OP S … 内存 指令寄存器 (Rx) + 基址寄存器Rx 寄存器 与之等价的MIPS指令: 等价的MIPS指令 lw $s0,0($s1) ;(($s1))→$s0 lw $s0,100($s1) ;(($s1)+100)→$s0 mult $t0,$s2,4 ;($s2)×4→$t0 add $t0,$t0,$s1 ;($t0)+($s1)→$t0 Lw $s0,0($t0) ;(($s2)×4+($s1))→$s0 mult $t0,$s2,4 ;($s2)×4→$t0 add $t0,$t0,$s1 ;($t0)+($s1)→$t0 Lw $s0,100($t0) ;(($s2)×4+($s1)+100)→$s0 100为偏移量,小于16位 ($s2)为数组下标, $s1为基址寄存器 ($s2)为数组下标, $s1为基址寄存器 100为偏移量(小于16位) · 无论是实地址模式还是保护模式,段基地址的获取方式是固定的 · 各种寻址方式得到的有效地址,都只是段内偏移,只有加上段基 址地址后才能得到物理地址 2012 * 华东师范大学计算机科学技术系 三、32位指令子集 3.IA-32整数操作 有三种数据长度:8位、16位、32位 · 可设置默认值,默认16位或32位 · 忽略默认值,由指令前缀定义 386定义4种前缀 四种整数操作类型: ① 数据传送指令 包括:move,push,pop ② 算术和逻辑运算指令 包括:判断,整数和小数运算 ③ 控制指令 包括:条件和无条件转移,调用和返回 ④ 字符串指令 包括:字符串传送和比较指令 IA-32典型指令及功能: P88图2-43
原创力文档


文档评论(0)