《计算机组成原理》作业答案.docx

上传人:b****1 文档编号:400748 上传时间:2022-10-09 格式:DOCX 页数:16 大小:32.10KB
下载 相关 举报
《计算机组成原理》作业答案.docx_第1页
第1页 / 共16页
《计算机组成原理》作业答案.docx_第2页
第2页 / 共16页
《计算机组成原理》作业答案.docx_第3页
第3页 / 共16页
《计算机组成原理》作业答案.docx_第4页
第4页 / 共16页
《计算机组成原理》作业答案.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

《计算机组成原理》作业答案.docx

《《计算机组成原理》作业答案.docx》由会员分享,可在线阅读,更多相关《《计算机组成原理》作业答案.docx(16页珍藏版)》请在冰豆网上搜索。

《计算机组成原理》作业答案.docx

《计算机组成原理》作业答案

计算机组成原理作业1

1、下面给出的几个十进制的数化成二进制的数(无法精确表示时,小数点后取3位)、八进制的数、十进制的数:

7+3/4-23/6427.5-125.93755.43

参考答案:

十进制数二进制数八进制数十六进制数

7+3/4111.117.67.C

-23/64-0.010111-0.27-0.5C

27.511011.133.41B.8

-125.9375-1111101.1111-175.74-7D.F

5.43101.0115.35.68

2、下面给出的几种不同进制(以下标形式给出在右括号之后)的数化成十进制的数:

(1010.0101)2,-(1.101)2,(23.47)8,-(1A3C.D)16

参考答案:

(1010.0101)2=(10.3125)10

-(1.101)2=-(357.625)10

(23.47)8=(19+39/64)10

-(1A3C.D)16=-(6716+13/16)10

3、写出下面两组数的原、反、补码表示,并用补码计算每组数的和、差。

双符号位的作用是什么?

它只出现在什么电路之处?

⑴X=0.1101Y=-0.0111

⑵X=Y=-00101011

参考答案:

十进制数原码表示反码表示补码表示X+YX-Y

0.1101001101001101001101000110011100

-0.01111101111110001110010.0110溢出

00000000(和)

-001010111100101011111100(差)

双符号位用于简化补码加减运算时的判别溢出,它只出现在ALU的符号运算之处。

4、解释定点运算器的功能和组成部件?

以Am2901芯片为实例,来介绍定点运算器的有关知识,你的认可程度如何?

参考答案:

定点运算器主要完成对整型数据、逻辑型数据的算术与逻辑运算功能。

为了快速地完成数据运算,它至少应该由下述功能部件电路组成。

⑴算术与逻辑运算部件(ALU),它在给出运算结果的同时,还给出结果的某些特征,如溢出否、有无进位、结果是否为零、为负等。

⑵能被汇编程序员直接访问与使用的通用寄存器。

⑶能自行左右移位的乘商寄存器。

⑷多路选择器。

⑸接受外部数据和送出运算结果的逻辑电路。

Am2901芯片是一个4位的位片结构的运算器部件,该芯片由四大部分组成:

⑴4位的算术逻辑运算部件(ALU),它的输出为F,两路输入分别标记为R和S,最低位进位信号Cn,它能实现3种算术运算、5种逻辑运算功能。

⑵16个4位通用寄存器组成的寄存器组,它是一个用双端口(A口和B口)控制读出、单端口(B口)控制写入的部件。

⑶一个4位Q寄存器,主要用于实现硬件的乘除法指令,能对本身的内容完成左、右移位功能,能接受ALU的输出,输出送到ALU的S输入端。

⑷5组多路数据选择器电路,每组都由4套电路组成,一套电路对应一个数据位,通过它们实现芯片内部上述3个组成部分之间的连接。

5、以教学计算机为例,说明应如何控制与操作运算器完成指定的数据运算、传送功能,为什么必须在Am2901芯片之外解决向运算器提供最低位的进位输入信号,最低、最高位的移位输入信号,以及状态位的接收与记忆问题。

设计完成如下操作功能的操作步骤和必须提供的信号:

把戏100送入RO,RO的内容送入RI,

完成RO-RI并存入ROR1的内容减1

R1的内容送入QR1和Q与C联合右移一位。

参考答案:

在教学计算机中,为控制运算器完成指定的数据运算、传送功能,必须给出要用的数据组合、ALU要完成的运算功能、和对运算结果的保存及送出办法;

选择送到ALU最低位的进位信号的状态,如何处理最高、最低位的移位信号的状态,是否保存运算结果的特征位信号等问题,都要依据指令执行的实际需求来处理,不是运算器内部功能所能包含的,故只能到Am2901芯片之外来解决。

予期功能控制信号

I8-6I5-3I2-0SSTA地址B地址SCiSSH

R0←100(64H)011000111001不用00000000

R1←R0011000100001000000010000

R0←R0-R1011001001001000100000000

R1←R1-1010001011001不用00010100

Q←R10000001000010001不用0000

与Cy联合右移

R1│Q←R1│Q100000011001000100010010

控制的作用Y的输出运算运算状态选A口选B口最低位移位

通用与Q寄存功能数据寄存器数据数据进位控制

寄存器的接收

注意:

最后一项操作中,移入通用寄存起R1最高位的不是状态触发器C的值,而是ALU运算的符号位Cy的值,通用寄存器和Q联合右移时,不能支持与C的循环移位。

6.假定X=0.0110011×211,Y=0.1101101×2-10(此处的数均为二进制),在下使用隐藏位的情况下,回答下列问题:

⑴浮点数阶码用4位移码、尾数用8位原码表示(含符号位),写出该浮点数能表示的绝对值最大、最小的(正数和负数)数值;

⑵写出X、Y的下确的浮点数表示(注意,此处预设了个小陷阱);

⑶计算X+Y;

⑷计算X×Y

参考答案:

参照模拟试题中对浮点数的运算过程完成本题运算,最终运算结果为:

(1)最大的正数0.1111111*27,最小的正数0.1000000*2-7

绝对值最大的负数-1*27,绝对值最小的负数-0.1000000*2-7

(2)[X]浮:

010101100110,[Y]浮:

001101101101

符号位阶码尾数符号位阶码尾数

(3)X+Y=0.*2+010

(4)X*Y=0.110111*2+000

计算机组成原理作业2

1、计算机指令中要用到的操作数一般可以来自哪些部件?

如何在指令中表示这些操作数的地址?

通常使用哪些寻址方式?

参考答案:

指令中要用到的操作数一般可以来自以下三个部件:

⑴CPU内部的通用寄存器,此时应在指令中给出用到的寄存器编号(寄存器名);⑵外围设备(接口)中的一个寄存器,通常用设备编号或设备入出端口地址、或设备映像地址(与内存储器地址统一编址的一个设备地址编号)来表示;⑶内存储器的一个存储单元,此时应在指令中给出该存储单元的地址。

计算机的寻址方式:

1.      立即数寻址:

操作数直接给出在指令字中,即指令字中直接给出的不同再是操作数地址,而是操作数本身。

2.      直接寻址:

操作数地址字段直接给出操作数在存储器中的地址。

3.      寄存器寻址:

指令字中直接给出操作数所在的通用寄存器的编号。

4.      寄存器间接寻址:

指令字中给出通用寄存器的编号,在寄存器中给出的不是一个操作数,而是操作数地址时,就可以用这一地址去读写存储器。

5.      变址寻址:

指令字中给出的一个数值(变址偏移量)与指定的一个寄存器(变址寄存器)的内容相加之和作为操作数的地址,用于读写存储器。

6.      相对寻址:

指令字中给出的一个数值(相对寻址偏移量)与程序计数器PC的内容相加之和作为操作数的地址或转移指令的转移地址。

7.      基地址寻址:

把在程序中所用的地址与一个特定的寄存器(基地址寄存器)的内容相加之和作为操作数的地址或指令的地址。

8.      间接寻址:

指令字的地址字段给出的既不是一个操作数的地址,也不是下一条指令的地址,而是一个操作数地址的地址,或一条指令地址的地址。

9.      堆栈寻址:

堆栈是存储器中一块特定的按“后进先出”原则管理的存储区,该存储区中被读写单元的地址是用一个特定的寄存器命同的,该寄存器被称为堆栈指针(SP)。

如果有些指令,其操作码部分已经指明一个操作数为堆栈中的一个单元的内容,则它已经约定将使用SP访问该单元,故不必在指令的操作数地址字段中另加说明。

2、什么是形式地址?

简述对变址寻址、相对寻址、基地址寻址应在指令中给出些什么信息?

如何得到相应的实际(有效)地址?

各自有什么样的主要用法?

参考答案:

表示在指令中的操作数地址,通常被称为形式地址;用这种形式地址并结合某些规则,可以计算出操作数在存储器中的存储单元地址,这一地址被称为物理地址。

变址寻址:

指令字中给出的一个数值(变址偏移量)与指定的一个寄存器(变址寄存器)的内容相加之和作为操作数的地址,用于读写存储器。

主要适合于处理数组型数据。

相对寻址:

指令字中给出的一个数值(相对寻址偏移量)与程序计数器PC的内容相加之和作为操作数的地址或转移指令的转移地址。

与变址寻址的区别是,计算实际地址所用的寄存器已确定为PC,故无须再在指令中指定;而变址寻址中的可用的变址寄存器往往有多个,通常要在指令中指定本次要使用哪一个。

主要用于指令转移。

基地址寻址:

把在程序中所用的地址与一个特定的寄存器(基地址寄存器)的内容相加之和作为操作数的地址或指令的地址。

主要用于为多道程序或浮动地址程序定位存储器空间。

基地址寄存器中的值是由系统程序用特权指令设定的,用户不能在自己的程序对其进行修改。

3、用教学机的指令系统,设计一个程序,实现从键盘读入无符号的整型数据,到计算机内转达换成二进制数并保存在累加器RO中,要求有适当的检查各种操作错误的能力。

参考答案:

A2040

2040MVRDR2,0030;用于判断数字字符的下界值

2041MVRDR3,0039;用于判断数字字符的上界值

2042MVRDR4,0000

2043IN81;以下4句检查有无键盘输入

2044SHRR0

2045SHRR0

2046JRNC2043

2047IN80;把从键盘输入的一个字符读到R0的低位字节

2048INCR4;记录输入的数字个数

2049MVRDR1,00FF

2050ANDR0,R1

2051CMPR0,R2;判输入的字符<字符0否

2052JRNC2098;是,则转到程序处理

2053CMPR3,R0;判输入的字符>字符9否

2054JRNC2098;是,则转到程序处理

2055CMPR0,0030;以下语句是将数字字符转成数值

2056JRNZ2059

2057MVRDR5,0000

2058JMPA2095

2059CMPR0,0031

2060JRNZ2062

2061MVRDR5,0001

2062JMPA2095

2063CMPR0,0032

2064JRNZ2066

2065MVRDR5,0002

2066JMPA2095

2067CMPR0,0030

2068JRNZ2070

2069MVRDR5,0003

2070JMPA2095

2071CMPR0,0030

2072JRNZ2074

2073MVRDR5,0004

2074JMPA2095

2075……….

2095PUSHR5

2096JMPA20

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1