- 2022-08-30 发布 |
- 37.5 KB |
- 10页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
计算机习题讲解
习题讲解一、简述计算机的发展与微电子的发展关系。答:计算机的发展离不开微电子的进步,微电子的发展史体现了计算机的发展史(晶体管、集成电路、大规模集成电路、超大规模集成电路等),微电子的集成电路为计算机提供硬件支撑,微电子的发展促进了计算机的发展。二、计算机中数据为什么采用补码表示?答:采用补码表示可以将减法运算用加法运算电路实现,计算机中只需要设计加法器(区]补・[丫]补=[刘补+卜丫]补)。三、采用浮点数表示的优势有哪些?答:扩展了数据的表示范可以缩短高精度数据的表示长度,节省存储空间,提高其运算速度(N=M*RE)。四、如何判断补码加减法运算的溢出?答:减法运算可以改用加法运算实现。1、用被加数/加数和结果的符号fA、fB、fS来判断,/fA/fBfS+fAfB/fS=l(同号数相加);2、数值最高位的进位C与符号位的进位Cf来判断,/CCf+C/Cf=l;3、用双符号位来判断(变形补码)来判断,/fSlfS2+fSl/fS2=lo五、存储器为什么采用矩阵形式设计?答:便于集成电路设计布线,更好的利用芯片面积,可以在相同的空间尺寸上做出更多的存储单元。六、计算机中为什么要设置堆栈?其原则为什么是“后进先出”?答:堆栈是为了保存子程序调用时保存现场信息和断点地址,以便子程序返回到主程序的正确位置,当子程序嵌套时,后保存的现场信息和断点地址要先恢复,所以,堆栈是以“后进先岀”原则存储信息的特殊存储器区域(可以画图说明)。子程序执行过程中堆栈的变化?\n七、存储器操作数有哪些寻址方式?举例说明。1、直接寻址;指令字存储器指令字存储器!s10P・・・A0P・・・MA操作数操作数(a)(b)图5.3直接寻址方式2、寄存器间接寻址;指令字指令字(a)寄“器间址(b)存储器间址存储器图5.6间接寻址过程3、存储器间接寻址;如图5.6(b)图5.4基址寻址过程\n5、变址寻址;图5.5变址寻址过程存储器操作数>数组图中通用寄存器应为变址寄存器。6、相对寻址;\nPC目的二PC当前+相对量Disp(Disp可正、可负)7、堆栈寻址。堆栈指针SP寻址,与寄存器间接寻址类似,但是必须先修改SP,而寄存器间接寻址不需要修改。有入栈PUSH和出栈POP指令。\n八、程序员能见到的寄存器311615870EAX1AXAccumulatorEBX1BXBaseECX1exCountEDX1DXDataEBPBPBasePointerESISISourceIndexEDIDIDestinationIndex150DSDataSegmentSSStackSegmentESExtraSegmentFSGSEIPInstructionPointerESPStackPointerEFLAGSFlags\n图5・10程序员能见到的寄存器(P109)\n九、某16位CPU内有8个通用寄存器,存储器以字节为单位,传送指令有①立即数送寄存器内、②寄存器数送寄存器内和③存储器数送寄存器内,且存储器操作数寻址方式只有①直接寻址和②寄存器间接寻址,请编写所有传送指令的最短机器码。答:1、8个寄存器要3位编码选择其中一个寄存器。传送类型有2、立即数送寄存器内传送指令需要2个字节,其中第二个字节用来原样表示该立即数,第一个字节包括操作码和目的数寄存器。3、传送方式有4种(包括存储器操作数2种寻址方式),需要2位编码选择其中一种方式。①立即数送寄存器内传送方式8个目的寄存器选一未用到D7D6D5D4D3D2D1DO第一个字节说明000008个目的寄存器选一;双字节指令。0000111D7D6D5D4D3D2D1DO第二个字节为立即数②寄存器数送寄存器内传送方式8个目的寄存器选一8个源寄存器选一D7D6D5D4D3D2D1DO第一个字节说明010000008个源寄存器选一;8个目的寄存器选一;单字节指令。0101111111\n③存储器数送寄存器内(存储器直接寻址)传送方式8个目的寄存器选一未用到D7D6D5D4D3D2D1DO第一个字节说明100008个目的寄存器选一;双字节指令。1010111D7D6D5D4D3D2D1DO第二个字节为存储器直接地址④存储器数送寄存器内(寄存器间接寻址)传送方式8个目的寄存器选一8个间址寄存器选一D7D6D5D4D3D2D1DO第一个字节说明110000008个目的寄存器选一;8个间址寄存器选一;单字节指令。1111111111十、定点数运算1、加减运算采用补码。2、乘法运算采用原码。为什么?关键是符号位如何处理、数值如何得到,还要知道运算原理。㈠、加减运算如何由[X]补得到[・X]补(连同符号位按位取反再在最低位加1)。\n图3.1实现加法运算的逻辑示例⑴加法运算[X+Y]补:①“A-ALU”=1,“BfALU”=1,“ALU+1”=0;②“ALU-A”=lo⑵加法运算[X-Y]#:①“A-ALU”=1,“/B-ALU”=1,“ALU+1”=1;②“ALU-A”=lo㈡、乘法运算的移位原理是什么。图3.5实现原码一位乘法的逻辑电路框图①准备工作:A-0,Cd-n,B-X,C-Y;②判断Cn,若Cn=l,则ALU”=1,“B->ALU”=1;若Cn=0则下一步;③其次“C/2->C”=1,“ALU/2fA”=1;④Cd-l->Cd;⑤判断Cd,若CdHO,则返冋到②;若Cd=O则下一步;⑥求符号位AO-BO㊉C0⑦结束\n图3・6乘法运算的控制流程查看更多