白中英计算机组成原理第4章_指令系统(选用)
计算机组成原理第五版 白中英(详细)第4章习题参考答案
第4章习题参考答案1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?为什么?答:不合理。
指令最好半字长或单字长,设16位比较合适。
一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。
2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。
答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。
双操作数指令单操作数指令无操作数指令3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:(1) 单字长二地址指令。
(2) 操作码字段OP可以指定26=64种操作。
(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。
(4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 9 8 7 4 3 0答:该指令格式及寻址方式特点如下:(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP可以指定26=64种操作。
(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数在主存中。
有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。
5.指令格式结构如下所示,试分析指令格式及寻址方式特点。
答:该指令格式及寻址方式特点如下:(1)该指令为单字长双操作数指令,源操作数和目的操作数均由寻址方式和寄存器构成,寄存器均有8个,寻址方式均有8种。
根据寻址方式的不同,指令可以是RR型、RS型、也可以是SS型;(2)因为OP为4位,所以最多可以有16种操作。
计算机组成原理本全白中英
22
1、定点数的表示
定点表示:约定机器中所有数据的小数点位置是 固定不变的。 由于约定在固定的位置,小数点就不再使用记号 “.”来表示。通常将数据表示成纯小数或纯整数。 n+1位定点数表示: X0 X1 X2X3… Xi … Xn-2 Xn-1Xn 其中X0为符号位, X1… Xn为数值部分, Xi为0或1。
27
任意十进制N,可以化为 N=M×10E 其中M为小数,E为整数 一个数S的任意进制表示 (S)R=m×Re m :尾数,是一个纯小数。 e :比例因子的指数,称为浮点的指数,是一个 整数。 R :比例因子的基数,对于二进计数值的机器 是一个常数,一般规定R 为2,8或16。
28
浮点表示法:把一个数的有效数字和数的范围 在计算机的一个存储单元中分别予以表示, 这种把数的范围和精度分别表示的方法,数 的小数点位置随比例因子的不同而在一定范 围内自由浮动。 对于:101.1101(=0.1011101×20011) 只需存放0.1011101和0011即010111010011
7
第三节
计算机的硬件
一、数字计算机硬件的组成
硬件:指计算机中的电子线路和物理装置。 计算机硬件由五大部分组成:即运算器、控制器、 存储器、输入设备、输出设备。 运算器 进行数据处理或信息加工(P8) 包括各种算术运算、逻辑运算和判断处理 存储器 存放程序和数据(P9) 程序 是计算机进行各种操作和控制的依据 数据 是计算机进行操作的对象 计算机中存放的程序和数据都是二进制形式的
计算机系统具有层次性,它是由多级层次结 构组成的。其层次之间的关系十分紧密,上 层是下层功能的扩展,下层是上层的基础; 层次的划分不是绝对的,各层之间有时是相 互渗透的。
13
白中英组成原理第四版chp4
30
2、立即寻址
特点:在取指令时,操作码和操作数被同步取出,不 必再次访问存储器,从而提升了指令旳执行速度。
但是,因为操作数是指令旳一部分,不能被修改; 而且对于定 长指令格式,操作数旳大小将受到指令长
度旳限制,所以这种寻址方式灵活性最差 一般用于给某一寄存器或主存单元赋初值,或者用于
使用时有一点必须注意:指令执行之后,A1中原存 旳内容已经被新旳运算成果替代了。
12
二、地址码
二地址地址根据操作数旳物理位置分为:
SS 存储器-存储器类型 RS 寄存器-存储器类型 RR 寄存器-寄存器类型
慢
13
二、地址码
一地址指令
指令格式为:
θ A1
操作码θ 第一操作数A1
(AC)θ(A1) →A1 (PC)+1→PC 单操作数运算指令,如“+1”、“-1”、“求反” 指令中给出一种源操作数旳地址
器方式和24种变址方式(参照汇编语言教材); Reg或OP(3位)指定另一种操作数(寄存器)或
用作OP旳补充。
操作码 Mod Reg或操作码 R/M S I B 位移量 立即数
1个字节
1个字节
21
七、 Pentium指令格式
S、I、B共1个字节,分别是百分比系数、变址寄存器 号、基址寄存器号,可选。mod-R/M中旳某些编码要 求SIB字节来完毕寻址方式旳指定;
第四章 指令系统
4.1 指令系统旳发展与性能要求 4.2 指令格式与 4.3 操作数类型 4.4 指令和数据旳寻址方式 4.5 经典指令
返回 1
4.1 指令系统旳发展与性能要求
1、指令在计算机系统中旳地位 (1)是软件和硬件分界面旳一种主要标志
计算机组成原理(白中英)
D0
D1
D2
D3
A校验码 B校验码 C校验码 D校验码
系统结构
RAID4
I/O系统
❖ 专用奇偶校验独立存取盘阵列
❖ 数据以块(块大小可变)交叉的方式存于各盘, 奇偶校验信息存在一台专用盘上
数据块
校验码 产生器
A0
A1
A2
A3
B0
B1
B2
B3
C0
C1
C2
C3
D0
D1
D2
D3
A校验码 B校验码 C校验码 D校验码
❖ 只写一次光盘
只写一次光盘(Write Once Only):可以由用户写入 信息,不过只能写一次,写入后不能修改,可以多次读 出,相当于PROM。在盘片上留有空白区,可以把要修 改和重写的的数据追记在空白区内。
❖ 可檫写式光盘
可檫写式光盘(Rewriteable):利用磁光效应存取信 息,采纳特殊的磁性薄膜作记录介质,用激光束来记录、 再现和删除信息,又称为磁光盘,类似于磁盘,可以重 复读写。
RAID6
I/O系统
❖ 双维奇偶校验独立存取盘阵列
❖ 数据以块(块大小可变)交叉方式存于各盘, 检、纠错信息均匀分布在全部磁盘上
系统结构
A0 A1 A2
3校验码 D校验码
B0 B1
2校验码 C校验码
B2
C0
1校验码 B校验码
C1 C2
0校验码 A校验码
D1 D2 D3
校验码 产生器
7.7 光盘存储设备
– 正脉冲电流表示“1”,负脉冲电流表示“0”; – 不论记录“0”或“1”,在记录下一信息前,记录电流
恢复到零电流 – 简洁易行,记录密度低,改写磁层上的记录比较困难,
计算机组成原理第四章课件白中英版
操作码字段OC 地址码字段AC
计算机组成原理第四章课件白中英 版
地址码
操作码 操作码
操作码
操作码
A1 A2 A3 三地址指令
A1
A2 二地址指令
A
单地址指令
零地址指令
寄存器-存储器结构可以直接访问存储器,容 易对指令进行编码,生成的目标代码较小。但 其操作数类型不同,需同时对存储器和寄存器 进行编码,指令执行的时钟周期数也不尽相同
Pentium指令格式
Pentium机的指令字长度可变:从1字节到12 字节,还可以带前缀
非固定长度的指令格式是典型的CICS结构特征
3. 源寄存器和目标寄存器都是通用寄存器(可 分别指定16个)。两个操作数均在寄存器中, 所以是寄存器-寄存器型指令
4. 这种指令结构常用于算术逻辑运算类指令
[例2] 分析指令格式的特点
15
9
OP
7
4
-------- 源寄存器
位移量(16位)
3
0
变址寄存器
1. 双字长二地址指令,用于访问存储器
2. 操作码字段OP为6位,可以指定64种操作
数据弹出堆栈操作pop存储器堆栈?使用主存部分空间作为堆栈区域寄存器堆栈串联堆栈?cpu内部以堆栈方式存取数据的一组寄存器wordstackpushpop计算机组成原理36451指令的分类数据传送指令?实现主存与寄存器之间寄存器与寄存器之间或立即数到寄存器和主存的数据传送算术运算指令?实现加减乘除等运算的指令逻辑运算指令?实现逻辑与或非异或以及移位等操作的指令程序控制转移指令?无条件转移指令有条件转移指令子程序调用和返回指输入输出指令?cpu与外设之间传送数据的指令计算机组成原理37452基本指令系统助记符指令功能ldamov传送pushadd加法sub减法inc助记符指令功能逻辑或rol循环左移ror循环右移jmp跳转jsr转子程序clahlt暂停计算机组成原理38453精简指令系统为了增强处理器的功能强化指令系统
第四章指令系统(白中英第五版)教材
4.2指令格式 六、PDP/11系列机指令格式
PDP/11系列机指令字长16位,其指令格式如下表 所示。4.3 PDP/11系列机指令格式
2019年6月16日星期日
4.2指令格式
从表中看出,在PDP/11中,操作码字段是不固 定的,其长度也是不相同的。这样做可以扩展操作码 以包含较多的指令。 但是操作码字段不固定,对控 制器的设计来说必将复杂化。
4.1指令系统的发展与性能要求
兼容性 系列机各机种之间具有相同的基本结 构和共同的基本指令集,因而指令系统是兼容的,即 各机种上基本软件可以通用。但由于不同机种推出的 时间不同,在结构和性能上有差异,做到所有软件都 完全兼容是不可能的,只能做到“向上兼容”,即低 档机上运行的软件可以在高档机上运行。
4.2指令格式
指令格式则是指令字用二进制代码表示的结构 形式,由操作码字段和地址码字段组成。
操作码
地址码
2019年6月16日星期日
4.2指令格式 一、操作码
操作码字段表征指令的操作特性与功能;地址 码字段通常指定参与操作的操作数的地址。
操作码:表示该指令应进行什么性质的操作。 每一种编码代表一种指令,组成操作码字段的位 数一般取决于计算机指令系统的规模。
八位微型计算机的指令格式 8位微型机字长只有8位,指令结构是一种可变
字长形式,包含单字长、双字长、三字长指令等多种。 单字长指令 双字长指令 三字长指令
2019年6月16日星期日
4.2指令格式
内存按字节编址,所以单字长指令每执行一条 指令后,指令地址加1。双字长指令或三字长指令每 执行一条指令时,指令地址要加2或加3,可见多字长 的指令格式不利于提高机器速度。
2019年6月16日星期日
白中英计算机组成原理第四章答案
操作码OP
6位
指令格式
操作数R 4位
基址寄存器R1
4位
形式地址D 18位
64种操作
操作码占6位;
16个通用寄存器一个操作数和基址寄存器各占4位;
单字长指令 形式地址占32 – 6 – 4 – 4 = 18位;
操作数S的地址E =(R1)+D,其中R1为32位的;
若系统的地址总线≤32位,则可寻址整个主存;
方案1:专用变址寄存器
6位
2位
OP 寻址特征
8位 形式地址
各操作数的寻址范围: 立即数寻址方式
指令中的立即数不能超过8位;
直接寻址方式
直接地址为8位,可直接寻址范围为28个单元;
变址寻址方式
E=(R)+D,其中变址寄存器R为16位; 由于主存容量64K字,可直接寻址整个主存空间;
相对寻址方式
4种寻址方式 寻址特征需2位;
单字长单地址指令
寻址方式 寻址特征X 有效地址E
直接寻址方式
00
E=D
立即寻址方式
01
D=Imm
剩余8位作为形式地址; 变址寻址方式
10
E=(R)+D
设计方案:
相对寻址方式
11
E=(PC)+D
方案1:专用变址寄存器;
方案2:通用寄存器作为变址寄存器;
第五页,编辑于星期日:四点 四十三分。
第4章 指令系统
第一页,编辑于星期日:四点 四十三分。
3、指令格式结构如下所示,试分析指令格
式与寻址方式特点。
15
10 9 8 7
43
0
OP
—— 目标寄存器
源寄存器
① 单字长双地址码的RR型指令。
计算机组成原理第五版-白中英(详细)第4章习题参考答案
第4章习题参考答案1.ASCII码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理为什么答:不合理。
指令最好半字长或单字长,设16位比较合适。
一个字符的ASCII 是7位,如果设计主存单元字长为32位,则一个单元可以放四个字符,这也是可以的,只是在存取单个字符时,要多花些时间而已,不过,一条指令至少占一个单元,但只占一个单元的12位,而另20位就浪费了,这样看来就不合理,因为通常单字长指令很多,浪费也就很大了。
2.假设某计算机指令长度为32位,具有双操作数、单操作数、无操作数三类指令形式,指令系统共有70条指令,请设计满足要求的指令格式。
答:字长32位,指令系统共有70条指令,所以其操作码至少需要7位。
双操作数指令单操作数指令无操作数指令3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 !9 8 7 4 3 0答:该指令格式及寻址方式特点如下:(1) 单字长二地址指令。
》(2) 操作码字段OP可以指定26=64种操作。
(3) 源和目标都是通用寄存器(可分指向16个寄存器)所以是RR型指令,即两个操作数均在寄存器中。
(4) 这种指令结构常用于RR之间的数据传送及算术逻辑运算类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 10 9 8 7 4 3 015 10 9 8 7 4 3 0答:该指令格式及寻址方式特点如下:(1)双字长二地址指令,用于访问存储器。
(2)操作码字段OP可以指定26=64种操作。
(3)RS型指令,一个操作数在通用寄存器(选择16个之一),另一个操作数在主存中。
有效地址可通过变址寻址求得,即有效地址等于变址寄存器(选择16个之一)内容加上位移量。
|5.指令格式结构如下所示,试分析指令格式及寻址方式特点。
15 12 11 9 8 6 5 3 2 0答:该指令格式及寻址方式特点如下:(1)该指令为单字长双操作数指令,源操作数和目的操作数均由寻址方式和寄存器构成,寄存器均有8个,寻址方式均有8种。
计算机组成原理课后答案(白中英第四版)第四章
第四章1.不合理。
指令最好半字长或单字长,设16位比较合适。
2.3.(1)RR 型指令(2)寄存器寻址(3)单字长二地址指令(4)操作码字段OP 可以指定26=64种操作4.(1)双字长二地址指令,用于访问存储器。
操作码字段可指定64种操作。
(2)RS 型指令,一个操作数在通用寄存器(共16个),另一个操作数在主存中。
(3)有效地址可通过变址寻址求得,即有效地址等于变址寄存器(共16个)内容加上位移量。
5.(1)双操作数指令(2)23=8种寻址方式(3)24=16种操作6.(1)直接寻址方式(2)相对寻址方式(3)变址寻址方式(4)基址寻址方式(5)间接寻址方式(6)变址间接寻址方式7.40条指令需占6位,26=64,剩余24条可作为扩充4种寻址方式需占2位剩余8位作为地址X = 00 直接寻址方式 E = DX = 01 立即寻址方式X = 10 变址寻址方式 E = (R )+DX = 11 相对寻址方式 E = (PC )+D2位E = PC H -DX = 01 立即寻址方式X = 10 直接寻址方式 E = D(2)PC 高8位形成主存256个页面,每页K M 42561 个单元 (3)寻址模式X = 11尚未使用,故可增加一种寻址方式。
由于CPU 中给定的寄存器中尚可使用PC ,故可增加相对寻址方式,其有效地址E = PC+D ,如不用相对寻址,还可使用间接寻址,此时有效地址E = (D )。
当位移量变成23位时,寻址模式变成3位,可有更多的寻址方式。
9. 16个通用寄存器占4位,64种操作占6位,剩下22位用于存储器地址,采用R为基址寄存器寻址,地址=(R)+D 当基址最大,D也是最大的时候,寻址能力最大而寄存器是32位的,故最大存储空间是232+222 = 4GB+4MB。
11.C12.(1)寄存器(2)寄存器间接(3)立即(4)直接(5)相对、基值、变址。
计算机组成原理 第四章指令系统4.4~4.5
2 存储器堆栈
2 存储器堆栈
当建立存储器堆栈时, 当建立存储器堆栈时,可用程序 来设置。 来设置。把一个主存地址送入堆 栈指示器,就可确定堆栈的顶。 栈指示器,就可确定堆栈的顶。 在存储器堆栈中, 在存储器堆栈中,数据的压入或 取出操作,通常也是使用“进栈” 取出操作,通常也是使用“进栈” 指令和“出栈”指令来实现的, 指令和“出栈”指令来实现的, 但是指令的功能和串联堆栈中的 情况有所不同。 情况有所不同。
1 串联堆栈
一些计算机的CPU中有 中有 一些计算机的 一组专门的寄存器, 一组专门的寄存器,有 16个或更多,它们称为 个或更多, 个或更多 串联堆栈,其中每一个 寄存器能保存一个字的 数据。 数据。
1 串联堆栈
2 存储器堆栈
串联堆栈存在一些限制: 串联堆栈存在一些限制 一是寄存器的数目一般是有限的 寄存器的数目一般是有限的。 一是寄存器的数目一般是有限的。如堆 栈有8个寄存器,那么把多于8 栈有8个寄存器,那么把多于8个的数据 压入堆栈时, 压入堆栈时,“老”的数据就从栈底压 出并被丢失。 出并被丢失。 二是堆栈的读出是破坏性的。 二是堆栈的读出是破坏性的。当从堆栈 取出一个数时, 取出一个数时,它就不能再在堆栈中存 在。
量软件如何转到RISC平台上来是首先要考虑的 ; 而且这些公司的 平台上来是首先要考虑的; 量软件如何转到 平台上来是首先要考虑的 操作系统专用性强,又比较复杂,更给软件的移植带来了困难。 操作系统专用性强,又比较复杂,更给软件的移植带来了困难。
而像SUN微系统公司 , 以 UNIX操作系统作为基础 , 软 微系统公司, 操作系统作为基础, 而像 微系统公司 操作系统作为基础 件移植比较容易,因此它的工作站的重点很快从CISC(用 件移植比较容易,因此它的工作站的重点很快从 用 68020微处理器 转移到 微处理器)转移到 徽处理器)。 微处理器 转移到RISC(用SPARC徽处理器 。 用 徽处理器
计算机组成原理第四章(白中英编科学出版社)PPT课件
第14页
计算机组成原理
⊙第四章指令系统
指令操作码与地址码
3.二地址指令格式
操作码OC
AC1
AC2
(1)把保存操作前原来操作数的地址称为源点地址(SS),把保存指令 执行结果的地址称为终点地址或目的地址(DD)。
(2)将源点与终点操作数进行操作码规定的操作后,将结果存入终点 地址。通常二地址指令又称为双操作数指令。 例如,双操作数加法指令: A结D果D存R入0,R1R寄1表存示器将中R。0寄存器的内容和R1寄存器的内容相加以后,将 又 该 存如地器A址的D所内D指容(向相R0的加),单以R元后1表内 ,示容 将将作 结R为 果0寄源 存存点 入器操R的1作寄内数存容,器作和中为作。地为址终,点到操内作存数中的取R出1寄
素。 (b)数据的存取都只能在栈顶单元内进行,即数据的进栈与出栈都只
能经过栈顶单元这个“出入口”。 (c)堆栈中的数据采用“先进后出”或“后进先出”的存取工作方式。
B、 堆栈结构在计算机中的作用 (a)具有堆栈结构的机器使用零地址指令,这不仅合指令长度短,指
令结构简单,机器硬件简化。 (b)实现程序调用,子程序嵌套调用和递归调用。 (c)对于“中断”技术,堆栈更是不可缺少的,保存“断点”和“现
4
第4章 指令系统
4.1 指令系统的发展与性能要求 4.2 指令格式 4.3 指令和数据的寻址方式 4.4 堆栈寻址方式 4.5 典型指令
5
计算机组成原理
⊙第四章指令系统
4.1指令系统的发展与性能要求
指令系统决定了计算机的基本功能,指令系统的设计是计算机系统设计的 一个核心问题。它不仅与计算机的硬件设计紧密相关,而且直接影响到系 统软件设计的难易程度。
简化程序设计,提高程序的可读性非常有用。 (2)匀齐性:是指一种操作性质的指令可以支持各种数据类型。 (3)指令的格式与数据格式的一致性:指令长度与数据长度有一定关系,
计算机组成原理前3章课后习题参考答案解析
白中英第五版计算机组成原理课后习题参考答案第一章计算机系统概述4、冯•诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?答:冯•诺依曼型计算机的主要设计思想是存储程序和程序控制,其中存储程序是指将程序和数据事先存放到存储器中,而程序控制是指控制器依据存储的程序来控制全机协调地完成计算任务。
总体来讲,存储程序并按地址顺序执行,这就是冯•诺依曼型计算机的主要设计思想。
5、什么是存储容量?什么是单元地址?什么是数据字?什么是指令字?答:见教材P8和P10。
7、指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?答:见教材P10。
第二章运算方法和运算器1、写出下列各整数的原码、反码、补码表示(用8位二进制数)。
3、有一个字长为32位的浮点数,符号位1位,阶码8位,用移码表示,尾数23位,用补码表示,基数为2,请写出:(1)最大数的二进制表示阶码用移码表示,题中并未说明具体偏移量,故此处按照移码的定义,即采用偏移量为27=128,则此时阶码E的表示范围为0000 0000~1111 1111,即0~255,则在上述条件下,浮点数为最大数的条件如下:所以最大数的二进制表示为:0 1111 1111 1111 1111 1111 1111 1111 1111 111 对应十进制真值为:+(1-2-23)×2127(2)最小数的二进制表示浮点数为最小数的条件如下:所以最小数的二进制表示为:1 1111 1111 0000 0000 0000 0000 0000 000对应十进制真值为:-1×2127(3)规格化数所表示数的范围规格化要求尾数若为补码表示,则符号位和最高有效位符号必须不同。
(A)浮点数为最大正数的条件如下:所以最大正数的二进制表示为:0 1111 1111 1111 1111 1111 1111 1111 1111 111 对应十进制真值为:+(1-2-23)×2127(B)浮点数为最小正数的条件如下:所以最小正数的二进制表示为:0 0000 0000 1000 0000 0000 0000 0000 000 对应十进制真值为:+2-1×2-128=+2-129(C)浮点数为最大负数的条件如下:所以最大负数的二进制表示为:0 0000 0000 0111 1111 1111 1111 1111 111 对应十进制真值为:-(2-1+2-23)×2-128(D)浮点数为最小负数的条件如下:所以最小负数的二进制表示为:0 0000 0000 0000 0000 0000 0000 0000 000 对应十进制真值为:-1×2127所以,规格化数所表示数的范围如下:正数 +2-129~+(1-2-23)×2127负数 -2127 ~-(2-1+2-23)×2-1284、将下列十进制数表示成IEEE754标准的32位浮点规格化数。
计算机组成原理课后答案(白中英第四版)第四章
计算机组成原理课后答案(⽩中英第四版)第四章第四章1.不合理。
指令最好半字长或单字长,设16位⽐较合适。
2.3.(1)RR 型指令(2)寄存器寻址(3)单字长⼆地址指令(4)操作码字段OP 可以指定26=64种操作4.(1)双字长⼆地址指令,⽤于访问存储器。
操作码字段可指定64种操作。
(2)RS 型指令,⼀个操作数在通⽤寄存器(共16个),另⼀个操作数在主存中。
(3)有效地址可通过变址寻址求得,即有效地址等于变址寄存器(共16个)内容加上位移量。
5.(1)双操作数指令(2)23=8种寻址⽅式(3)24=16种操作6.(1)直接寻址⽅式(2)相对寻址⽅式(3)变址寻址⽅式(4)基址寻址⽅式(5)间接寻址⽅式(6)变址间接寻址⽅式7.40条指令需占6位,26=64,剩余24条可作为扩充4种寻址⽅式需占2位剩余8位作为地址X = 00 直接寻址⽅式 E = DX = 01 ⽴即寻址⽅式X = 10 变址寻址⽅式 E = (R )+DX = 11 相对寻址⽅式 E = (PC )+D2位E = PC H -DX = 01 ⽴即寻址⽅式X = 10 直接寻址⽅式 E = D(2)PC ⾼8位形成主存256个页⾯,每页K M 42561 个单元 (3)寻址模式X = 11尚未使⽤,故可增加⼀种寻址⽅式。
由于CPU 中给定的寄存器中尚可使⽤PC ,故可增加相对寻址⽅式,其有效地址E = PC+D ,如不⽤相对寻址,还可使⽤间接寻址,此时有效地址E = (D )。
当位移量变成23位时,寻址模式变成3位,可有更多的寻址⽅式。
9. 16个通⽤寄存器占4位,64种操作占6位,剩下22位⽤于存储器地址,采⽤R为基址寄存器寻址,地址=(R)+D 当基址最⼤,D也是最⼤的时候,寻址能⼒最⼤⽽寄存器是32位的,故最⼤存储空间是232+222 = 4GB+4MB。
11.C12.(1)寄存器(2)寄存器间接(3)⽴即(4)直接(5)相对、基值、变址。
《计算机组成原理-白中英版》习题答案
第二章运算方法和运算器1.写出下列各数的原码、反码、补码、移码表示(用8位二进制数)。
其中MSB是最高位(又是符号位)LSB是最低位。
如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。
(1) -35/64 (2) 23/128 (3) -127 (4) 用小数表示-1 (5) 用整数表示-1解:(1)先把十进制数-35/64写成二进制小数:(-35/64)10=(-100011/1000000)2=(-100011×2-6)2=(-0.100011)2令x=-0.100011B∴ [x]原=1.1000110 (注意位数为8位) [x]反=1.0111001[x]补=1.0111010 [x]移=0.0111010(2) 先把十进制数23/128写成二进制小数:(23/128)10=(10111/10000000)2=(10111×2-111)2=(0.0001011)2令x=0.0001011B∴ [x]原=0.0001011 [x]反=0.0001011[x]补=0.0001011 [x]移=1.0001011(3) 先把十进制数-127写成二进制小数:(-127)10=(-1111111)2令x= -1111111B∴ [x]原=1.1111111 [x]反=1.0000000[x]补=1.0000001 [x]移=1.0000001(4) 令x=-1.000000B∴ 原码、反码无法表示[x]补=1.0000000 [x]移=0.0000000(5) 令Y=-1=-0000001B∴ [Y]原=10000001 [Y]反=11111110[Y]补=11111111 [Y]移=011111115.已知X和Y, 用变形补码计算X+Y, 同时指出运算结果是否溢出。
(2)X=0.11011 Y= -0.10101解:x+y = 0.00110无溢出6.已知X 和Y, 用变形补码计算X-Y, 同时指出运算结果是否溢出。
计算机组成原理(白中英)第4章指令系统
1. 2.
2012年3月15日10时45分
内存 PC
1.顺序寻址 1.顺序寻址
100
100 101
为了达到顺序寻址 的目的,CPU中必须有 的目的,CPU中必须有 +1 一个程序计数器(PC) 一个程序计数器(PC) 对指令的顺序号进行计 PC中开始时存放程 数。PC中开始时存放程 序的首地址, 序的首地址,然后每执 行一条指令,PC加 行一条指令,PC加 1, 以指出下条指令的地址, 以指出下条指令的地址, 直到程序结束。 直到程序结束。
2012年3月15日10时45分
18
PC 100
主存 Jmp 103
2. 跳跃寻址
当程序中出现分支或循环时, 当程序中出现分支或循环时 , 就会改变程序的执行顺序。此时, 就会改变程序的执行顺序。此时, 对指令寻址就要采取跳跃寻址方 所谓跳跃, 式。所谓跳跃,就是指下条指令 的地址不是通过程序计数器PC PC加 的地址不是通过程序计数器PC加 获得的, 而是由指令本身给出。 1 获得的 , 而是由指令本身给出 。
2012年3月15日10时45分 11
• 4.指令助记符 4.指令助记符
由于硬件只能识别1 由于硬件只能识别1和0,所以采用 二进制操作码是必要的, 二进制操作码是必要的,但是书写程序 却非常麻烦。 却非常麻烦。 • 为了便于书写和阅读程序, 为了便于书写和阅读程序,每条指 令通常用3个或4个英文缩写字母来表示。 令通常用3个或4个英文缩写字母来表示。 这种缩写码叫做指令助记符 指令助记符。 这种缩写码叫做指令助记符。 • 在不同的计算机中, 在不同的计算机中,指令助记符的 规定是不一样的。因此, 规定是不一样的。因此,指令助记符还 必须转换成与它们相对应的二进制码。 必须转换成与它们相对应的二进制码。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
操作码长度为32位
操作码的可扩展位为32-20=12位。
2014年10月26日星期日 24
【例】某机指令字长32位,一个操作数地址为12位,有 双地址码、单地址码、零地址码3种格式的指令。 若采用扩展操作码的方式来设计指令,已知双地址码指 令K条,单地址码指令L条,问零地址码指令有多少条?
由以上分析的指令格式,及题目可知: 双地址码指令最多有28条; 可用于扩展单地址码指令的编码有(28-K)个; 单地址码指令最多有(28-K)×212条:
指令长度和数据长度有一定的关系,以方便处理和 存取;
2014年10月26日星期日 12
4.1.3 低级语言与硬件结构的关系
低级语言: 机器语言、汇编语言
面向机器的语言,和具体机器的指令系统密切相关。
高级语言与低级语言的比较如P105 表4.1
2014年10月26日星期日
13
4.2 指令格式
(二)指令的寻址方式
1. 有效地址的概念 2. 数据寻址和指令寻址 3. 常见寻址方式 (三) CISC和RISC的基本概念
2014年10月26日星期日 3
4.1 指令系统的发展和性能要求
4.1.1 指令系统的发展
4.1.2 对指令系统性能的要求
4.1.3 低级语言与硬件结构的关系
2014年10月26日星期日
2014年10月26日星期日
4.2.2 地址码(2/2)
两地址指令
OP A1 A2
功能: (A1) OP (A2) A1 三地址指令
OP A1 A2
如ADD、XOR等指令
A3
功能: (A1) OP (A2) A3 多地址指令(如四地址) 这类指令功能强,一般用高档小型机或中大型机,用于实 现成批数据处理,字符串处理、向量或矩阵运算指令等。
双地址码指令 单地址码指令
OP(8位) A1(12位) A2(12位)
操作码长度为(32-12×2)=8位;
OP(8位) 扩展操作码(12位) A2(12位)
操作码长度为(32-12)=20位;
操作码的可扩展位为20-8=12位。
零地址码指令
OP(8位) 扩展操作码(12位) 扩展操作码(12位)
4.2.1 操作码 4.2.2 地址码 4.2.3 指令字长度 4.2.4 指令助记符 4.2.5 指令格式举例
2014年10月26日星期日
14
指令的一般格式
指令字(简称指令) 表示一条指令的机器字。 指令格式
指令字用二进制代码表示的结构形式,由操作码字段和地 址码字段组成。
操作码字段OP 地址码字段A
操作码字段:表征指令的操作特性与功能;
地址码字段:通常指定参与操作的操作数的地址。
2014年10月26日星期日
15
4.2.1
操作码
操作码字段的位数取决于指令系统的规模; 操作码的类型: 固定长度的操作码
特征:所有指令长度均相同。
操作码字段为4位, 则指令系统中的指令 数目为24=16条。
第4章 指令系统
目录
4.1 指令系统的发展与性能要求
4.2 指令格式 4.3 操作数类型 4.4 指令和数据的寻址方式 4.5 典型指令 4.6 本章练习题
2014年10月26日星期日 2
考研计算机统考大纲要求
(一) 指令格式
1. 指令的基本格式
2. 定长操作码指令格式 3. 扩展操作码指令格式
2014年10月26日星期日 20
操作码扩展举例(1/3)
设某指令长16位,包括4位基本操作码字段和3个4位地址码 字段。
OP A1 A2 A3
① 若全是三地址指令,则最多能有多少条指令? 操作码为4位的,则指令条数为24=16。 ② 若三地址指令需15条 ─┐ 两地址指令需15条 │ 应如何安排?
2014年10月26日星期日 9
判断以下有关CISC和RISC的描述的正误
A. 采用RISC技术后,计算机的体系结构又回复到早期比 × 较简单的情况; B. 为了实现兼容,新设计的RISC,是从原来CISC系统 的指令系统中挑选一部分实现的; √ C. RISC的主要目的是减少指令;
×
D. RISC设有乘、除法指令和浮点运算指令;×
指令字长由操作码长度、操作数长度和个数共同决定。
指令有半字长、单字长、双字长、多字长等不同的长度类型; 指令系统可分为等长指令字结构、变长指令字结构两种。
2014年10月26日星期日 26
4.2.4 指令助记符
指令助记符 使用3~4个英文缩写字母来表示的指令操作码。 在不同的计算机中,指令助记符的规定是不一样的; 指令助记符只是指令操作码字段的一种表示方法; 机器内部保存的还是二进制代码形式的机器指令;
单地址指令需15条
│
零地址指令需16条 ─┘ 可使用操作码扩展技术,缩短固定操作码长度;
2014年10月26日星期日 21
操作码扩展举例(2/3)
4 位操作码 0000 A1
...... 1110 A2 A3
15条三地址指令
A1
A2
A3
如果采用操作码扩展方法能否设计一
1111 0000 A1 A2 8 位操作码 ...... 15条二地址指令 个具有三地址指令15条,双地址指令 1111 1110 A1 A2
2014年10月26日星期日
8
RISC
RISC(Reduced instruction set computer)
从简化指令系统和优化硬件设计的角度来提高系统的性能 与速度。
RISC指令系统的主要特点:
1. 选取使用频率高的简单指令; 2. 指令长度固定,指令格式少,寻址方式种类少; 3. 采用流水线技术; 4. 使用较多的通用寄存器,减少访存; 5. 控制器以组合逻辑控制为主; 6. 采用优化编译技术;
2014年10月26日星期日 5
计算机指令系统的发展过程
50年代
只有定点加减、逻辑运算、数据传送、转移等十几至几十 条指令。 60年代后期 增加了乘除运算、浮点运算、十进制运算、字符串处理等 指令,指令数目多达一二百条,寻址方式也趋多样化。 出现了系列计算机。
70年代末期
复杂指令系统计算机(CISC)、精简指令系统计算机(RISC)
零地址指令
OP
① 无任何操作数运算,如NOP、HALT等指令。 ② 单操作数运算:隐含一个操作数,如Acc 。
OP (Acc) Acc 如CBW指令
一地址指令 ① 单操作数运算:
OP
A1
OP (A1)
A1
如INC指令 如MUL指令
17
② 双操作数运算:隐含一个操作数,如Acc
(Acc) OP (A1) Acc/A1
8 位操作码
A1 0000 1111 0000
0000
A2 A1
32条一地址指令
12 位操作码
A1 0000
16条零地址指令 1111
23
16 位操作码
2014年10月26日星期日
此指令系统共具有75条指令
【例】某机指令字长32位,一个操作数地址为12位,有 双地址码、单地址码、零地址码3种格式的指令。 若采用扩展操作码的方式来设计指令,已知双地址码指 令K条,单地址码指令L条,问零地址码指令有多少条?
12 位操作码
12条,单地址指令 条以及零地址指 1111 1111 0000 31 A1
...... 令16 条的指令系统? 1111 1111 1110 A1 0000
15条一地址指令
1111 1111 1111 16 位操作码 ...... 1111 1111 1111
2014年10月26日星期日
可用于扩展零地址码指令的编码有[ (28-K)×212-L]个;
因此,零地址码指令最多有 [(28-K)×212 -L] ×212条。
2014年10月26日星期日
25
4.2.3
机器字长
指令字长度
运算器一次能处理的二进制数的位数。
机器指令的长度直接决定着CPU运算的精度和直接寻址能 力的大小; 指令字长 一个指令字中包含二进制代码的位数;
4
4.1.1 指令系统的发展
程序——用于解决实际问题的一系列的指令; 指令——使计算机执行某种操作的命令; 从组成的层次结构来说,计算机的指令可分为如下3类:
微指令:微程序级的命令,它属于硬件;
机器指令(指令):可完成一个独立的算术或逻辑运算; 宏指令:由若干条机器指令组成的软件指令,它属于软件; 指令系统:一台计算机中所有机器指令的集合。 直接影响机器的硬件结构、软件系统、以及机器的适用范围。
16条零地址指令
1111
此指令系统共具有61条指令
22
操作码扩展举例(3/3)
4 位操作码
0000 A1 ...... 1110 A1 1111 0000 ...... 1111 1011 1111 1100 ...... 1111 1101 1111 1110 ...... 1111 1110 A2 A2 A1 A3 15条三地址指令 A3 A2 12条二地址指令
2014年10月26日星期日
7
CISC
CISC(complex instruction set computer)
采用复杂的的指令系统,来达到增强计算机的功能、提 高机器速度的目的。
特点: 1. 指令系统复杂庞大,指令数目多; 2. 指令格式多,字长不固定,多种寻址方式; 3. 可访存指令不受限制; 4. 各种指令的执行时间相差很大; 5. 大都采用微程序控制器;
这类指令的执行不需要访存,因此速度很快。
寄存器-存储器(RS)型指令
A1、A2中一个为寄存器,一个为存储单元; 执行此类指令时,既要访问内存单元,又要访问寄存器。