1、习 题 课,第一章 第二章,1.比较数字计算机和模拟计算机的特点模拟计算机的特点是数值由连续量来表示,运算过程也是连续的。数字计算机的主要特点是按位运算,并且不连续地跳动计算。模拟计算机用电压表示数据,采用电压组合和测量值的计算方式,盘上连线的控制方式,而数字计算机用数字0和1表示数据,采用数字计数的计算方式,程序控制的控制方式。数字计算机与模拟计算机相比,精度高,数据存储量大,逻辑判断能力强。2.数字计算机如何分类?分类依据是什么?数字计算机可分为专用计算机和通用计算机,是根据计算机的效率、速度、价格、运行的经济性和适应性来划分的。,第一章,3.数字计算机有哪些主要应用科学计算、自动控制、测
2、量和测试、信息处理、教育和卫生、家用电器、人工智能。4.冯诺依曼型计算机的主要设计思想是什么?包括哪些主要组成部分?主要设计思想是:存储程序通用电子计算机方案,主要组成部分有:运算器、逻辑控制装置、存储器、输入和输出设备,5. 什么是存储容量?什么是单元地址?什么是数据字?什么是指令字?存储器所有存储单元的总数称为存储器的存储容量。每个存储单元都有编号,称为单元地址。如果某字代表要处理的数据,称为数据字。如果某字为一条指令,称为指令字。 6.什么是指令?什么是程序?每一个基本操作称为一条指令,而解算某一问题的一串指令序列,称为程序。,7. 指令和数据军厨房在内存中,计算机如何区分它们是指令还是
3、数据?取指周期中从内存读出的信息流是指令流,而在执行器周期中从内存读出的信息流是指令流。 8.什么是内存?什么是外存?什么是cpu?什么是适配器?简述其功能。 半导体存储器称为内存; 存储容量更大的磁盘存储器和光盘存储器称为外存,内存和外存共同用来保存二进制数据。运算器和控制器合在一起称为中央处理器,简称CPU,它用来控制计算机及进行算术逻辑运算。 适配器是外围设备与主机联系的桥梁,它的作用相当于一个转换器,使主机和外围设备并行协调地工作。,9. 计算机系统软件包括哪几类?说明它们的用途。计算机的系统软件包括系统程序和应用程序。系统程序用来简化程序设计,简化使用方法,提高计算机的使用效率,发挥
4、和扩大计算机的功能用用途;应用程序是用户利用计算机来解决某些问题而编制的程序。 12 为什么软件能转化为硬件?硬件能转化为软件?实现这种转化的媒介是什么?因为任何操作可以由软件来实现,也可以由硬件来实现;任何指令的执行可以由硬件完成,也可以由软件来完成。实现这种转化的媒介是软件与硬件的逻辑等价性。,第二章,1.写出下列各数的原码、反码、补码、移码表示(8位二进制数)。 (1),(2) (3) -35 -35= -10011-35原 = 1010011-35反 = 1101100 -35补 = 1101101-35移 = 0101101,(4)127127 =7F = 1111111127原 =
5、 01111111127补 = 01111111127反 = 01111111127移 = 11111111,(5)-127-127 = -7F = -1111111-127原 = 11111111-127补 = 10000001-127反 = 10000000-127移 = 00000001,(6)-0-0原 = 1000 0000-0反 = 1111 1111 -0补 = 0000 0000-0移 = 1000 0000,(7)-1 = -00000001-1原 = 1000 0001-1反 = 1111 1110-1补 = 1111 1111 -1移 = 0111 1111,2. 设x补
6、 = a7. a6a5a0,其中ai 取0或1,若要x-0.5,求a0,a1 , a2 , a6的取值。,若a7 = 0, 则x 0, 也满足x -0.5 此时a6a0可任意 若a7 = 1, 则x -0.5, 需a6 =1即a7 = 1, a6 = 1, a5a0有一个不为0(但不是“其余取0”),3.有一个字长为32位的浮点数,符号位1位;阶码8位,用移码表示;位数23位,用补码表示;基数为2。请写出(1)最大数的二进制表示,(2)最小数的二进制表示,(3)规格化数所能表示对额数的范围。,(1)最大的数的二进制E = 11111111 S = 0, M = 111(全1)表示为:0 111
7、 1118个 23个即:,(2)最小的二进制数E = 11111111S = 1, M = 000(全0) 表示为:1 111 0008个 23个 即:,(3)784标准规格化范围(绝对值) 最大 E = 1110, M = 111, S = 07个 23个即: 最小 E = 0001, M = 000, S = 07个 23个即:,4.将下列十进制数表示成IEEE754标准的32位浮点规格化数。 (1) 27/64=+0.011011=+1.10112-2阶码:e=-2 E=e+127=125=(01111101)2尾数:M=1011 0000 0000 0000机器数:0 01111101
8、 1011 0000 0000 0000 0000 000 (2)-27/64 =-(0.011011) 2 =-1.10112-2阶码:e=-2 E=e+127=125=(01111101)2尾数:M=1011 0000 0000 0000机器数:1 01111101 1011 0000 0000 0000 0000 000,5.已知x和y,用变形补码计算x+y,同时指出是否溢出。 (1) x = 11011, y = 000110 0 1 1 0 1 1 + 0 0 0 0 0 1 10 0 1 1 1 1 0x+y = 0 11110 无溢出(2)x = 11011, y = - 101
9、01=11 10101x补 = 0 0 11011 + y补 = 1 1 010110 0 00110x+y = 0 00110 无溢出,(3) x = -10110=11 10110 y = - 00001=11 00001x补 =1 1 0 1 0 1 0 y补 =1 1 1 1 1 1 11 1 0 1 0 1 0+1 1 1 1 1 1 11 1 0 1 0 0 1x+y = -0.10111 无溢出,6.已知x和y,用变形补码计算x-y,同时指出是否溢出。 (1) x = 11011 y = -11111=11 00001x补= 00 11011 -y补=00 111110 0 1
10、1 0 1 1+ 0 0 1 1 1 1 10 1 1 1 0 1 0 溢出 (2) x = 0 10111 y = 0 11011x补=00 10111 -y补= 11 001010 0 1 0 1 1 1 +1 1 0 0 1 0 11 1 1 1 1 0 0x-y = - 00100 无溢出,(3) x = 11011 y = - 10011x补= 00 11011 -y补=00 100110 0. 1 1 0 1 1 +0 0. 1 0 0 1 10 1. 0 1 1 1 0溢出,7.用原码阵列乘法器、补码阵列乘法器分别计算x y (1)原码阵列 x = 11011, y = -111
11、11符号位: x 0 y 0 = 01 = 1 x原 = 11011, y原 = 111111 1 0 1 1 1 1 1 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 0 0 0 1 0 1x y原 = 1, 11 0100 0101,带求补器的补码阵列x补 = 0 11011, y补= 1 00001乘积符号位单独运算011尾数部分算前求补输出x11011,y111111 1 0 1 1 1 1 1 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 11 1 0 1 0 0 0 1
12、 0 1x y - 11 0100 0101,(2) 原码阵列 x = - 11111, y = - 11011符号位: x 0 y 0 = 11 = 0x原 = 11111, y原= 11011 1 1 1 1 1 1 1 0 1 11 1 1 1 11 1 1 1 10 0 0 0 01 1 1 1 11 1 1 1 11 1 0 1 0 0 0 1 0 1x y原= 0,11010,00101,带求补器的补码阵列 x = - 11111, y = - 11011 x补 = 1 00001, y 补= 1 00101 乘积符号位单独运算110 尾数部分算前求补输出x11111,y11011
13、1 1 1 1 1 1 1 0 1 11 1 1 1 11 1 1 1 10 0 0 0 01 1 1 1 11 1 1 1 11 1 0 1 0 0 0 1 0 1x y 1101 0001 01,8.用原码阵列除法器计算x/y (1) x = 11000, y = -11111符号位 Sf = 01 = 1 去掉符号位后:y =11111 y补 = 00 11111 -y补= 11 00001 x补= 00 110000 0 1 1 0 0 0+-y补 1 1 0 0 0 0 11 1 1 1 0 0 1 0+ y补 0 0 0 1 1 1 1 1 1位0 0 0 1 0 0 0 1 0.
14、1+-y补 1 1 1 1 0 0 0 0 1 2位0 0 0 0 0 0 0 1 1 0.11+-y补 1 1 1 1 1 0 0 0 0 1 3位1 1 1 1 1 0 0 1 1 1 0.110+ y补 0 0 0 0 0 0 1 1 1 1 1 4位1 1 1 1 1 1 0 1 1 0 1 0.1100+ y补 0 0 0 0 0 0 0 1 1 1 1 1 5位1 1 1 1 1 1 1 1 1 0 0 1 0.11000,(2) x = -01011, y = -11001 符号位 Sf = 10 = 1 去掉符号位后:y = 11001 y补= 00.11001 -y补 = 1
15、1.00111 x补= 00.01011 0 0 0 1 0 1 1 +-y补 1 1 0 0 1 1 11 1 1 0 0 1 0 0 + y补 0 0 0 1 1 0 0 1 1位1 1 1 1 1 1 0 1 0.0 + y补 0 0 0 0 1 1 0 0 1 2位0 0 0 0 1 0 0 1 1 0.01 +-y补 1 1 1 1 1 0 0 1 1 1 3位0 0 0 0 0 0 1 1 0 1 0.011 +-y补 1 1 1 1 1 1 0 0 1 1 1 4位0 0 0 0 0 0 0 0 0 0 1 0.0111 +-y补 1 1 1 1 1 1 1 0 0 1 1 1
16、5位1 1 1 1 1 1 1 0 1 0 0 1 0.01110,9.设阶码3位,尾数6位,按浮点数运算方法,完成下列取值的x+y,x-y运算。 (1) x= 2-0110.100101, y = 2-010 (-0.011110)x补= 11 101, 0.011011 y补= 11 110, 1.100010E=Ex-Ey = 11 101+00 010=11111x补= 11 110,00.010010(1) Mx补+My补=00.010010(1) + 11.100010=11. 110100 (1) x + y补=11 110 11. 110100 (1) 规格化处理: 1.010
17、010 阶码 11 100x+y= 1.0100102-4 = 2-4-0.101110Mx补-My补= Mx补+-My补=00.010010(1) + 00.011110=00. 110000 (1) x - y补=11 110 00. 110000 (1) 规格化处理: 0.110001 阶码 11 110 x-y=2-20.110001,(2) x = 2-101 (-0.010110), y = 2-1000.010110x补= 11 011, 11.101010 y补= 11 100, 00.010110Ex-Ey = 11011+00100 = 11111 x补= 11 100,1
18、1.110101(0) Mx补+My补=11.110101(0) +00.010110=00. 001011 规格化处理: 0.101100 阶码 11 010 x+y= 0.1011002-6 Mx补-My补= Mx补+-My补= 11.110101(0) +11.101010=11.011111 规格化处理: 1.011111 阶码 11 100 x-y=-0.1000012-4,10.设阶码3位,尾数6位,按浮点数运算方法,计算下列各式。 (1) (23 13/16) 24(-9/16) 解:Ex = 0 011, Mx = 0.110100 Ey = 0 100, My = 0.100
19、100Ez = Ex+Ey = 0111 Mx My 0. 1 1 0 1 0.1 0 0 10 1 1 0 10 0 0 0 0 0 0 0 0 00 1 1 0 10 0 0 0 00 0 1 1 1 0 1 0 1规格化: 26 0.111011,(2)(2-2 13/32) (2315/16) 解: Ex = 1110, Mx = 0.011010Ey = 0011, My = 0.111100Ez = Ex-Ey = 1110+1101 = 1011Mx补 = 00.011010My补= 00.111100-My补= 11.000100,0 0 0 1 1 0 1 0 +-My 1
20、1 0 0 0 1 0 01 1 0 1 1 1 1 0 01 0 1 1 1 1 0 0 +My 0 0 1 1 1 1 0 01 1 1 1 1 0 0 0 0.01 1 1 1 0 0 0 0 +My 0 0 1 1 1 1 0 00 0 1 0 1 1 0 0 0.010 1 0 1 1 0 0 0 +-My 1 1 0 0 0 1 0 0 0 0 0 1 1 1 0 0 0.0110 0 1 1 1 0 0 0 +-My 1 1 0 0 0 1 0 01 1 1 1 1 1 0 0 0.01101 1 1 1 1 0 0 0 +My 0 0 1 1 1 1 0 00 0 1 1 0
21、1 0 0 0.011010 1 1 0 1 0 0 0 +-My 1 1 0 00 1 0 00 0 1 0 1 10 0 0.01101商 = 0.110110*2-6, 余数=0.101100*2-6,11.某加法器进位链小组信号为C4C3C2C1,低位来的进位信号为C0,请分别按下述两种方式写出C4C3C2C1的逻辑表达式:,4位加法器如图,,(1)串行进位方式 C1 = G1+P1C0 其中:G1 = A1B1 P1 = A1B1(A1B1也对) C2 = G2+P2C1 G2 = A2B2 P2 = A2B2 C3 = G3+P3C2 G3 = A3B3 P3 = A3B3 C4
22、= G4+P4C3 G4 = A4B4 P4 = A4B4 (2)并行进位方式C1 = G1+P1C0C2 = G2+P2G1+P2P1C0C3 = G3+P3G2+P3P2G1+P3P2P1C0C4 = G4+P4G3+P4P3G2+P4P3P2G1+P4P3P2P1C0,12.某机字长16位,使用四片74181组成ALU,设最低位序号标注为第0位,要求 (1)写出第5为的进位信号C6的逻辑表达式。 解:组成最低四位的74181进位输出为:C4 = Cn+4 = G+PCn = G+PC0, C0为向第0位进位 其中,G = y3+y2x3+y1x2x3+y0x1x2x3,P = x0x1x
23、2x3,所以C5 = y4+x4C4C6 = y5+x5C5 = y5+x5y4+x5x4C4 (2)估算产生C6所需的最长时间 解:设标准门延迟时间为T,“与或非”门延迟时间为1.5T,则进位信号C0,由最低位传送至C6需经一个反相器、两级“与或非”门,故产生C0的最长延迟时间为T+2*1.5T = 4T,(3)估算最长求和时间 解:最长求和时间应从施加操作数到ALU算起:第一片74181有3级“与或非”门(产生控制参数x0, y0, Cn+4),第二、三片74181共2级反相器和2级“与或非”门(进位链),第四片74181求和逻辑(1级与或非门和1级半加器,设其延迟时间为3T),故总的加法
24、时间为:t0 = 3*1.5T+2T+2*1.5T+1.5T+3T = 14T,12.用IEEE32位浮点格式表示如下数。,(1)-5(2)-1.5,-5=-(101) 2=-(1.01*22)2S=1 E=2+127=(1000 0001) 2 1 1000 0001 010 0000 0000 0000 0000,-1.5=-(1.1) 2=-(1.1*20)2S=1 E=0+127=(0111 1111) 2 1 0111 1111 100 0000 0000 0000 0000,(3)384(4)1/16(5)-1/32,384=(1100 0000 0) 2=(1.1*28)2S=0
25、 E=8+127=(1000 0111) 2 0 1000 0111 100 0000 0000 0000 0000,1/16= (0.0001) 2= (1.0*2-4)2S=0 E=-4+127=(0111 1011) 2 1 0111 1011 000 0000 0000 0000 0000,-1/32=-(0.00001) 2=-(1.0*2-5)2S=1 E=-5+127=(0111 1010) 2 1 0111 1010 000 0000 0000 0000 0000,13.下列各数使用了IEEE32位浮点格式,相等的十进制是什么?,(1)1 10000011 110 0000 0000 0000 0000 0000(2)0 01111110 101 0000 0000 0000 0000 0000,S=1 E=(10000011)2=131 1.M=(1.110)2e=E-127=4即:-(1.110*24)2=-(11100) 2=-28,S=0 E=(0111 1110)2=126 1.M=(1.101)2 e=E-127=-1 即:(1.101*2-1)2= (0.1101) 2=-0.8125,