1、作业解答第一章 作业解答1.1 基本的软件系统包括哪些内容?答:基本的软件系统包括系统软件与应用软件两大类。系统软件是一组保证计算机系统高效、正确运行的基础软件,通常作为系统资源提供给用户使用。包括:操作系统、语言处理程序、数据库管理系统、分布式软件系统、网络软件系统、各种服务程序等。1.2 计算机硬件系统由哪些基本部件组成?它们的主要功能是什么?答:计算机的硬件系统通常由输入设备、输出设备、运算器、存储器和控制器等五大部件组成。输入设备的主要功能是将程序和数据以机器所能识别和接受的信息形式输入到计算机内。输出设备的主要功能是将计算机处理的结果以人们所能接受的信息形式或其它系统所要求的信息形式
2、输出。存储器的主要功能是存储信息,用于存放程序和数据。运算器的主要功能是对数据进行加工处理,完成算术运算和逻辑运算。控制器的主要功能是按事先安排好的解题步骤,控制计算机各个部件有条不紊地自动工作。1.3 冯诺依曼计算机的基本思想是什么?什么叫存储程序方式?答:冯诺依曼计算机的基本思想包含三个方面:1) 计算机由输入设备、输出设备、运算器、存储器和控制器五大部件组成。2) 采用二进制形式表示数据和指令。3) 采用存储程序方式。存储程序是指在用计算机解题之前,事先编制好程序,并连同所需的数据预先存入主存储器中。在解题过程(运行程序)中,由控制器按照事先编好并存入存储器中的程序自动地、连续地从存储器
3、中依次取出指令并执行,直到获得所要求的结果为止。1.4 早期计算机组织结构有什么特点?现代计算机结构为什么以存储器为中心?答:早期计算机组织结构的特点是:以运算器为中心的,其它部件都通过运算器完成信息的传递。随着微电子技术的进步,人们将运算器和控制器两个主要功能部件合二为一,集成到一个芯片里构成了微处理器。同时随着半导体存储器代替磁芯存储器,存储容量成倍地扩大,加上需要计算机处理、加工的信息量与日俱增,以运算器为中心的结构已不能满足计算机发展的需求,甚至会影响计算机的性能。为了适应发展的需要,现代计算机组织结构逐步转变为以存储器为中心。1.5 什么叫总线?总线的主要特点是什么?采用总线有哪些好
4、处?答:总线是一组可为多个功能部件共享的公共信息传送线路。总线的主要特点是共享总线的各个部件可同时接收总线上的信息,但必须分时使用总线发送信息,以保证总线上信息每时每刻都是唯一的、不至于冲突。使用总线实现部件互连的好处: 可以减少各个部件之间的连线数量,降低成本; 便于系统构建、扩充系统性能、便于产品更新换代。1.6 按其任务分,总线有哪几种类型?它们的主要作用是什么?答:按总线完成的任务,可把总线分为:CPU内部总线、部件内总线、系统总线、外总线。1.7 计算机的主要特点是什么?答:计算机的主要特点有: 能自动连续地工作; 运算速度快;运算精度高; 具有很强的存储能力和逻辑判断能力; 通用性
5、强。1.8 衡量计算机性能有哪些基本的技术指标?以你所熟悉的计算机系统为例,说明它的型号、主频、字长、主存容量、所接的I/O设备的名称及主要规格。答:衡量计算机性能的基本的技术指标有: 基本字长; 主存容量; 运算速度; 所配置的外部设备及其性能指标; 系统软件的配置。1.9单选题(1)1946年,美国推出了世界上第一台电子数字计算机,名为_A_。A. ENIAC B. UNIVAC-I C. ILLIAC-IV D. EDVAC(2)在计算机系统中,硬件在功能实现上比软件强的是_C_。A. 灵活性强 B. 实现容易 C. 速度快 D. 成本低(3)完整的计算机系统包括两大部分,它们是_ C
6、_。A. 运算器与控制器 B. 主机与外设C. 硬件与软件 D. 硬件与操作系统(4)在下列的描述中,最能准确反映计算机主要功能的是_ D _。A. 计算机可以代替人的脑力劳动B. 计算机可以存储大量的信息C. 计算机是一种信息处理机D. 计算机可以实现高速运算(5)存储程序概念是由美国数学家冯诺依曼在研究_ D _时首先提出来的。A. ENIAC B. UNIVAC-I C. ILLIAC-IV D. EDVAC(6)现代计算机组织结构是以_ B _为中心,其基本结构遵循冯诺依曼思想。A. 寄存器 B. 存储器 C. 运算器 D. 控制器(7)冯诺依曼存储程序的思想是指_ C _。A. 只有
7、数据存储在存储器B. 只有程序存储在存储器C. 数据和程序都存储在存储器D. 数据和程序都不存储在存储器 1.10填空题(1)计算机CPU主要包括 和_ _两个部件。答: 运算器 控制器 (2)计算机的硬件包括 、_ _、_ _、_ _和_ _等5大部分。答: 运算器 控制器 存储器 输入设备 输出设备(3)计算机的运算精度与机器的 有关,为解决精度与硬件成本的矛盾,大多数计算机使用_ _。答: 字长 变字长运算 (4)从软、硬件交界面看,计算机层次结构包括 和_ _两大部分。答: 实机器 虚机器 (5)计算机硬件直接能执行的程序是 程序,高级语言编写的源程序必须经过_ _翻译,计算机才能执行
8、。答: 机器语言 语言处理程序 (6)从计算机诞生起,科学计算一直是计算机最主要的 。答: 应用领域 (7)银河I(YH-I)巨型计算机是我国研制的 。答: 第一台巨型计算机 1.11是非题(1)微处理器可以用来做微型计算机的CPU。 (2)ENIAC计算机的主要工作原理是存储程序和多道程序控制。 (3)决定计算机运算精度的主要技术指标是计算机的字长。 (4)计算机总线用于传输控制信息、数据信息和地址信息的设施。 (5)计算机系统软件是计算机系统的核心软件。 (6)计算机运算速度是指每秒钟能执行操作系统的命令个数。 (7)计算机主机由CPU、存储器和硬盘组成。 (8)计算机硬件和软件是相辅相成
9、、缺一不可的。 第二章 作业解答2.1 完成下列不同进制数之间的转换。(1) (246.625)D(11110110.101)B(366.5)Q( F6. A )H(2) (AB.D)H(10101011.1101 )B(253. 64 )Q(171.8125 )D(3) (1110101)B( 117 )D(000100010111 )8421BCD2.2 分别计算用二进制表示4位、5位、8位十进制数时所需要的最小二进制位的长度。答: 4位十进制数的最大数为9999,2138192999921416384表示4位十进制数所需的最小二进制位的长度为14位。 5位十进制数的最大数为99999,2
10、16655369999217131072表示5位十进制数所需的最小二进制位的长度为17位。 8位十进制数的最大数为99999999,2266710886499999999227134217728表示8位十进制数所需的最小二进制位的长度为27位。根据当i位十进制数与j位二进制数比较时的等式,10i = 2j,得j3.3i,亦可得到上述结果。2.3 写出判断一个7位二进制正整数KK7K6K5K4K3K2K1是否为4的倍数的判断条件。答:判断一个7位二进制正整数KK7K6K5K4K3K2K1是否为4的倍数的判断条件是:K2K1是否为全0。当K2K100时,KK7K6K5K4K3K2K1为4的倍数,否
11、则就不是。2.4 设机器字长为8位(含一位符号位),已知十进制整数x,分别求出 x原、x反、x移、x补、x补、补。(1) x79 (2) x56 (3) x0 (4) x1答:(1) x79(01001111)2 (2)x56(00111000)2(3)x0(00000000)2 (4)x1(00000001)2xx原x反x移x补x补补79010011110100111111001111010011111011000100100111 (截断法) 00101000 (0舍1入)56101110001100011101001000110010000011100011100100010000000
12、111111111000000000000000000000000000000011000000111111111001111111111111111100000001(溢出)机器零2.5 已知x补,求x的真值。(1) x补0.1110 (2) x补1.1110 (3) x补0.0001 (4) x补1.1111答:(1) x补0.1110,x0.1110 (2) x补1.1110,x0.0010(3) x补0.0001,x0.0001 (4) x补1.1111,x0.00012.6 已知 x 的二进制真值,试求 x补、x补、补、补、2x补、4x补、 2x补、补。(1) x0.0101101
13、(2) x0.1001011 (3) x1 (4) x0.0001010xx补x补补补2x补4x补2x补补0.01011010.01011011.10100110.00101100.00101110.00010110.1011010溢出1.01001101.11101010.10010111.01101010.10010111.10110101.10110111.11011101.1101101溢出溢出溢出0.00100100.001001111.0000000无表示1.10000001.1100000溢出溢出溢出0.01000000.00010101.11101100.00010101.11
14、110111.11111101.11111011.11011001.10110000.00101000.0000100.0000112.7 根据题2.7表中给定的机器数(整数),分别写出把它们看作原码、反码、补码、移码表示形式时所对应的十进制真值。题2.7表 表示形式机器数原码表示反码表示补码表示移码表示01011100+92+92+92-3611011001-89-38-39+8910000000-0-127-12802.8 设十进制数x(124.625)210(1) 写出x对应的二进制定点小数表示形式。(2) 若机器的浮点数表示格式为: 201918 1514 0数符阶符阶码尾 数其中阶码
15、和尾数的基数均为2。 写出阶码和尾数均采用原码表示时的机器数形式。 写出阶码和尾数均采用补码表示时的机器数形式。答:(1)x对应的二进制定点小数表示形式为:1111100.1012100.1111100101230.0001111100101(2) 阶码和尾数均采用原码表示时的机器数形式:0 10011 1111100101000000 1001 1111 1100 1010 000009FCA0H 阶码和尾数均采用补码表示时的机器数形式:0 11101 1111100101000000 1110 1111 1100 1010 00000EFCA0H2.9 设某机字长为16位,数据表示格式为:
16、 定点整数:01 15数符尾 数浮点数:012 56 15数符阶符阶码尾 数分别写出该机在下列的数据表示形式中所能表示的最小正数、最大正数、最大负数、最小负数(绝对值最大的负数)和浮点规格化最小正数、最大负数在机器中的表示形式和所对应的十进制真值。(1) 原码表示的定点整数; (2) 补码表示的定点整数;(3) 阶码与尾数均用原码表示的浮点数;(4) 阶码与尾数均用补码表示的浮点数;(5) 阶码为移码、尾数用补码表示的浮点数。 解:(1) 原码表示的定点整数机器数形式十进制真值最小正数0 0000000000000011最大正数0 1111111111111112151最大负数1 000000
17、0000000011最小负数1 111111111111111(2151)(2) 补码表示的定点整数机器数形式十进制真值最小正数0 0000000000000011最大正数0 1111111111111112151最大负数1 1111111111111111最小负数1 000000000000000215(3) 阶码与尾数均用原码表示的浮点数;机器数形式十进制真值最小正数0 1 1111 0000000001210215规格化最小正数0 1 1111 100000000021215最大正数0 0 1111 1111111111(1210)215最大负数1 1 1111 000000000121
18、0215规格化最大负数1 1 1111 100000000021215最小负数1 0 1111 1111111111(1210)215(4) 阶码与尾数均用补码表示的浮点数;机器数形式十进制真值最小正数0 1 0000 0000000001210216规格化最小正数0 1 0000 100000000021216最大正数0 0 1111 1111111111(1210)215最大负数1 1 0000 1111111111210216规格化最大负数1 1 0000 0111111111(21210)216最小负数1 0 1111 00000000001215(5) 阶码为移码、尾数用补码表示的浮
19、点数。 机器数形式十进制真值最小正数0 0 0000 0000000001210216规格化最小正数0 0 0000 100000000021216最大正数0 1 1111 1111111111(1210)215最大负数1 0 0000 1111111111210216规格化最大负数1 0 0000 0111111111(21210)216最小负数1 0 1111 000000000012152.10 设2.9题中的浮点数格式中,阶码与尾数均用补码表示,分别写出下面用十六进制书写的浮点机器数所对应的十进制真值。(1) FFFFH; (2) C400H; (3) C000H。答:(1) FFFF
20、H1 11111 111111111121021211(2) C400H1 10001 00000000001215215(3) C000H1 10000 000000000012162162.11 用十六进制写出下列十进制数的IEEE754标准32位单精度浮点数的机器数的表示形式。(1) 0.15625 (2) 0.15625 (3) 16 (4) 5答: (1)(0.15625)10(0. 00101)21.0123阶码E127(3)124(1111100)201111100机器数形式:0 01111100 01000000000000000000000十六进制形式:3E200000H(2
21、) (0.15625)10(0. 00101)21.0123阶码E127(3)124(1111100)201111100机器数形式:1 01111100 01000000000000000000000十六进制形式:BE200000H(3) (16)10(10000)21.000024阶码E1274131(10000011)2机器数形式:0 10000011 00000000000000000000000十六进制形式:41800000H(4) (5)10(101)21.0122阶码E1272129(10000001)2机器数形式:1 10000001 0100000000000000000000
22、0十六进制形式:C0A00000H2.12 用十六进制写出写出IEEE754标准32位单精度浮点数所能表示的最小规格化正数和最大规格化负数的机器数表示形式。答:若1E254,则 N(1)S2E127(1.M) ,为规格化数。最小规格化正数的机器数表示形式:S0,E1,M000000000000000000000000 00000001 0000000000000000000000000800000H最大规格化负数的机器数表示形式:S1,E1,M000000000000000000000001 00000001 0000000000000000000000080800000H2.13 写出下列十
23、六进制的IEEE单精度浮点数代码所代表的十进制数值。(1) 42E48000 (2) 3F880000 (3) 00800000 (4) C7F00000解:(1) 42E480000 10000101 11001001000000000000000指数(10000101)21271331276M1.110010010000000000000001(1/21/41/321/256)十进制数值N1(1/21/41/321/256)26114.25(2) 3F8800000 01111111 00010000000000000000000指数(01111111)21271271270M1.0001
24、000000000000000000011/161.0625十进制数值N1.0625201.0625(3) 008000000 00000001 00000000000000000000000指数(00000001)21271127126M1.00000000000000000000000十进制数值N12126(4) C7F000001 10001111 11100000000000000000000指数(10001111)212714312716M1. 111000000000000000000001(1/21/41/8)1.875十进制数值N(216215214213)1521312288
25、01.8752162.14 设有两个正浮点数:,(1) 若e1e2,是否有N1N2(2) 若S1、S2均为规格化数,上述结论是否正确?答:(1)不一定(2)正确2.15 设一个六位二进制小数x0.a1a2a3a4a5a6,x0,请回答:(1) 若要x,a1a2a3a4a5a6需要满足什么条件?(2) 若要x,a1a2a3a4a5a6需要满足什么条件?(3) 若要x,a1a2a3a4a5a6需要满足什么条件?解:(1)要x,a1a2a3a4a5a6需要满足:a1a2a3至少有一个1(2)要x,a1a2a3a4a5a6需要满足:a11,且a2a3a4a5a6至少有一个为1(不为全0)(3)要x,a
26、1a2a3a4a5a6需要满足:a10且 a21,a3a4a5a6为全0 a20且a31,a4a5a6任意或a20且a30,a41,a5a6至少有一个为12.16 表示一个汉字的内码需几个字节?表示一个3232点阵的汉字字形码需几个字节?在计算机内部如何区分字符信息与汉字信息?答: 一个汉字的内码需2个字节。 表示一个3232点阵的汉字字形码需432128个字节。 在计算机内部利用字节的最高位是0还是1区分字符信息与汉字信息.2.17 分别用前分隔数字串、后嵌入数字串和压缩的十进制数串形式表示下列十进制数。(1) 74 (2) 639 (3) 2004 (4) 8510解:(1) 74前分隔数
27、字串742B3734“+”“7”“4”后嵌入数字串743734“7”“4”压缩的十进制数串740000011101001100“0”“7”“4”“+”(2) 639前分隔数字串6392D363339“-“6”“3”“9”后嵌入数字串639363379“6”“3”“9”压缩的十进制数串6390110001110011101“6”“3”“9”“-”(3) 2004前分隔数字串20042B32303034“+”“2”“0”“0”“4”后嵌入数字串200432303034“2”“0”“0”“4”压缩的十进制数串2004000000100000000001001100“0”“2”“0”“0”“4”“+”
28、(4) 8510前分隔数字串85102D38353130“-“8”“5”“1”“0”后嵌入数字串851038353170“8”“5”“1”“0”压缩的十进制数串8510000010000101000100001101“0”“8”“5”“1”“0”“-”2.18 数据校验码的实现原理是什么?答:。数据校验码的实现原理是在正常编码中加入一些冗余位,即在正常编码组中加入一些非法编码,当合法数据编码出现某些错误时,就成为非法编码,因此就可以通过检测编码是否合法来达到自动发现、定位乃至改正错误的目的。在数据校验码的设计中,需要根据编码的码距合理地安排非法编码的数量和编码规则。2.19 什么是“码距”?数
29、据校验与码距有什么关系? 答:码距是指在一组编码中任何两个编码之间最小的距离。数据校验码的校验位越多,码距越大,编码的检错和纠错能力越强。记码距为d,码距与校验码的检错和纠错能力的关系是:de1 可检验e个错。d2t1 可纠正t个错。det1 且et,可检e个错并能纠正t个错。2.20 奇偶校验码的码距是多少?奇偶校验码的校错能力怎样?答:奇偶校验码的码距为2。奇偶校验码只能发现一位或奇数位个错误,而无法发现偶数位个错误,而且即使发现奇数位个错误也无法确定出错的位置,因而无法自动纠正错误。2.21 下面是两个字符(ASCII码)的检一纠一错的海明校验码(偶校验),请检测它们是否有错?如果有错请
30、加以改正,并写出相应的正确ASCII码所代表的字符。(1) 10111010011 (2) 10001010110解:(1) 指误字为E1P1A6A5A3A2A01111011E2P2A6A4A3A1A00101110E3P4A5A4A311011E4P8A2A1A000110得到的指误字为E4E3E2E10101(5)10,表示接收到的海明校验码中第5位上的数码出现了错误。将第5位上的数码A51取反,即可得到正确结果 10110010011。正确ASCII码所代表的字符为1001011“K”。(2) 指误字为E1P1A6A5A3A2A01011100E2P2A6A4A3A1A00001100
31、E3P4A5A4A301010E4P8A2A1A001100得到的指误字为E4E3E2E10000,无错。正确ASCII码为0101110“”2.22 试编出8位有效信息01101101的检二纠一错的海明校验码(用偶校验)。解:8位有效信息需要用4个校验位,所以检一纠一错的海明校验码共有12位。4个校验位为:P1A7A6A4A3A1010100 P2A7A5A4A2A1010100 P4A6A5A4A011011 P8A3A2A1A011011检一纠一错的海明校验码:0001110111011DDH检二纠一错的海明校验码,增加P0P0P1P2A7P4A6A5A4P8A3A2A1A01有效信息0
32、1101101的13位检二纠一错的海明校验码:100011101110111DDH2.23 设准备传送的数据块信息是1010110010001111,选择生成多项式为G(x)100101,试求出数据块的CRC码。解:模2除后,余数R(x)10011,数据块的CRC码:1010110010001111100112.24 某CRC码(CRC)的生成多项式 G(x)x3x21,请判断下列CRC码是否存在错误。(1) 0000000 (2) 1111101 (3) 1001111 (4) 1000110 解:G(x)1101(1) 0000000模2除1101,余数为:000,无错(2) 111110
33、1模2除1101,余数为:010,有错(3) 1001111模2除1101,余数为:100,有错(4) 1000110模2除1101,余数为:000,无错2.25 选择题(1) 某机字长64位,其中1位符号位,63位尾数。若用定点小数表示,则最大正小数为 B 。A. (12-64) B. (12-63) C. 264 D. 263(2) 设x补=1.x1x2x3x4x5x6x7x8,当满足 A 时,x1/2成立。A. x11, x2x8至少有一个为1 B. x10, x2x8至少有一个为1C. x11,x2x8任意 D. x10, x2x8任意(3) 在某8位定点机中,寄存器内容为100000
34、00,若它的数值等于128,则它采用的数据表示为 B 。A. 原码 B. 补码 C. 反码 D. 移码(4) 在下列机器数中,哪种表示方式下零的表示形式是唯一的 B 。A. 原码 B. 补码 C. 反码 D. 都不是(5) 下列论述中,正确的是 D 。A. 已知x原求x补的方法是:在x原的末位加1B. 已知x补求x补的方法是:在x补的的末位加1C. 已知x原求x补的方法是:将尾数连同符号位一起取反,再在末位加1D. 已知x补求x补的方法是:将尾数连同符号位一起取反,再在末位加1(6) IEEE754标准规定的32位浮点数格式中,符号位为1位,阶码为8位,尾数为23位,则它所能表示的最大规格化正
35、数为 A 。A. (2223)2127 B. (1223)2127 C. (2223)2255 D. 2127223(7) 浮点数的表示范围取决于 A 。A. 阶码的位数 B. 尾数的位数 C. 阶码采用的编码 D. 尾数采用的编码(8) 在2424点阵的汉字字库中,一个汉字的点阵占用的字节数为 D 。A. 2 B. 9 C. 24 D. 72 (9) 假定下列字符码中有奇偶校验位,但没有数据错误,采用奇校验的编码是 B 。A. 10011010 B. 11010000 C. 11010111 D. 10111000(10) 在循环冗余校验中,生成多项式G(x)应满足的条件不包括 D 。A.
36、校验码中的任一位发生错误,在与G(x)作模2除时,都应使余数不为0B. 校验码中的不同位发生错误时,在与G(x)作模2除时,都应使余数不同C. 用G(x)对余数作模2除,应能使余数循环D. 不同的生成多项式所得的CRC码的码距相同,因而检错、校错能力相同2.26 填空题(1) 设某机字长为8位(含一符号位),若 x补11001001,则x所表示的十进制数的真值为 ,1/4x补 ;若 y移=11001001,则y所表示的十进制数的真值为 ;y的原码表示y原 。 答: -55 11110010 +73 01001001 (2) 在带符号数的编码方式中,零的表示是唯一的有 和 。答: 补码 移码 (
37、3) 若x1补10110111, x2原1.01101 ,则数x1的十进制数真值是 ,x2的十进制数真值是 。答: -73 -0.71875 (4) 设某浮点数的阶码为8位(最左一位为符号位),用移码表示;尾数为24位(最左一位为符号位),采用规格化补码表示,则该浮点数能表示的最大正数的阶码为 ,尾数为 ;规格化最大负数的阶码为 ,尾数为 。(用二进制编码回答)(书上:最小负数的阶码为 ,尾数为 )答: 11111111 011111111111111111111111 11111111 100000000000000000000000 (5) 设有效信息位的位数为N, 校验位数为K,则能够检
38、测出一位出错并能自动纠错的海明校验码应满足的关系是 。答: 2K1NK 2.27 是非题(1) 设x补0.x1x2x3x4x5x6x7,若要求x1/2成立,则需要满足的条件是x1必须为1,x2x7至少有一个为1。 (2) 一个正数的补码和它的原码相同,而与它的反码不同。 (3) 浮点数的取值范围取决于阶码的位数,浮点数的精度取决于尾数的位数。 (4) 在规格化浮点表示中,保持其他方面不变,只是将阶码部分由移码表示改为补码表示,则会使该浮点表示的数据表示范围增大。 (5) 在生成CRC校验码时,采用不同的生成多项式,所得到CRC校验码的校错能力是相同的。 第三章 作业解答3.1 已知x补、y补,计算xy补和xy补,并判断溢出情况。(1) x补0.11011 y补0.00011 (2) x补0.10111 y补1.00101(3) x补1.01010 y补1.10001解:(1) x补0.11011 y补0.00011 y补1.111101xy补0.110110.000110.11110xy补0.110111.1111010.11000(2)x补0.10111 y补1.00101 y补0.11011xy补0.101111.001011.11100xy补0.101110.110111.10010 溢出(3)x补1.01010 y补1.10001 y