计算机组成原理答案(张功萱等编著)终极完整版 下载本文

内容发布更新时间 : 2024/5/28 21:10:44星期一 下面是文章的全部内容请认真阅读。

整理人:杜鹏

00 10100 11 00111 0101010

3.11 说明定点补码和浮点补码加减运算的溢出判断方法。 答:⑴ 定点补码加减运算的溢出判断方法:

① 根据两个操作数的符号与结果的符号判别溢出:ffffffffffsysxsyxsyxOVR=+=

② 根据两数相加时产生的进位判别溢出:OVR=Cf⊕C1 ③ 根据变形补码运算后的符号判别溢出: sf1sf2=00,表示结果为正数,无溢出; sf1sf2=11,表示结果为负数,无溢出; sf1sf2=01,表示结果为正溢出; sf1sf2=10,表示结果为负溢出。

⑵ 浮点补码加减运算的溢出判断方法

浮点补码加减运算的溢出通常是指浮点数上溢,浮点数是否溢出是由阶码是否大于浮点数所能表示的最大正阶来判断的。

例如,设浮点数的阶码采用补码表示,双符号位,这时浮点数的溢出与否可由阶码的符号进行判断:

若阶码 [j]补=01 ××?×,则表示出现上溢,需作溢出处理; 符号

若阶码 [j]补=10 ××?×,则表示出现下溢,按机器零处理。 3.14 利用用十进制加减运算算法计算下列各题:

(1) 125+436=? (2) 125-436=? (3) 436-125=? 解: (1) 125+436=561 (2) 125-436=-311 (3) 436-125=311

3.16 设有一个16位定点补码运算器,数据最低位的序号为1。运算器可实现下述功能: (1) A±B→A

(2) B×C→A、C(乘积高位在A中) (3) A÷B→C(商在C中)

请设计并画出运算器第3位及A、C寄存器第三位输入逻辑。加法器本身逻辑可以不画,原始操作数输入问题可以不考虑。 解:见附页

3.19 设一个8位寄存器中的内容为十六进制数C5H,连续经过一次算术右移、一次逻辑左移、一次大循环右移、一次小循环左移。写出每次移位后寄存器的内容和进位标志C的状态。 解:C5H=11000101 C 寄存器

一次算术右移: 1 11100010 一次逻辑左移: 1 11000100 一次大循环右移: 0 11100010 一次小循环左移: 1 11000101

3.21 选择题

(1) 运算器的核心部分是 C 。

A. 数据总线 B. 累加寄存器 C. 算术逻辑运算单元 D. 多路开关

整理人:杜鹏

(2) 在浮点运算中下面的论述正确的是 C 。

A. 对阶时应采用向左规格化

B. 对阶时可以使小阶向大阶对齐,也可以使大阶向小阶对齐

C. 尾数相加后可能会出现溢出,但可采用向右规格化的方法得出正确结论 D. 尾数相加后不可能得出规格化的数

(3) 当采用双符号位进行数据运算时,若运算结果的双符号位为01,则表明运算

B 。

A. 无溢出 B. 正溢出 C. 负溢出 D. 不能判别是否溢出 (4) 补码加法运算的规则是 B 。

A. 操作数用补码表示,符号位单独处理 B. 操作数用补码表示,连同符号位一起相加 C. 操作数用补码表示,将加数变补,然后相加 D. 操作数用补码表示,将被加数变补,然后相加 (5) 原码乘除法运算要求 C 。

A. 操作数必须都是正数 B. 操作数必须具有相同的符号位 C. 对操作数符号没有限制 D. 以上都不对

(6) 进行补码一位乘法时,被乘数和乘数均用补码表示,运算时 A 。

A. 首先在乘数最末位yn后增设附加位yn+1,且初始yn+1=0,再依照ynyn+1

的值确定下面的运算。

B. 首先在乘数最末位yn后增设附加位yn+1,且初始yn+1=1,再依照ynyn+1

的值确定下面的运算。

C. 首先观察乘数符号位,然后决定乘数最末位yn后附加位yn+1的值,再依照

ynyn+1的值确定下面的运算。

D. 不应在乘数最末位yn后增设附加位yn+1,而应直接观察乘数的末两位yn-

1yn确定下面的运算。

(7) 下面对浮点运算器的描述中正确的是 A 。

A. 浮点运算器由阶码部件和尾数部件实现。 B. 阶码部件可实现加、减、乘、除四种运算。 C. 阶码部件只能进行阶码的移位操作。 D. 尾数部件只能进行乘法和加法运算。 (8) 若浮点数的阶码和尾数都用补码表示,则判断运算结果是否为规格化数的方法是

C 。

A. 阶符与数符相同为规格化数。 B. 阶符与数符相异为规格化数。

C. 数符与尾数小数点后第一位数字相异为规格化数。 D. 数符与尾数小数点后第一位数字相同为规格化数。

(9) 已知[x]补=1.01010,[y]补=1.10001,下列答案正确的是 D 。

A. [x]补+[y]补=1.11011 B. [x]补+[y]补=0.11011 C. [x]补-[y]补=0.11011 D. [x]补-[y]补=1.11001 (10) 下列叙述中概念正确的是 D 。

A. 定点补码运算时,其符号位不参加运算。

B. 浮点运算中,尾数部分只进行乘法和除法运算。 C. 浮点数的正负由阶码的正负符号决定。

D. 在定点小数一位除法中,为了避免溢出,被除数的绝对值一定要小于除数的

整理人:杜鹏

绝对值。

3.22 填空题

(1) 在补码加减运算中,符号位与数据 ① 参加运算,符号位产生的进位 ② 。

答:① 按同样规则一起 ② 自动丢失

(2) 在采用变形补码进行加减运算时,若运算结果中两个符号位 ① ,表示发生了

溢出。若结果的两个符号位为 ② ,表示发生正溢出;为 ③ ,表示发生负溢出。

答:① -55 ② 11110010 ③ +73 ④ 01001001

(3) 在原码一位乘法的运算过程中,符号位与数值位 ① 参加运算,运算结果的符

号位等于 ② 。

答:① 分别 ② 两操作数的符号的模2加(异或)

(4) 浮点乘除法运算的运算步骤包括: ① 、 ② 、 ③ 、 ④ 和 ⑤ 。 答:① 阶码运算 ② 溢出判断 ③ 尾数乘除运算 ④ 结果规格化处理 ⑤ 舍入处理

(5) 在浮点运算过程中,如果运算结果的尾数部分不是 ① 形式,则需要进行规格化处理。设尾数采用补码表示形式,当运算结果 ② 时,需要进行右规操作;当运算结果 ③ 时,需要进行左规操作。

答:① 规格化 ② 溢出 ③ 不是规格化数

(6) 将两个8421BCD码相加,为了得到正确的十进制运算结果,需要对结果进行修正,其修正方法是 ① 。

答:① 两个8421码相加后,若相加的和数<10,则不需修正,按二进制规

则相加的结果就是正确的8421码的和数;若相加的和数≥10,则需在二进制相加的结果上加“0110”进行修正。

(7) 浮点运算器由 ① 和 ② 两部分组成,它们本身都是定点运算器,其中①要求能够进行 ③ 运算;②要求能够进行 ④ 运算。

答:① 阶码部件 ② 尾数部件 ③ 加减 ④ 加减乘除

(8) 设有一个16位的数据存放在由两个8位寄存器AH和AL组成的寄存器AX中,其中数据的高8位存放在AH寄存器中,低8位存放在AL寄存器中。现需要将AX中的数据进行一次算术左移,其操作方法是:先对 ① 进行一次 ② 操作,再对 ③ 进行一次 ④ 操作。

答:① AL ② 算术左移 ③ AH ④ 带进位循环左移

3.23 是非题

(1)运算器的主要功能是进行加法运算。 ×

(2)加法器是构成运算器的主要部件,为了提高运算速度,运算器中通常都采用并行

加法器。 √

(3)在定点整数除法中,为了避免运算结果的溢出,要求|被除数|<|除数|。 √

(4)浮点运算器中的阶码部件可实现加、减、乘、除运算。 ×

(5)根据数据的传递过程和运算控制过程来看,阵列乘法器实现的是全并行运算。 √

整理人:杜鹏

(6)逻辑右移执行的操作是进位标志位移入符号位,其余数据位依次右移1位,最低位移入进位标志位。×

第四章 作业解答

4.1 静态MOS存储器与动态MOS存储器存储信息的原理有何不同?为什么动态MOS存储器需要刷新?一般有哪几种刷新方式?

答:静态MOS存储器利用一个双稳态触发器存储一个二进制位,只要不断电就可以保持其中存储的二进制数据不丢失。

动态MOS存储器使用一个MOS管和一个电容来存储一位二进制信息。用电容来存储信息减少了构成一个存储单位所需要的晶体管的数目。

由于动态MOS存储器中的电容会产生漏电,因此DRAM存储器芯片需要频繁的刷新操作。 动态存储器的刷新方式通常有:

集中式刷新方式、分散式刷新方式、异步式刷新方式 4.2 某一64K×1位的动态RAM芯片,采用地址复用技术,则除了电源和地引脚外,该芯片还应有那些引脚?各为多少位?

解:地址线:采用地址复用技术,可为16/2=8位 数据线:1位;读写线WR/:1位;片选信号CS:1位 或 行选通信号RAS:1位;列选通信号CAS:1位

4.6 假设某存储器地址长为22位,存储器字长为16位,试问: (1)该存储器能存储多少字节信息? (2)若用64K×4位的DRAM芯片组织该存储器,则需多少片芯片?

(3)在该存储器的22位地址中,多少位用于选片寻址?多少位用于片内寻址? 答:(1)该存储器可存储222×2=223=8MB的信息。 (2)需要芯片 222×16/64×210×4=28=256

(3)22位地址中,16位用于片内寻址,6位用于选片寻址。

4.7某8位计算机采用单总线结构,地址总线17根(016A,16A为高位),数据总线8根双向(07D),控制信号WR/(高电平为读,低电平为写)。已知该机的I/O设备与主存统一编址,若地址空间从0连续编址,其地址空间分配如下:最低16K为系统程序区,由ROM芯片组成;紧接着48K为备用区,暂不连接芯片;接着60K为用户程序和数据空间,用静态RAM芯片组成;最后4K为I/O设备区。现有芯片如下:

Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y6 Y7 D0-D7 D0-D7 A13-A0 A13-A0 CS OE CS WE A B C A B C F & 3-8译码器 16KBRAM 16KBROM EN ROM:16k×8位,其中CS:为片选信号,低电平有效,OE:为读出控制,低电平读出有效。 静态RAM:16K×8位,其中CS :为片选信号,低电平有效,WE:为写控制信号,低电平写,高电平读。

译码器:3—8译码器。输出低电平有效。 与非门:扇入系数不限。

试画出主存芯片连接的逻辑图并写出各芯片地址分配表(假设存储器从0连续进行编址)。 答:⑴ 共需5片,其中1片16K×8 ROM,4片16K×8 SRAM ⑵ 各芯片地址分配表

00000H ~ 03FFFH 系统程序区 16KB 04000H ~ 0FFFFH 备用区 48KB

10000H ~ 1EFFFH 用户程序区和数据空间 60KB 1F000H ~ 1FFFFH I/O设备区 4K