计算机组成原理第三章运算方法与运算器(含答案)
第3章习题答案 计算机组成原理课后答案(清华大学出版社 袁春风主编)
• 64 •
10100 10101 +0 0 1 1 0 11010 10101 10101 01011 +00110 11011 01011 10110 10111 +00110 11100 10111 11001 01111 +00110 11111 01111 11110 11111 +00110 00100 11110 +00000 + 1 00100 11111 所以,[X/Y] 补=11111,余数为 00100。
商的数值部分为:00001。所以,[X/Y]原=00001 (最高位为符号位),余数为 0100。 (5) 将 10 和–6 分别表示成补码形式为:[10] 余数寄存器 R 余数/商寄存器 Q 00000 01010 +11010 11010 01010
补 补
先对被除数进行符号扩展,[10] 补=00000 01010,[6] 补 = 0 0110 说 明 开始 R0 = [X] R1=[X] +[Y] R1 与[Y]同号,则 q5 =1
6.设 A4A1 和 B4B1 分别是四位加法器的两组输入,C0 为低位来的进位。当加法器分别采用串行进位和先 行进位时,写出四个进位 C4 C1 的逻辑表达式。 参考答案: 串行进位: C1 = X1C0+Y1C0 + X1 Y1 C2 = X2C1+Y2C1 + X2 Y2 C3 = X3C2+Y3C2 + X3 Y3 C4 = X4C3+Y4C3 + X4 Y4 并行进位: C1 = X1Y1 + (X1+Y1)C0 C2 = X2Y2 + (X2 +Y2) X1Y1 + (X2+Y2) (X1+Y1)C0 C3 = X3Y3 + (X3 + Y3) X2Y2 + (X3 + Y3) (X2 + Y2) X1Y1 + (X3 + Y3) (X2 + Y2)(X1 + Y1)C0 C4=X4Y4+(X4+Y4)X3Y3+(X4+Y4)(X3+Y3)X2Y2+(X4+Y4)(X3+Y3)(X2+Y2)X1Y1+(X4+Y4)(X3+Y3) (X2+Y2)(X1+Y1)C0 7.用 SN74181 和 SN74182 器件设计一个 16 位先行进位补码加/减运算器,画出运算器的逻辑框图,并给出 零标志、进位标志、溢出标志、符号标志的生成电路。 参考答案(图略) :
计算机组成原理第三章课后习题参考答案
第三章(P101)1.(1)M 4832*220= 字节 (2)片84*28*51232*1024==K K(3)1位地址作芯片选择2. (1)个内存条4264*264*222426==(2)328*264*22242=每个内存条内共有32个DRAM 芯片 (3)4*32 = 128个主存共需要128个DRAM 芯片,CPU 通过由高位地址选择各内存条。
3. (1)首先计算所需芯片数目:168*232*21416=片 芯片容量为16K ,所以芯片内部寻址需14位;四个芯片组成一组形成32个位线,共需4组,需2位地址进行组间寻址; 其中使用一片2:4译码器;所以所以采用位并联与地址串联相结合的方法来组成整个存储器,其组成逻辑图如图所示,(2)根据已知条件,CPU 在1us 内至少访存一次,而整个存储器的平均读/写周期为0.5us ,如果采用集中刷新,有64us 的死时间,肯定不行 如果采用分散刷新,则每1us 只能访存一次,也不行 所以采用异步式刷新方式。
假定16K*8位的DRAM 芯片用128*128矩阵存储元构成,刷新时只对128行进行异步方式刷新,则刷新间隔为2ms/128 = 15.5us ,可取刷新信号周期15us 。
刷新一遍所用时间=15us ×128=1.92ms4. (1)片328*12832*1024 K K ,共分8组,每组4片;地址线共20位,其中组间寻址需3位,组内17位; (2)(3)如果选择一个行地址进行刷新,刷新地址为A 0-A 8,因此这一行上的2048个存储元同时进行刷新,即在8ms 内进行512个周期(即512行)。
采用异步刷新方式,刷新信号周期为:8ms/512 = 15.5us 。
注:存储器由128K*8位的芯片构成,分8组,每组4片,组内芯片并行工作,需17条地址线进行寻址,其中X 行线为9根,Y 位线为8根,29=512行。
5. 用256K*16位的SRAM 芯片设计1024K*32的存储器,需进行字位同时扩展方式继续拧设计,所需芯片数目:片816*25632*1024 K K ,设计的存储器容量为1M ,字长为32,故需20位地址(A0~A19);所用芯片存储容量为256K ,字长为16位,故片内寻址需18位(A0~A17)。
补码一位乘法
计算机组成原理第三章运算方法与运算器3.4 补码一位乘法1补码一位乘法的基本方法设[X]补= X0X1X2X3…X n[Y]补= Y0Y1Y2Y3…Y n可证明:[X⋅Y]补= [X]补•( 0.Y1Y2Y3…Yn) –Y0• [X]补进一步展开合并后可得:n[x•y]补=[x] 补•∑(y i+1-y i)2-i (符号位参加运算)i=01补码一位乘法的基本方法[x•y] 补=[x] 补• (y i+1-y i)2-i (符号位参加运算)补码一位乘法的运算规则如下:(1)如果y n+1=y n,部分积加0,部分积算术右移1位;(2)如果y n+1y n=10,部分积加[x]补,部分积算术右移1位;(3)如果y n+1y n=01,部分积加[-x]补,部分积算术右移1位.重复进行n+1步,但最后一步不移位。
包括一位符号位,所得乘积为2n+1位,其中n为数据位位数.1补码一位乘法的基本方法几个特殊问题的处理[x •y] 补=[x] 补• (y i+1-y i )2-i (符号位参加运算) 设[X]补= X 0X 1X 2X 3…X n [Y]补= Y 0Y 1Y 2Y 3…Y n(1)i=n 时,y n+1=?(2)y n+1是哪个寄存器?(3)算术右移的对象有哪些?y n+1=0在乘数寄存器Y 后增加的一位部分积和乘数寄存器均右移2补码一位乘法的举例例1 已知X= +1101 Y=+1011 用补码一位乘法求X⨯Y解:[X]补=01101 [Y]补=01011 [–X]补=10011部分积乘数说明000000 010110Y n+1< Y n部分积+[–X]补+ 110011110011→111001101011结果右移一位,Y n+1= Y n部分积+0+ 000000111001→111100 110101结果右移一位, Y n+1> Y n部分积+[X]补+ 0011010010012补码一位乘法的举例部分积乘数说明→000100 111010将结果右移一位, Y n+1< Y n部分积+[–X]补+ 110011110111→111011 111101将结果右移一位, Y n+1> Y n部分积+[X]补+ 001101001000∴[X⋅Y]补=010001111∴X⋅Y= 010001111。
《计算机组成原理》第三章课后题参考答案
第三章课后习题参考答案1.有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储多少个字节的信息?(2)如果存储器由512K×8位SRAM芯片组成,需要多少芯片?(3)需要多少位地址作芯片选择?解:(1)∵ 220= 1M,∴该存储器能存储的信息为:1M×32/8=4MB (2)(1024K/512K)×(32/8)= 8(片)(3)需要1位地址作为芯片选择。
3.用16K×8位的DRAM芯片组成64K×32位存储器,要求:(1) 画出该存储器的组成逻辑框图。
(2) 设DRAM芯片存储体结构为128行,每行为128×8个存储元。
如单元刷新间隔不超过2ms,存储器读/写周期为0.5μS, CPU在1μS内至少要访问一次。
试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?解:(1)组成64K×32位存储器需存储芯片数为N=(64K/16K)×(32位/8位)=16(片)每4片组成16K×32位的存储区,有A13-A0作为片内地址,用A15 A14经2:4译码器产生片选信号,逻辑框图如下所示:(2)根据已知条件,CPU在1us内至少访存一次,而整个存储器的平均读/写周期为0.5us,如果采用集中刷新,有64us的死时间,肯定不行;所以采用分散式刷新方式:设16K×8位存储芯片的阵列结构为128行×128列,按行刷新,刷新周期T=2ms,则分散式刷新的间隔时间为:t=2ms/128=15.6(s) 取存储周期的整数倍15.5s(0.5的整数倍)则两次刷新的最大时间间隔发生的示意图如下可见,两次刷新的最大时间间隔为tMAXt MAX=15.5×2-0.5=30.5 (μS)对全部存储单元刷新一遍所需时间为tRt R=0.5×128=64 (μS)4.有一个1024K×32位的存储器,由128K×8位DRAM芯片构成。
第三章运算方法与运算器(定点数除法)
■ 当上述结果小于0时,商上0,恢复余数,然后左移一位,减除数比较,即:
(2Ri-Y)+Y= 2Ri 2*2Ri -Y = 4Ri –Y
■ 若当结果小于0时,商上0,不恢复余数而直接将余数左移一位,加Y:
2(2Ri-Y)+Y = 2*2Ri -2Y + Y = 4Ri –Y
第三章 3.6 定点数除法
1 00.0011
1
00.0110 0.11
+[–Y]补 11.0101
0 11.1011
0
11.0110 0.110
+[Y]补 00.1011
1 00. 0001 0.1101 1
减Y比较
余数 <0 商上零 左移一位 加Y比较 余数>0,商上1 左移一位 减Y比较 余数>0,商上1 左移一位 减Y比较 余数<0 商上零 左移一位 加Y比较
■重复上述过程直到商达到所需要的位数为止。
第三章 3.6 定点数除法
2
原码恢复余数除法
已知 X=0.1001,Y=- 0.1011,用原码一位除法求X/Y
解:[X]原= 0 .1001 [Y]原= 1.1011
[|X|]补=0.1001 [|Y|] 补=0.1011 [-|Y|]补 =1.0101
最后结果: 商Q = (X0 Y0).1101=1.1101 余数 R = 0.0001 * 2 -4
该方法存在的不足: 运算步数不确定
左移一位 减Y比较
1 余数>0,商上1,移商
第三章 3.6 定点数除法
3
原码加/减交替除法运算方法(不恢复余数法)
■ 设某次余数为Ri,将Ri左移一位减除数进行比较并上商,即:
1-3-4-5计算机组成原理课后习题答案
第一章计算机系统概论习题答案1、答:计算机系统由硬件和软件两大部分组成。
硬件即指计算机的实体部分,它由看得见摸的着的各种电子元器件,各类光电、机设备的实物组成,如主机、外设等。
软件时看不见摸不着的,由人们事先编制成具有各类特殊功能的信息组成,用来充分发挥硬件功能,提高机器工作效率,便于人们使用机器,指挥整个计算机硬件系统工作的程序集合。
软件和硬件都很重要。
2、答:从计算机系统的层次结构来看,它通常可有五个以上的不同级组成,每一个上都能进行程序设计。
由下至上可排序为:第一级微程序机器级,微指令由硬件直接执行;第二级传统机器级,用微程序解释机器指令;第三级操作系统级,一般用机器语言程序解释作业控制语句;第四级汇编语言机器级,这一级由汇编程序支持和执行;第五级高级语言机器级,采用高级语言,由各种高级语言编译程序支持和执行,还可以有第六级应用语言机器级,采用各种面向问题的应用语言。
3、答:机器语言由0、1代码组成,是机器能识别的一种语言。
汇编语言是面向机器的语言,它由一些特殊的符号表示指令,高级语言是面向用户的语言,它是一种接近于数学的语言,直观,通用,与具体机器无关。
4、答:计算机组成是指如何实现计算机体系结构所体现的属性,它包含了许多对程序员来说是透明的硬件细节。
计算机体系结构是指那些能够被程序员所见到的计算机系统的属性,即概念性的结构与功能特性,通常是指用机器语言编程的程序员所看到的传统机器的属性,包括指令集、数据类型、存储器寻址技术、I/O机理等等,大都属于抽象的属性。
5、答:特点是:(1) 计算机由运算器、存储器、控制器和输入设备、输出设备五大部件组成(2) 指令和数据以同等的地位存放于存储器内,并可以按地址寻访(3) 指令和数据均可以用二进制代码表示(4) 指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数所在存储器中的位置(5) 指令在存储器内按顺序存放。
通常,指令是顺序执行的,在特定情况下,可根据运算结果或根据设定的条件改变执行顺序(6) 机器以运算器为中心,输入输出设备与存储器的数据传送通过运算器。
计算机组成原理答案
习题解答(唐朔飞版)第一章思考题与习题1.什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要?2.如何理解计算机系统的层次结构?3.说明高级语言、汇编语言和机器语言的差别和联系。
4.如何理解计算机组成和计算机体系结构?5.冯·诺依曼计算机的特点是什么?6.画出计算机硬件组成框图,说明各部件的作用及计算机硬件的主要技术指标。
7.解释下列概念:主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。
8.解释下列英文代号:CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS。
9.根据迭代公式)(21nn yxyx+=,设初态y0=1,要求精度为ε,试编制求x的解题程序(指令系统自定),并结合所编程序简述计算机的解题过程。
10.指令和数据都存于存储器中,计算机如何区分它们?第一章计算机系统概论习题答案1、答:计算机系统由硬件和软件两大部分组成。
硬件即指计算机的实体部分,它由看得见摸的着的各种电子元器件,各类光电、机设备的实物组成,如主机、外设等。
软件时看不见摸不着的,由人们事先编制成具有各类特殊功能的信息组成,用来充分发挥硬件功能,提高机器工作效率,便于人们使用机器,指挥整个计算机硬件系统工作的程序集合。
软件和硬件都很重要。
2、答:从计算机系统的层次结构来看,它通常可有五个以上的不同级组成,每一个上都能进行程序设计。
由下至上可排序为:第一级微程序机器级,微指令由硬件直接执行;第二级传统机器级,用微程序解释机器指令;第三级操作系统级,一般用机器语言程序解释作业控制语句;第四级汇编语言机器级,这一级由汇编程序支持合执行;第五级高级语言机器级,采用高级语言,由各种高级语言编译程序支持合执行,还可以有第六级应用语言机器级,采用各种面向问题的应用语言。
3、答:机器语言由0、1代码组成,是机器能识别的一种语言。
计算机组成原理与汇编语言3
补码加减运算
注意:求一个数的补码: 正数时,补码和原码相同; 负数时, 对原码除符号位外求反加1。
例1: 1: y = -0.0110 [y]补 = 1.1010 例2: y = 0.0111 [y]补 = 0.0111 [-y]补 = 1.1001 [-y]补 = 0.0110
第三章 数值运算及运算器
例(3):按位清
设:A=10010010,将A最高位清“0” 设:B=01111111 10010010 A ∧ 01111111 B ——————— 00010010 A
第三章 数值运算及运算器
例(4):按位测试
设:A=10010010,测A最高位是否为“1”; 设: B=10000000 10010010 ∧ 10000000 ——————— 10000000 结果不全为“0”,表明被测码的被测位为“1”。 结果为全“0”,表明被测码的被测位为“0”。
第三章 数值运算及运算器
(一)对进位公式的分析 设相加的两个n位操作数为: A=An-1An-2…Ai..A0 B=Bn-1Bn-2…Bi..B0
Ci+1 = AiBi + (Ai⊕Bi) Ci —— 进位逻辑表达式 设:Gi = AiBi —— 进位产生函数(Carry Generate Function)
二、溢出检测
1. 采用一个符号位判断
规则: • 当两个同号数相加,若所得结果符号与两数符号不同, 则表明溢出。 • 设An、Bn分别表示两个操作数的符号; Sn表示结果 的符号, 则有: 溢出=AnBnSn + AnBnSn
63+66=129 0,0111111 + 0,1000010 1,0000001
计算机组成原理课后习题参考答案
计算机组成原理答案第一章计算机系统概论1.比较数字计算机和模拟计算机的特点。
解:模拟计算机的特点:数值由连续量来表示,运算过程是连续的;数字计算机的特点:数值由数字量(离散量)来表示,运算按位进行。
两者主要区别见P1 表1.1。
2.数字计算机如何分类?分类的依据是什么?解:分类:数字计算机分为专用计算机和通用计算机。
通用计算机又分为巨型机、大型机、中型机、小型机、微型机和单片机六类。
分类依据:专用和通用是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。
通用机的分类依据主要是体积、简易性、功率损耗、性能指标、数据存储容量、指令系统规模和机器价格等因素。
4.冯. 诺依曼型计算机的主要设计思想是什么?它包括哪些主要组成部分?解:冯. 诺依曼型计算机的主要设计思想是:存储程序和程序控制。
存储程序:将解题的程序(指令序列)存放到存储器中;程序控制:控制器顺序执行存储的程序,按指令功能控制全机协调地完成运算任务。
主要组成部分有:(控制器、运算器)(CPU的两部分组成)、存储器、输入设备、输出设备(I/O设备)。
5.什么是存储容量?什么是单元地址?什么是数据字?什么是指令字?解:存储容量:指存储器可以容纳的二进制信息的数量,通常用单位KB、MB、GB来度量,存储容量越大,表示计算机所能存储的信息量越多,反映了计算机存储空间的大小。
单元地址:简称地址,在存储器中每个存储单元都有唯一的地址编号,称为单元地址。
数据字:若某计算机字是运算操作的对象即代表要处理的数据,则称数据字。
指令字:若某计算机字代表一条指令或指令的一部分,则称指令字。
6.什么是指令?什么是程序?解:指令:计算机所执行的每一个基本的操作。
程序:解算某一问题的一串指令序列称为该问题的计算程序,简称程序。
7.指令和数据均存放在内存中,计算机如何区分它们是指令还是数据?解:一般来讲,在取指周期中从存储器读出的信息即指令信息;而在执行周期中从存储器中读出的信息即为数据信息。
计算机组成原理第三章部分课后题答案(唐朔飞版)
计算机组成原理第三章部分课后题答案(唐朔飞版)3.2 总线如何分类?什么是系统总线?系统总线又分为几类,它们各有何作用,是单向的,还是双向的,它们与机器字长、存储字长、存储单元有何关系?总线分类方式:·按数据传送方式:并行传输总线、串行传输总线·按总线使用范围:计算机(包括外设)总线、测控总线、网络通信总线·按连接部件:片内总线、系统总线、通信总线系统总线:是指CPU、主存、I/O设备各大部件之间的信息传输线。
系统总线分类:·数据总线:用来传输各功能部件之间的数据信息,双向传输,位数与机器字长、存储字长有关·地址总线:主要用来指出数据总线上的源数据或目的数据在贮存单元的地址或I/O设备的地址,单向传输,位数与存储单元的个数有关,地址线为n根,则存储单元个数有2的n次方·控制总线:用来发出各种控制信号,对任一条控制线而言,为单向传输,对控制总线总体而言,可认为双向传输3.4 为什么要设置总线判优控制?常见的集中式总线控制有几种,各有何特点,哪种方式响应时间最快,哪种方式对电路故障最敏感?总线上的信息传送是由主设备启动的,若多个主设备同时要使用总线,则由总线控制器的判优、仲裁逻辑按一定的优先等级顺序确定哪个主设备使用总线。
集中式总线判优控制的三种方式·链式查询1、只需很少的几根线就能按一定优先次序实现总线控制2、很容易扩充设备3、对电路故障很敏感,且优先级别低的设备可能很难获得请求·计数器定时查询1、计数可以从0开始,此时一旦设备的优先次序被固定,设备的优先级就按0,1,2,…,n的顺序降序排列,且固定不变2、计数也可以从上一次计数的终止点开始,即是一中循环方法,此时设备使用总线的优先级相等3、计数器的初始值还可以有程序设置,故优先次序可任意改变·独立请求方式1、响应速度快2、优先次序灵活(通过程序改变)3、控制线数量多,总线控制更复杂3.5 解释概念:总线宽度、总线带宽、总线复用、总线的主设备(或主模块)、总线的从设备(或从模块)、总线的传输周期、总线的通信控制。
计算机组成原理:运算方法和运算器单元测试与答案
一、单选题1、补码加/减法是指()。
A.操作数用补码表示,由数符决定两尾数的操作,符号位单独处理。
B.操作数用补码表示,两尾数相加/减,符号位单独处理;C.操作数用补码表示,连同符号位直接相加,减某数用加某数的机器负数代替,结果的符号在运算中形成;D.操作数用补码表示,符号位和尾数一起参加运算,结果的符号与加/减数相同;正确答案:C2、8位补码10010011等值扩展为16位后,其机器数为()。
A.1000000010010011B.0000000010010011C.1111111110010011D.1111111101101101正确答案:C3、在定点二进制运算器中,减法运算一般通过()来实现。
A.补码运算的二进制减法器B.补码运算的二进制加法器C.补码运算的十进制加法器D.原码运算的二进制减法器正确答案:B4、在双符号位判别溢出的方案中,出现正溢出时,双符号位应当为()。
A.11B.01C.00D.10正确答案:B5、当定点运算发生溢出时,应进行()。
A.向左规格化B.发出出错信息C.舍入处理D.向右规格化正确答案:B6、四片74181 ALU和一片74182 CLA器件相配合,具有如下进位传递功能:()。
A.行波进位B.组内行波进位,组间先行进位C.组内先行进位,组间行波进位D.组内先行进位,组间先行进位正确答案:D7、在串行进位的并行加法器中,影响加法器运算速度的关键因素是()。
A.元器件速度B.门电路的级延迟C.各位加法器速度的不同D.进位传递延迟正确答案:D8、当定点运算发生溢出时,应进行()。
A.向右规格化B.向左规格化C.舍入处理D.发出出错信息正确答案:D9、原码加减交替除法又称为不恢复余数法,因此()。
A.不存在恢复余数的操作B.当某一步运算不够减时,做恢复余数的操作C.当某一步余数为负时,做恢复余数的操作D.仅当最后一步余数为负时,做恢复余数的操作正确答案:D10、4片74181ALU和1片74182CLA相配合,具有()传递功能。
计算机组成原理第3章 运算器和运算方法
第三章运算方法和运算器3.1补码的移位运算1、左移运算:各位依次左移,末位补0对于算术左移,若没有改变符号位,左移相当于乘以2。
2、右移运算:算术右移:符号位不变,各位(包括符号位)依次右移。
(相当于除以2)逻辑右移:最高位补0,其余各位依次右移例1:已知X=0.1011 ,Y=-0.0101 求 [0.5X]补;[0.25X]补;[-X]补;2[-X]补;[0.5Y]补;[0.25Y]补; [-Y]补;2[-Y]补[X]补=0.1011 [Y]补=1.1011[0.5X]补=0.01011 [0.5Y]补=1.11011[0.25X]补=0.001011 [0.25Y]补=1.111011[-X]补=1.0101 [-Y]补=0.01012[-X]补=0.1010 (溢出) 2[-Y]补=0.10103.2定点加减法运算及其实现3.2.1 补码加减法运算方法由于计算机中的进行定点数的加减运算大都是采用补码。
(1)公式:[X+Y]补=[X]补+[Y]补[X-Y]补=[X]补+[-Y]补(证明过程见教材P38)例1 X=0.001010 Y=-0.100011 求[X-Y]补,[X+Y]补解:[X]补=0.001010 [-Y]补=0.100011则 [X-Y]补=[X]补+[-Y]补=0.001010 + 0.100011=0.101101 [X]补=0.001010 [Y]补=1.011101则 [X+Y]补=[X]补+[Y]补=0.001010 + 1.011101=1.100111例2:已知X=+0.25,Y=-0.625,求X+Y; X-Y写出计算的过程.例3:已知X=25,Y=-9,求X+Y; X-Y写出计算的过程.例4:已知X=-25,Y=-9,求X+Y; X-Y写出计算的过程.解: (8位二进制表示)例2: X=0.0100000 Y=-0.1010000[X]补=0.0100000 [Y]补=1.0110000则 [X+Y]补=[X]补+[Y]补=0.0100000 + 1.0110000=1.1010000[X+Y]原=-0.0110000=(-0.375)D[X]补=0.0100000 ,[-Y]补=0.1010000则 [X-Y]补 = [X]补+[-Y]补 = 0.0100000+0.1010000=0.1110000[X+Y]原 = 0.1110000 =(0.875)D例3: X=+0011001 Y=-0001001[X]补=00011001,[Y]补=11110111则 [X+Y]补 = [X]补+[Y]补= 00011001 + 11110111= 00010000[X+Y]原 =+0010000=(+16)D[X]补= 00011001 ,[-Y]补= 00001001则 [X-Y]补 = [X]补+[-Y]补= 00011001 + 00001001= 00100010[X+Y]原 = +0100010 =(34)D例4: X=-0011001 Y=-0001001[X]补=11100111,[Y]补=11110111则 [X+Y]补 = [X]补+[Y]补= 11100111 + 11110111[X+Y]原 =-00100010=(-34)D[X]补= 11100111 ,[-Y]补= 00001001则 [X-Y]补 = [X]补+[-Y]补= 11100111 + 00001001= 11110000[X+Y]原 = -0010000 =(-16)D3.2.2 定点加减法运算中的溢出问题溢出:运算结果大于机器所能表示的最大正数或者小于机器所能表示的最小负数.溢出只是针对带符号数的运算.比如:[X]补=0.1010,[Y]补=0.1001,那么[X]补+[Y]补=1.0011(溢出)溢出是一种错误,计算机中运算时必须能够发现这个现象,并加以处理判断溢出的方法:1、采用变形补码法[X+Y] 变补=[X] 变补+[Y] 变补[X-Y] 变补=[X] 变补+[-Y] 变补例1 X=0.1011 Y=0.0011 求[X+Y]补解: [X]变补 = 00.1011, [Y]变补 = 00.0011[X+Y]变补 = 00.1011 + 00.0011 = 00.1110所以 [X+Y]补 = 0.1110例2 X=0.1011 Y=0.1001 求[X+Y]补解: [X]变补 = 00.1011 [Y]变补 = 00.1001[X+Y]变补 = 00.1011 + 00.1001 = 01.0100运算结果的两符号位是01,不相同,发生溢出,因第一符号位是0,代表正数,所以称这种溢出为“正溢出”。
《计算机组成原理》课后题答案_清华大学出版_秦磊华_吴非··
1.l 解释下列名词摩尔定律:对集成电路上可容纳的晶体管数目、性能和价格等发展趋势的预测,其主要内容是:成集电路上可容纳的晶体管数量每18个月翻一番,性能将提高一倍,而其价格将降低一半。
主存:计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取。
控制器:计算机的指挥中心,它使计算机各部件自动协调地工作。
时钟周期:时钟周期是时钟频率的倒数,也称为节拍周期或T周期,是处理操作最基本的时间单位。
多核处理器:多核处理器是指在一枚处理器中集成两个或多个完整的计算引擎(内核)。
字长:运算器一次运算处理的二进制位数。
存储容量: 存储器中可存二进制信息的总量。
CPI:指执行每条指令所需要的平均时钟周期数。
MIPS:用每秒钟执行完成的指令数量作为衡量计算机性能的一个指标,该指标以每秒钟完成的百万指令数作为单位。
CPU时间:计算某个任务时CPU实际消耗的时间,也即CPU真正花费在某程序上的时间。
计算机系统的层次结构:计算机系统的层次结构由多级构成,一般分成5级,由低到高分别是:微程序设计级,机器语言级,操作系统级,汇编语言级,高级语言级。
基准测试程序:把应用程序中使用频度最高的那那些核心程序作为评价计算机性能的标准程序。
软/硬件功能的等价性:从逻辑功能的角度来看,硬件和软件在完成某项功能上是相同的,称为软/硬件功能是等价的,如浮点运算既可以由软件实现,也可以由专门的硬件实现。
固件:是一种软件的固化,其目的是为了加快软件的执行速度。
可靠性:可靠性是指系统或产品在规定的条件和规定的时间内,完成规定功能的能力。
产品可靠性定义的要素是三个“规定”:“规定条件”、“规定时间”和“规定功能”。
MTTF:平均无故障时间,指系统自使用以来到第一次出故障的时间间隔的期望值。
MTTR:系统的平均修复时间。
MTBF:平均故障间隔时间,指相邻两次故障之间的平均工作时间。
可用性:指系统在任意时刻可使用的概率,可根据MTTF、MTTR和MTBF等指标计算处系统的可用性。
计算机组成原理部分作业答案
000001
够减商上1
00.11010
000010
左移
+ 11.00001
+ [-Y]补
11.11011
000010
不够减,商上0
11.10110
000100
左移
+ 00.11111
+ [Y]补
00.10101
000101
够减商上1
01.01010
001010
左移
• 被除数(余数) 01.01010
5.8 已知Pentium微处理器各段寄存器的内容如下:DS=0800H,CS=1800H ,SS=4000H,ES=3000H。又disp字段的内容为2000H。请计算: (1)执行MOV指令,且已知为直接寻址,请计算有效地址。 (2)IP(指令指针)的内容为1440,请计算出下一条指令的地址(假设顺 序执行)。 (3)今将某寄存器内容直接送入堆栈,请计算出接收数据的存储器地址 。 解: (1)有效地址=DS*10H+DISP=8000H+2000H=A000H (2)下一条指令的地址=CS*10H+1440+“1”=19441H (3)栈顶=SS*10H+SP-2=40000H+0000H-2=3FFFEH
这样,每个芯片占用的地址空间如下:
ROM芯片:0000H…1FFFH
译码器输出:CS0#
RAM(1 #):2000H…3FFFFH
译码器输出:CS1#
RAM(2#):4000H…5FFFH
译码器输出:CS2#
空闲:6000H…FFFFH
译码器输出:CS3#…CS7#
4)连线图
OE#
译
计算机组成原理第3章
补码加、减运算举例
【例】已知x =-0.10111,y=-0.10001,求 1/2(x+y) 。 解: ∵[x]变补=11.01001,[y]变补=11.01111, ∴[ 1/2x]变补=11.10101,[ 1/2y]变补=11.10111;[ 1/2x] 变补是对[x]变补右移一位得到的,由于移位时丢掉了最低位1, 所以对[x]变补右移一位得到的结果(11.10100)进行修正, 即在最低位加1,便得到[ 1/2x]变补。 [ 1/2(x+y)]变补= [ 1/2x]变补+[ 1/2y]变补=11.10101+ 11.10111=11.01100 溢出判断:由于结果的双符号位相同,未产生溢出,运算结果正 确
2、补码加、减运算具体实现
补码表示的数的加减运算可以采用同一个电路实现。其核 心部分是全加器(运算电路的延迟时间
则全加器的Si的时间延迟为6T(每级异或门的延迟为3T),Ci+1的 时间延迟为5T。 则:一个n位的行波进位加法器的时间延迟ta为: ta=n×2T+9T
原码一位乘法举例
举例:假定 X=0.1101 Y=0.1011
原码一位乘法实现电路
实现原理框图:
Cj A Af CR 加法器 =1 Cn C Cn 移 位 脉 冲
&
& Bf C f Cn CT Q
启动
时钟脉冲
B
结束
2.2 2、原码两位乘法原理
两位乘数的取值可以有四种可能组合,每种组合对应于以下操作: 00 相当于0×X,部分积Pi右移2位,不进行其它运算; 01 相当于1×X,部分积Pi+ X后右称2位; 10 相当于2×X,部分积 Pi+ 2X后右移2位; 11 相当于3×X,部分积 Pi + 3X后右移2位。 上面出现了 + 1X, + 2X, + 3X 三种情况,+X 容易实现,+2X可把X左移1 位得2X,在机器内通常采用向左斜1位传送来实现。可是+3X一般不能一次完成, 如分成两次进行,又降低了计算速度。解决问题的办法是备: 以 +(4X-X) 来 代替 +3X运算,在本次运算中只执行 -X, 而 +4X 则归并到下一步执行,因为 下一步运算时,前一次的部分积已右移了两位,上一步欠下的 +4X 在本步已 变成 +X。实际线路中要用一个触发器C来记录是否欠下+4X的操作尚未执行, 若是,则1→C。因此实际操作要用Yi-1 Yi C三位的组合值来控制乘法运算操 作,运算规则如表2.12所示。
计算机专业基础综合计算机组成原理(运算方法和运算器)模拟试卷1
计算机专业基础综合计算机组成原理(运算方法和运算器)模拟试卷1(总分:52.00,做题时间:90分钟)一、单项选择题(总题数:8,分数:16.00)1.下列数中最小的数为( )。
A.(101001) 2B.(52) 8C.(101001) NCD√D.(233) 162.针对8位二进制数,下列说法中正确的是( )。
A.-127的补码为10000000B.-127的反码等于0的移码√C.+1的移码等于-127的反码D.0的补码等于-1的反码3.32位浮点数格式中,符号位为1位,阶码为8位,尾数为23位。
则它所能表示的最大规格化正数为( )。
A.+(2-2 -23 )×2 +127√B.+(1-2 -23 )×2 +127C.+(2-2 -23 )×2+2 +255D.2 +127-2 -234.若某数x的真值为-0.1010,在计算机中该数表示为1.0110,则该数所用的编码方法是( )码。
A.原B.补√C.反D.移5.长度相同但格式不同的2种浮点数,假设前者阶码长、尾数短,后者阶码短、尾数长,其他规定均相同,则它们可表示的数的范围和精度为( )。
A.两者可表示的数的范围和精度相同B.前者可表示的数的范围大但精度低√C.后者可表示的数的范围大且精度高D.前者可表示的数的范围大且精度高6.运算器虽有许多部件组成,但核心部分是( )。
A.数据总线B.算术逻辑运算单元√C.多路开关D.通用寄存器7.在定点运算器中,无论采用双符号位还是单符号位,必须有( ),它一般用( )来实现。
A.译码电路,与非门B.编码电路,或非门C.溢出判断电路,异或门√D.移位电路,与或非门8.下溢指的是( )。
A.运算结果的绝对值小于机器所能表示的最小绝对值B.运算的结果小于机器所能表示的最小负数√C.运算的结果小于机器所能表示的最小正数D.运算结果的最低有效位产生的错误二、计算题(总题数:13,分数:26.00)9.设[x] 补 =x 0.x 1 x 2…x n,求证: [1/2x]=x 0.x 0 x 1 x 2…x n__________________________________________________________________________________________正确答案:(正确答案:因为x=-x 0 + x i 2 -i,所以x i 2 -i =-x 0 + x i 2 -i =-x 0 + x i 2 -(i+1)根据补码与真值的关系则有 [1/2x] 补 =x 0.x 0 x 1 x 2…x n由此可见,如果要得到[] 补,只要将[x] 补连同符号位右移i位即可。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章运算方法与运算器
3.1定点数运算及溢出检测随堂测验
1、定点运算器可直接进行的运算是() (单选)
A、十进制数加法运算
B、定点数运算
C、浮点数运算
D、定点数和浮点数运算
2、设计计算机字长为8位,两个十进制数X = -97 ,Y = 63, [x]补- [y]补的结果为()(单选)
A、01100000
B、11011110
C、负溢出
D、正溢出
3、下列关于定点运算溢出的描述中,正确的是( ) (多选)
A、补码数据表时,同号数相加可能发生溢出
B、补码数据表时,异号数相减可能发生溢出
C、参加运算的两个数,当作为有符号数和无符号数进行加法运算时,不可能两者都溢出
D、溢出检测既可用硬件实现,也可用软件实现
4、设X为被加(减)数,Y为加(减)数,S为运算结果,均采用补码数据表示,下列关于溢出电路设计的描述中,正确的是()(多选)
A、采用单符号位时,直接用X、Y和S的符号位就可设计溢出监测电路
B、采用双符号位时,可直接用S的双符号位设计溢出检测电路
C、采用单符号位时,可直接用X、Y最高有效数据位运算后的进位位和S的进位设计溢出监测电路
D、对无符号数的加/减运算,可利用运算器的进位信号设计溢出检测电路
3.2 定点数补码加、减运算器设计随堂测验
1、如图所示为基于FA的运算器:为了利用一位全加器FA并配合使用控制信号P,当P= 0/1时实现A、B两个数的加法/减法运算,图中空白方框处电路的逻辑功能应该是()(单选)
A、与门
B、或门
C、异或门
D、非门
2、如图所示为带溢出检测功能的运算器该电路完成的溢出检测功能是()(多选)
A、带符号数的加法溢出检测
B、带符号数的加法溢出检测
C、无符号数的加法溢出检测
D、无符号数减法的溢出检测
3、下列关于并行进位的描述中,正确的是()(多选)
A、并行进位可以提高运算速度
B、并行进位模式下,各进位位采用不同电路各自产生,相互间不再有依存关系
C、采用先行进位部件和ALU模块可构建长度可变的并行进位运算器
D、并行进位只对加法有效,而对减法无效
4、四位并行ALU中有两个特殊的输出端,分别是:G =A3B3+(A3+B3)(A2B2+(A2+B2)(A1B 1+ (A1+B1) A 0B0)) 为进位产生函数,P=(B3+A3) (B2+A2)( A1+B1 ) (A0+B0)为进位传递函数下列关于P、G的描述中,正确的是()(多选)
A、设计P和G的目的是为了构建位数更长的并行ALU
B、P和G对算术运算和逻辑运算都有意义
C、P的作用是将本片ALU的最低进位输入位传递到本片ALU的最高进位输出端
D、G的作用是根据参与运算的两个数据产生本片ALU的最高进位输出
3.3 原码一位乘法随堂测验
1、设计算机字长为8位,X = - 19,对该分别执行算术左移和逻辑左移一位后的结果分别为()(单选)
A、11011010 ,11011010
B、11110010 ,11110010
C、11011000 ,11011000
D、11110000 ,11110000
2、设计算机字长为8位,X = - 19,对该分别执行算术右移和逻辑右移一位后的结果分别为()(单选)
A、11111001,11111001
B、11111001,01111001
C、11110110,01110110
D、11110110,11110110
3、关于原码一位乘法的下列描述中,正确的是()(多选)
A、数据取绝对值参加运算
B、符号位单独处理
C、乘法执行过程中的所有移位都是算术移位
D、最后的结果由部分积寄存器和乘数寄存器共同保存
4、计算机字长为n位, 下列关于原码一位乘法操作过程的描述中,正确的是() (多选)
A、乘法过程中共执行n 次算术右移和n 次加法运算
B、乘法过程中共执行n -1次算术右移和n-1 次加法运算
C、乘法过程中,部分积加0 还是加x的绝对值,取决于此时的Yn
D、乘法过程中右移部分积是为了使部分积与下次的加数按位对齐
3.4 补码一位乘法随堂测验
1、16位补码0X 8FA0扩展为32位的结果是() (单选)
A、0X 0000 8FA0
B、0X FFFF 8FA0
C、0X FFFF FFA0
D、0X8000 8FA0
2、计算机字长为n位, 下列关于补码一位乘法操作过程的描述中,正确的是() (多选)
A、乘法过程中共执行n 次加法和n-1 部分积右移
B、乘法过程中共执行n -1次算术右移和n-1 次加法运算
C、乘法过程中,部分积加0 、[x]补还是[-x]补,取决于此时的Yn+1 与Yn的差
D、乘法过程中右移部分积的目的是为了使部分积与下次的加数对齐
3、关于补码码一位乘法的下列描述中,正确的是()(多选)
A、符号位和数据位一起参加运算
B、运算开始前,需要在乘数寄存器Y后面补上Yn+1且其初值为0
C、乘法执行过程中的对部分积的移位是算术右移
D、最后的结果由部分积寄存器和乘数寄存器共同保存
3.5 乘法运算器设计随堂测验
1、下图为原码一位乘法器原理图正确的是()(单选)
A、A: 部分积寄存器B:乘数寄存器C: |X| D: Yn
B、A: 部分积寄存器B:乘数寄存器C: |X| D: Yn+1
C、A: 被乘数寄存器B:乘数寄存器C: |X| D: Yn
D、A: 被乘数寄存器B:乘数寄存器C: |X| D: Yn+1
2、下图为补码一位乘法原理图正确的是() (单选)。