计算机系统结构第2章解读.ppt

  1. 1、本文档共207页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机系统结构 第二章 指令系统 第2章 指 令 系 统 2.1 数据表示 2.1.1 数据表示与数据类型 2.1.2 浮点数的表示方法 2.1.3 浮点数格式设计 1. 浮点数格式设计的主要问题 在表示浮点数的6个参数中,只有尾数基值rm、尾数长度p和阶码长度q与表数范围、表数精度和表数效率有关 在字长确定的情况下,如何选择尾数基值rm, 使表数范围最大、表数精度和表数效率最高 2.1.4 浮点数的舍入处理 2.1.5 警戒位的设置方法 2.1.6 自定义数据表示 2.2 寻址技术 2.2.1 编址方式 2.2.2 寻址方式 2.2.3 定位方式 程序的主存物理地址在什么时间确定?采用什么方式来实现? 程序需要定位的主要原因: 程序的独立性 程序的模块化设计 数据结构在程序运行过程中,其大小往往是变化的 有些程序本身很大,大于分配给它的主存物理空间 2.3 指令格式的优化设计 主要目标:节省程序的存储空间 指令格式尽量规整,便于译码 2.3.1 指令的组成 2.3.2 操作码的优化设计 2.3.3 地址码的优化设计 2.3.4 指令格式设计举例 2.3.1 指令的组成 一般的指令主要由两部分组成: 操作码和地址码 地址码通常包括三部分内容: 地址:地址码、立即数、寄存器、变址寄存器 地址的附加信息:偏移量、块长度、跳距 寻址方式:直接寻址、间接寻址、立即数寻址、变址寻址、相对寻址、寄存器寻址 2.3.2 操作码的优化表示 操作码的三种编码方法: 固定长度、Huffman编码、扩展编码 优化操作码编码的目的:节省程序存储空间 例如:Burroughs公司的B-1700机 2.3.3 地址码的优化表示 1. 地址码个数的选择 地址码个数通常有3个、2个、1个及0个等4种情况 评价指令中地址码个数应该取多少的标准主要有两个: 程序存储容量,包括操作码和地址码 程序执行速度,以程序执行过程中访问主存的信息量代表 通过一个典型例子来分析:  2.3.4 指令格式设计举例 1. MIPS32-4K的指令格式 1个bundle有三条指令和一个template,Template指示这三条指令的类型及stop的位置; Predicate指示本指令的启动时刻。 1个group可以有任意条指令,同一group内的指令可以同时执行。 一个时钟周期可发射2个bundle。 共9个功能部件:2个整数部件i、 2个浮点部件f、 2个访存部件m、 3个分支部件b。 条件执行方式的简单例子 C语言CASE语句的例子 2.4 指令系统的功能设计 2.4.1 基本指令系统 通用计算机必须有5类基本指令 2.4.2 指令系统的性能 完整性、规整性、高效率和兼容性 2.4.3 指令系统的优化设计 CISC、RISC和VLIW 2.4.1 基本指令系统 通用计算机必须有5类基本指令 数据传送类指令运算类指令 程序控制指令 输入输出指令 处理机控制和调试指令 1. 数据传送类指令 由如下三个主要因素决定: (1)数据存储设备的种类 (2)数据单位:字、字节、位、数据块等 (3)采用的寻址方式 例如,考虑数据存储设备的种类:  寄存器?寄存器  寄存器?主存储器  寄存器?堆栈     主存储器?寄存器  主存储器?主存储器  主存储器?堆栈  堆栈?寄存器     堆栈?主存储器 2. 运算类指令 : 考虑四个因数的组合: 操作种类:加、减、乘、除、与、或、非、异或、比较、移位、检索、转换、匹配、清除、置位等 数据表示:定点、浮点、逻辑、十进制、字符串、向量等 数据长度:字、双字、半字、字节、位、数据块等 数据存储设备:寄存器、主存储器、堆栈等 以寄存器加法指令为例,一般设置如下几种: 寄存器-寄存器型的定点单字长加法指令 寄存器-寄存器型的定点双字长加法指令 寄存器-寄存器型的定点半字加法指令 寄存器-寄存器型的字节加法指令 寄存器-寄存器型的浮点单字长加法指令 寄存器-寄存器型的浮点双字长加法指令 寄存器-寄存器型的单字长逻辑加法指令 寄存器-寄存器型的定点向量加法指令 寄存器-寄存器型的浮点向量加法指令 以移位指令为例: 需要组合以下三个因素: (1)移位方向:左移(L)、右移(R) (2)移位种类:算术移位(A)、逻辑移位(L)、 循环移位(R) (3)移位长度:单字长(S)、双字长(D) 组合起来共有:3×2×2=12种,

文档评论(0)

琼瑶文档 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档