您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 《计算机组成原理》作业答案
计算机组成原理作业11、下面给出的几个十进制的数化成二进制的数(无法精确表示时,小数点后取3位)、八进制的数、十进制的数:7+3/4-23/6427.5-125.93755.43参考答案:十进制数二进制数八进制数十六进制数7+3/4111.117.67.C-23/64-0.010111-0.27-0.5C27.511011.133.41B.8-125.9375-1111101.1111-175.74-7D.F5.43101.0115.35.682、下面给出的几种不同进制(以下标形式给出在右括号之后)的数化成十进制的数:(1010.0101)2,-(101101111.101)2,(23.47)8,-(1A3C.D)16参考答案:(1010.0101)2=(10.3125)10-(101101111.101)2=-(357.625)10(23.47)8=(19+39/64)10-(1A3C.D)16=-(6716+13/16)103、写出下面两组数的原、反、补码表示,并用补码计算每组数的和、差。双符号位的作用是什么?它只出现在什么电路之处?⑴X=0.1101Y=-0.0111⑵X=10111101Y=-00101011参考答案:十进制数原码表示反码表示补码表示X+YX-Y0.11010011010011010011010001100111000.01111101111110001110010.0110溢出101111010010111101001011110100101111010010010010(和)-001010111100101011111101010011110101010011101000(差)双符号位用于简化补码加减运算时的判别溢出,它只出现在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的内容减1R1的内容送入QR1和Q与C联合右移一位。参考答案:在教学计算机中,为控制运算器完成指定的数据运算、传送功能,必须给出要用的数据组合、ALU要完成的运算功能、和对运算结果的保存及送出办法;选择送到ALU最低位的进位信号的状态,如何处理最高、最低位的移位信号的状态,是否保存运算结果的特征位信号等问题,都要依据指令执行的实际需求来处理,不是运算器内部功能所能包含的,故只能到Am2901芯片之外来解决。予期功能控制信号I8-6I5-3I2-0SSTA地址B地址SCiSSHR0←100(64H)011000111001不用00000000R1←R0011000100001000000010000R0←R0-R1011001001001000100000000R1←R1-1010001011001不用00010100Q←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.11011001101*2+010(4)X*Y=0.10101101110111*2+000计算机组成原理作业21、计算机指令中要用到的操作数一般可以来自哪些部件?如何在指令中表示这些操作数的地址?通常使用哪些寻址方式?参考答案:指令中要用到的操作数一般可以来自以下三个部件:⑴CPU内部的通用寄存器,此时应在指令中给出用到的寄存器编号(寄存器名);⑵外围设备(接口)中的一个寄存器,通常用设备编号或设备入出端口地址、或设备映像地址(与内存储器地址统一编址的一个设备地址编号)来表示;⑶内存储器的一个存储单元,此时应在指令中给出该存储单元的地址。计算机的寻址方式:1.立即数寻址:操作数直接给出在指令字中,即指令字中直接给出的不同再是操作数地址,而是操作数本身。2.直接寻址:操作数地址字段直接给出操作数在存储器中的地址。3.寄存器寻址:指令字中直接给出操作数所在的通用寄存器的编号。4.寄存器间接寻址:指令字中给出通用寄存器的编号,在寄存器中给出的不是一个操作数,而是操作数地址时,就可以用这一地址去读写存储器。5.变址寻址:指令字中给出的一个数值(变址偏移量)与指定的一个寄存器(变址寄存器)的内容相加之和作为操作数的地址,用于读写存储器。6.相对寻址:指令字中给出的一个数值(相对寻址偏移量)与程序计数器PC的内容相加之和作为操作数的地址或转移指令的转移地址。7.基地址寻址:把在程序中所用的地址与一个特定的寄存器(基地址寄存器)的内容相加之和作为操作数的地址或指令的地址。8.间接寻址:指令字的地址字段给出的既不是一个操作数的地址,也不是下一条指令的地址,而是一个操作数地址的地址,或一条指令地址的地址。9.堆栈寻址:堆栈是存储器中一块特定的按“后进先出”原则管理的存储区,该存储区中被读写单元的地址是用一个特定的寄存器命同的,该寄存器被称为堆栈指针(SP)。如果有些指令,其操作码部分已经指明一个操作数为堆栈中的一个单元的内容,则它已经约定将使用SP访问该单元,故不必在指令的操作数地址字段中另加说明。2、什么是形式地址?简述对变址寻址、相对寻址、基地址寻址应在指令中给出些什么信息?如何得到相应的实际(有效)地址?各自有什么样的主要用法?参考答案:表示在指令中的操作数地址,通常被称为形式地址;用这种形式地址并结合某些规则,可以计算出操作数在存储器中的存储单元地址,这一地址被称为物理地址。变址寻址:指令字中给出的一个数值(变址偏移量)与指定的一个寄存器(变址寄存器)的内容相加之和作为操作数的地址,用于读写存储器。主要适合于处理数组型数据。相对寻址:指令字中给出的一个数值(相对寻址偏移量)与程序计数器PC的内容相加之和作为操作数的地址或转移指令的转移地址。与变址寻址的区别是,计算实际地址所用的寄存器已确定为PC,故无须再在指令中指定;而变址寻址中的可用的变址寄存器往往有多个,通常要在指令中指定本次要使用哪一个。主要用于指令转移。基地址寻址:把在程序中所用的地址与一个特定的寄存器(基地址寄存器)的内容相加之和作为操作数的地址或指令的地址。主要用于为多道程序或浮动地址程序定位存储器空间。基地址寄存器中的值是由系统程序用特权指令设定的,用户不能在自己的程序对其进行修改。3、用教学机的指令系统,设计一个程序,实现从键盘读入无符号的整型数据,到计算机内转达换成二进制数并保存在累加器RO中,要求有适当的检查各种操作错误的能力。参考答案:A20402040MVRDR2,0030;用于判断数字字符的下界值2041MVRDR3,0039;用于判断数字字符的上界值2042MVRDR4,00002043IN81;以下4句检查有无键盘输入2044SHRR02045SHRR02046JRNC20432047IN80;把从键盘输入的一个字符读到R0的低位字节2048INCR4;记录输入的数字个数2049MVRDR1,00FF2050ANDR0,R12051CMPR0,R2;判输入的字符字符0否2052JRNC2098;是,则转到程序处理2053CMPR3,R0;判输入的字符字符9否2054JRNC2098;是,则转到程序处理2055CMPR0,0030;以下语句是将数字字符转成数值2056JRNZ20592057MVRDR5,00002058JMPA20952059CMPR0,00312060JRNZ20622061MVRDR5,00012062JMPA20952063CMPR0,00322064JRNZ20662065MVRDR5,00022066JMPA20952067CMPR0,00302068JRNZ20702069MVRDR5,00032070JMPA20952071CMPR0,00302072JRNZ20742073MVRDR5,00042074JMPA20952075……….2095PUSHR52096JMPA2043;转去程序前边2043处等待下一个字符2097DECR4;去掉非数字输入2098JRZxxxx(RET);无输入退出2099MVRDR2,12100POPR02101DECR42102JRZxxxx(RET);转换完毕退出2103POPR12104R0加R1乘10,跳转到2100,R0加R1乘100,跳转到2100,……..xxxxRET4.简述计算机的控制器的功能和基本组成,微程序的控制器和组合逻辑的控制器在组成和运行原理方面的相同、不同之处表现在哪些方面?参考答案:计算机的控制器的功能是向整机每个部件提供协同运行所需要的控制信号。是依据当前正在执行的指令和它所处的执行步骤,形成并提供出在这一时刻整机各部件要用到的控制信号。控制器的基本组成:1.程序计数器(PC):能提供指令在内存中的地址的部件,服务于读取指令,并接收下条要执行的指令地址;2.指令寄存器(IR):能保存读来的指令内容的部分,以保存本指令执行的整个过程中要用到的指令本身的主要信息;3.脉冲源和启停控制逻辑:是指令执行的步骤标记线路,它标记出每条指令的各执行步骤的相对次序关系;4.时序控制信号的产生部件:依据指令内容、指令的执行步骤(时刻),也许还有些别的什么条件信号,来形成并提供出当前各部件本时刻要用到的控制信号。计算机整机各硬件系统,正是在这些信号控制下协同运行,产生预期的执行结果,也就是执行一条又一条的指令。组合逻辑的控制器和和程序的控制器是计算机中两种不同类型的控制器,其共同点
本文标题:《计算机组成原理》作业答案
链接地址:https://www.777doc.com/doc-2818252 .html