计算机组成原理课后习题答案22330.pdf
.1/42 作业解答 第一章 作业解答 1.1 基本的软件系统包括哪些内容?答:基本的软件系统包括系统软件与应用软件两大类。系统软件是一组保证计算机系统高效、正确运行的基础软件,通常作为系统资源提供给用户使用。包括:操作系统、语言处理程序、数据库管理系统、分布式软件系统、网络软件系统、各种服务程序等。1.2 计算机硬件系统由哪些基本部件组成?它们的主要功能是什么?答:计算机的硬件系统通常由输入设备、输出设备、运算器、存储器和控制器等五大部件组成。输入设备的主要功能是将程序和数据以机器所能识别和接受的信息形式输入到计算机内。输出设备的主要功能是将计算机处理的结果以人们所能接受的信息形式或其它系统所要求的信息形式输出。存储器的主要功能是存储信息,用于存放程序和数据。运算器的主要功能是对数据进行加工处理,完成算术运算和逻辑运算。控制器的主要功能是按事先安排好的解题步骤,控制计算机各个部件有条不紊地自动工作。1.3 冯诺依曼计算机的基本思想是什么?什么叫存储程序方式?答:冯诺依曼计算机的基本思想包含三个方面:1)计算机由输入设备、输出设备、运算器、存储器和控制器五大部件组成。2)采用二进制形式表示数据和指令。3)采用存储程序方式。存储程序是指在用计算机解题之前,事先编制好程序,并连同所需的数据预先存入主存储器中。在解题过程(运行程序)中,由控制器按照事先编好并存入存储器中的程序自动地、连续地从存储器中依次取出指令并执行,直到获得所要求的结果为止。1.4 早期计算机组织结构有什么特点?现代计算机结构为什么以存储器为中心?答:早期计算机组织结构的特点是:以运算器为中心的,其它部件都通过运算器完成信息的传递。随着微电子技术的进步,人们将运算器和控制器两个主要功能部件合二为一,集成到一个芯片里构成了微处理器。同时随着半导体存储器代替磁芯存储器,存储容量成倍地扩大,加上需要计算机处理、加工的信息量与日俱增,以运算器为中心的结构已不能满足计算机发展的需求,甚至会影响计算机的性能。为了适应发展的需要,现代计算机组织结构逐步转变为以存储器为中心。1.5 什么叫总线?总线的主要特点是什么?采用总线有哪些好处?答:总线是一组可为多个功能部件共享的公共信息传送线路。总线的主要特点是共享总线的各个部件可同时接收总线上的信息,但必须分时使用总线发送信息,以保证总线上信息每时每刻都是唯一的、不至于冲突。使用总线实现部件互连的好处:可以减少各个部件之间的连线数量,降低成本;便于系统构建、扩充系统性能、便于产品更新换代。1.6 按其任务分,总线有哪几种类型?它们的主要作用是什么?答:按总线完成的任务,可把总线分为:CPU 内部总线、部件内总线、系统总线、外总线。.2/42 1.7 计算机的主要特点是什么?答:计算机的主要特点有:能自动连续地工作;运算速度快;运算精度高;具有很强的存储能力和逻辑判断能力;通用性强。1.8 衡量计算机性能有哪些基本的技术指标?以你所熟悉的计算机系统为例,说明它的型号、主频、字长、主存容量、所接的 I/O 设备的名称及主要规格。答:衡量计算机性能的基本的技术指标有:基本字长;主存容量;运算速度;所配置的外部设备及其性能指标;系统软件的配置。1.9 单选题(1)1946 年,美国推出了世界上第一台电子数字计算机,名为_A_。A.ENIACB.UNIVAC-IC.ILLIAC-IVD.EDVAC(2)在计算机系统中,硬件在功能实现上比软件强的是_C_。A.灵活性强 B.实现容易 C.速度快 D.成本低(3)完整的计算机系统包括两大部分,它们是_C_。A.运算器与控制器 B.主机与外设 C.硬件与软件 D.硬件与操作系统(4)在下列的描述中,最能准确反映计算机主要功能的是_ D _。A.计算机可以代替人的脑力劳动 B.计算机可以存储大量的信息 C.计算机是一种信息处理机 D.计算机可以实现高速运算(5)存储程序概念是由美国数学家冯诺依曼在研究_ D_时首先提出来的。A.ENIACB.UNIVAC-IC.ILLIAC-IVD.EDVAC(6)现代计算机组织结构是以_ B _为中心,其基本结构遵循冯诺依曼思想。A.寄存器 B.存储器 C.运算器 D.控制器(7)冯诺依曼存储程序的思想是指_ C _。A.只有数据存储在存储器 B.只有程序存储在存储器 C.数据和程序都存储在存储器 D.数据和程序都不存储在存储器 1.10 填空题(1)计算机 CPU 主要包括和_ _两个部件。答:运算器 控制器 (2)计算机的硬件包括、_ _、_ _、_ _和_ _等 5 大部分。答:运算器 控制器 存储器 输入设备 输出设备(3)计算机的运算精度与机器的有关,为解决精度与硬件成本的矛盾,大多数计算机使用_ _。答:字长 变字长运算 (4)从软、硬件交界面看,计算机层次结构包括和_ _两大部分。答:实机器 虚机器 (5)计算机硬件直接能执行的程序是程序,高级语言编写的源程序必须经过_ _翻译,计算机才能执行。答:机器语言 语言处理程序 (6)从计算机诞生起,科学计算一直是计算机最主要的。答:应用领域 (7)银河 I(YH-I)巨型计算机是我国研制的。答:第一台巨型计算机 .3/42 1.11 是非题(1)微处理器可以用来做微型计算机的 CPU。(2)ENIAC 计算机的主要工作原理是存储程序和多道程序控制。(3)决定计算机运算精度的主要技术指标是计算机的字长。(4)计算机总线用于传输控制信息、数据信息和地址信息的设施。(5)计算机系统软件是计算机系统的核心软件。(6)计算机运算速度是指每秒钟能执行操作系统的命令个数。(7)计算机主机由 CPU、存储器和硬盘组成。(8)计算机硬件和软件是相辅相成、缺一不可的。第二章 作业解答 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)8421BCD 2.2 分别计算用二进制表示 4 位、5 位、8 位十进制数时所需要的最小二进制位的长度。答:4 位十进制数的最大数为 9999,2138192999921416384 表示 4 位十进制数所需的最小二进制位的长度为 14 位。5 位十进制数的最大数为 99999,216655369999217131072 表示 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 的倍数,否则就不是。2.4 设机器字长为 8 位(含一位符号位),已知十进制整数 x,分别求出 x原、x反、x移、x补、x补、x21补。(1)x79 (2)x56 (3)x0 (4)x1 答:(1)x79(01001111)2 (2)x56(00111000)2(3)x0(00000000)2 (4)x1(00000001)2 x x原 x反 x移 x补 x补 x21补 79 01001111 01001111 11001111 01001111 10110001 00100111(截断法)00101000(0 舍 1 入)56 10111000 11000111 01001000 11001000 00111000 11100100 0 10000000 11111111 10000000 00000000 00000000 00000000 1 10000001 111111110 011111111 111111111 00000001(溢出)机器零 .4/42 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.0001 2.6 已知 x 的二进制真值,试求 x补、x补、x21补、x41补、2x补、4x补、2x补、x41补。(1)x0.0101101 (2)x0.1001011 (3)x1 (4)x0.0001010 x x补 x补 x21补 x41补 2x补 4x补 2x补 x41补 0.0101101 0.0101101 1.1010011 0.0010110 0.0010111 0.0001011 0.1011010 溢出 1.0100110 1.1110101 0.1001011 1.0110101 0.1001011 1.1011010 1.1011011 1.1101110 1.1101101 溢出 溢出 溢出 0.0010010 0.0010011 1 1.0000000 无表示 1.1000000 1.1100000 溢出 溢出 溢出 0.0100000 0.0001010 1.1110110 0.0001010 1.1111011 1.1111110 1.1111101 1.1101100 1.1011000 0.0010100 0.000010 0.000011 2.7 根据题 2.7 表中给定的机器数(整数),分别写出把它们看作原码、反码、补码、移码表示形式时所对应的十进制真值。题 2.7 表 表示形式 机器数 原码表示 反码表示 补码表示 移码表示 01011100+92+92+92-36 11011001-89-38-39+89 10000000-0-127-128 0 2.8 设十进制数 x(124.625)210(1)写出 x 对应的二进制定点小数表示形式。(2)若机器的浮点数表示格式为:20 19 18 15 14 0 数符 阶符 阶码 尾数 其中阶码和尾数的基数均为 2。写出阶码和尾数均采用原码表示时的机器数形式。写出阶码和尾数均采用补码表示时的机器数形式。答:(1)x 对应的二进制定点小数表示形式为:1111100.1012100.1111100101230.0001111100101(2)阶码和尾数均采用原码表示时的机器数形式:0 10011 1111100101000000 1001 11111100 1010 000009FCA0H 阶码和尾数均采用补码表示时的机器数形式:0 11101 1111100101000000 1110 11111100 1010 00000EFCA0H 2.9 设某机字长为 16 位,数据表示格式为:定点整数:.5/42 0 1 15 数符 尾数 浮点数:0 1 2 5 6 15 数符 阶符 阶码 尾数 分别写出该机在下列的数据表示形式中所能表示的最小正数、最大正数、最大负数、最小负数(绝对值最大的负数)和浮点规格化最小正数、最大负数在机器中的表示形式和所对应的十进制真值。(1)原码表示的定点整数;(2)补码表示的定点整数;(3)阶码与尾数均用原码表示的浮点数;(4)阶码与尾数均用补码表示的浮点数;(5)阶码为移码、尾数用补码表示的浮点数。解:(1)原码表示的定点整数 机器数形式 十进制真值 最小正数 0 000000000000001 1 最大正数 0 111111111111111 2151 最大负数 1 000000000000001 1 最小负数 1 111111111111111(2151)(2)补码表示的定点整数 机器数形式 十进制真值 最小正数 0 000000000000001 1 最大正数 0 111111111111111 2151 最大负数 1 111111111111111 1 最小负数 1 000000000000000 215 (3)阶码与尾数均用原码表示的浮点数;机器数形式 十进制真值 最小正数 0 1 1111 0000000001 210215 规格化最小正数 0 1 1111 1000000000 21215 最大正数 0 0 1111 1111111111(1210)215 最大负数 1 1 1111 0000000001 210215 规格化最大负数 1 1 1111 1000000000 21215 最小负数 1 0 1111 1111111111(1210)215 (4)阶码与尾数均用补码表示的浮点数;机器数形式 十进制真值.6/42 最小正数 0 1 0000 0000000001 210216 规格化最小正数 0 1 0000 1000000000 21216 最大正数 0 0 1111 1111111111(1210)215 最大负数 1 1 0000 1111111111 210216 规格化最大负数 1 1 0000 0111111111(21210)216 最小负数 1 0 1111 0000000000 1215 (5)阶码为移码、尾数用补码表示的浮点数。机器数形式 十进制真值 最小正数 0 0 0000 0000000001 210216 规格化最小正数 0 0 0000 1000000000 21216 最大正数 0 1 1111 1111111111(1210)215 最大负数 1 0 0000 1111111111 210216 规格化最大负数 1 0 0000 0111111111(21210)216 最小负数 1 0 1111 0000000000 1215 2.10 设 2.9 题中的浮点数格式中,阶码与尾数均用补码表示,分别写出下面用十六进制书写的浮点机器数所对应的十进制真值。(1)FFFFH;(2)C400H;(3)C000H。答:(1)FFFFH1 11111 111111111121021211(2)C400H1 10001 00000000001215215(3)C000H1 10000 00000000001216216 2.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)(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 01000000000000000000000 十六进制形式:C0A00000H.7/42 2.12 用十六进制写出写出 IEEE754 标准 32 位单精度浮点数所能表示的最小规格化正数和最大规格化负数的机器数表示形式。答:若 1E254,则 N(1)S2E127(1.M),为规格化数。最小规格化正数的机器数表示形式:S0,E1,M00000000000000000000000 0 00000001 0000000000000000000000000800000H 最大规格化负数的机器数表示形式:S1,E1,M00000000000000000000000 1 00000001 0000000000000000000000080800000H 2.13 写出下列十六进制的 IEEE 单精度浮点数代码所代表的十进制数值。(1)42E48000 (2)3F880000 (3)00800000 (4)C7F00000 解:(1)42E480000 10000101 11001001000000000000000 指数(10000101)21271331276 M1.110010010000000000000001(1/21/41/321/256)十进制数值 N1(1/21/41/321/256)26114.25(2)3F8800000 01111111 00010000000000000000000 指数(01111111)21271271270 M1.0001000000000000000000011/161.0625 十进制数值 N1.0625201.0625(3)008000000 00000001 00000000000000000000000 指数(00000001)21271127126 M1.00000000000000000000000 十进制数值 N12126(4)C7F000001 10001111 11100000000000000000000 指数(10001111)212714312716 M1.111000000000000000000001(1/21/41/8)1.875 十进制数值 N(216215214213)152131228801.875216 2.14 设有两个正浮点数:1e112SN,2e222SN(1)若 e1e2,是否有 N1N2(2)若 S1、S2 均为规格化数,上述结论是否正确?答:(1)不一定(2)正确 2.15 设一个六位二进制小数 x0.a1a2a3a4a5a6,x0,请回答:(1)若要 x81,a1a2a3a4a5a6需要满足什么条件?(2)若要 x21,a1a2a3a4a5a6需要满足什么条件?(3)若要41x161,a1a2a3a4a5a6需要满足什么条件?解:(1)要 x81,a1a2a3a4a5a6需要满足:a1a2a3至少有一个 1.8/42(2)要 x21,a1a2a3a4a5a6需要满足:a11,且 a2a3a4a5a6至少有一个为 1(不为全 0)(3)要41x161,a1a2a3a4a5a6需要满足:a10 且 a21,a3a4a5a6为全 0 a20 且 a31,a4a5a6任意 或 a20 且 a30,a41,a5a6至少有一个为 1 2.16 表示一个汉字的内码需几个字节?表示一个 3232 点阵的汉字字形码需几个字节?在计算机内部如何区分字符信息与汉字信息?答:一个汉字的内码需 2 个字节。表示一个 3232 点阵的汉字字形码需 432128 个字节。在计算机内部利用字节的最高位是 0 还是 1 区分字符信息与汉字信息.2.17 分别用前分隔数字串、后嵌入数字串和压缩的十进制数串形式表示下列十进制数。(1)74 (2)639 (3)2004 (4)8510 解:(1)74 前分隔数字串 74 2B 37 34 “+”“7”“4”后嵌入数字串 74 37 34 “7”“4”压缩的十进制数串 74 0000 0111 0100 1100 “0”“7”“4”“+”(2)639 前分隔数字串 639 2D 36 33 39 “-“6”“3”“9”后嵌入数字串 639 36 33 79 “6”“3”“9”压缩的十进制数串 639 0110 0011 1001 1101 “6”“3”“9”“-”(3)2004 前分隔数字串 2004 2B 32 30 30 34 “+”“2”“0”“0”“4”后嵌入数字串 2004 32 30 30 34 “2”“0”“0”“4”压缩的十进制数串.9/42 2004 0000 0010 0000 0000 0100 1100 “0”“2”“0”“0”“4”“+”(4)8510 前分隔数字串 8510 2D 38 35 31 30 “-“8”“5”“1”“0”后嵌入数字串 8510 38 35 31 70 “8”“5”“1”“0”压缩的十进制数串 8510 0000 1000 0101 0001 0000 1101 “0”“8”“5”“1”“0”“-”2.18 数据校验码的实现原理是什么?答:。数据校验码的实现原理是在正常编码中加入一些冗余位,即在正常编码组中加入一些非法编码,当合法数据编码出现某些错误时,就成为非法编码,因此就可以通过检测编码是否合法来达到自动发现、定位乃至改正错误的目的。在数据校验码的设计中,需要根据编码的码距合理地安排非法编码的数量和编码规则。2.19 什么是“码距”?数据校验与码距有什么关系?答:码距是指在一组编码中任何两个编码之间最小的距离。数据校验码的校验位越多,码距越大,编码的检错和纠错能力越强。记码距为 d,码距与校验码的检错和纠错能力的关系是:de1 可检验 e 个错。d2t1 可纠正 t 个错。det1 且 et,可检 e 个错并能纠正 t 个错。2.20 奇偶校验码的码距是多少?奇偶校验码的校错能力怎样?答:奇偶校验码的码距为 2。奇偶校验码只能发现一位或奇数位个错误,而无法发现偶数位个错误,而且即使发现奇数位个错误也无法确定出错的位置,因而无法自动纠正错误。2.21 下面是两个字符(ASCII 码)的检一纠一错的海明校验码(偶校验),请检测它们是否有错?如果有错请加以改正,并写出相应的正确 ASCII 码所代表的字符。(1)10111010011 (2)10001010110 解:(1)指误字为 E1P1A6A5A3A2A01111011 E2P2A6A4A3A1A00101110 E3P4A5A4A311011 E4P8A2A1A000110 得到的指误字为 E4E3E2E10101(5)10,表示接收到的海明校验码中第 5 位上的数码出现了错误。将第 5位上的数码 A51 取反,即可得到正确结果 10110010011。正确 ASCII 码所代表的字符为 1001011“K”。(2)指误字为 E1P1A6A5A3A2A01011100 E2P2A6A4A3A1A00001100 E3P4A5A4A301010 E4P8A2A1A001100.10/42 得到的指误字为 E4E3E2E10000,无错。正确 ASCII 码为 0101110“”2.22 试编出 8 位有效信息 01101101 的检二纠一错的海明校验码(用偶校验)。解:8 位有效信息需要用 4 个校验位,所以检一纠一错的海明校验码共有 12 位。4 个校验位为:P1A7A6A4A3A1010100 P2A7A5A4A2A1010100 P4A6A5A4A011011 P8A3A2A1A011011 检一纠一错的海明校验码:0001110111011DDH 检二纠一错的海明校验码,增加 P0 P0P1P2A7P4A6A5A4P8A3A2A1A01 有效信息 01101101 的 13 位检二纠一错的海明校验码:100011101110111DDH 2.23 设准备传送的数据块信息是 1010110010001111,选择生成多项式为 G(x)100101,试求出数据块的 CRC码。解:模 2 除后,余数 R(x)10011,数据块的 CRC 码:101011001000111110011 2.24 某 CRC 码(CRC)的生成多项式 G(x)x3x21,请判断下列 CRC 码是否存在错误。(1)0000000 (2)1111101 (3)1001111 (4)1000110 解:G(x)1101(1)0000000 模 2 除 1101,余数为:000,无错(2)1111101 模 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至少有一个为 1 C.x11,x2x8任意 D.x10,x2x8任意(3)在某 8 位定点机中,寄存器内容为 10000000,若它的数值等于128,则它采用的数据表示为 B。A.原码 B.补码 C.反码 D.移码(4)在下列机器数中,哪种表示方式下零的表示形式是唯一的 B。A.原码 B.补码 C.反码 D.都不是(5)下列论述中,正确的是 D。A.已知x原求x补的方法是:在x原的末位加 1 B.已知x补求x补的方法是:在x补的的末位加 1 C.已知x原求x补的方法是:将尾数连同符号位一起取反,再在末位加 1 D.已知x补求x补的方法是:将尾数连同符号位一起取反,再在末位加 1(6)IEEE754 标准规定的 32 位浮点数格式中,符号位为 1 位,阶码为 8 位,尾数为 23 位,则它所能表示的最大规格化正数为 A。A.(2223)2127 B.(1223)2127 C.(2223)2255 D.2127223(7)浮点数的表示范围取决于 A。.11/42 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.校验码中的任一位发生错误,在与 G(x)作模 2 除时,都应使余数不为 0 B.校验码中的不同位发生错误时,在与 G(x)作模 2 除时,都应使余数不同 C.用 G(x)对余数作模 2 除,应能使余数循环 D.不同的生成多项式所得的 CRC 码的码距相同,因而检错、校错能力相同 2.26 填空题(1)设某机字长为 8 位(含一符号位),若 x补11001001,则 x 所表示的十进制数的真值为,1/4x补;若 y移=11001001,则 y 所表示的十进制数的真值为;y 的原码表示y原。答:-5511110010 +73 01001001(2)在带符号数的编码方式中,零的表示是唯一的有和。答:补码 移码 (3)若x1补10110111,x2原1.01101,则数 x1的十进制数真值是,x2的十进制数真值是。答:-73 -0.71875(4)设某浮点数的阶码为 8 位(最左一位为符号位),用移码表示;尾数为 24 位(最左一位为符号位),采用规格化补码表示,则该浮点数能表示的最大正数的阶码为,尾数为;规格化最大负数的阶码为,尾数为。(用二进制编码回答)(书上:最小负数的阶码为,尾数为)答:11111111 011111111111111111111111 11111111 100000000000000000000000 (5)设有效信息位的位数为 N,校验位数为 K,则能够检测出一位出错并能自动纠错的海明校验码应满足的关系是。答: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.111101 xy补0.110110.000110.11110.12/42 xy补0.110111.1111010.11000(2)x补0.10111 y补1.00101 y补0.11011 xy补0.101111.001011.11100 xy补0.101110.110111.10010 溢出(3)x补1.01010 y补1.10001 y补0.01111 xy补1.010101.100010.11011 溢出 xy补1.010100.011111.11001 3.2 已知x补、y补,计算xy变形补和xy变形补,并判断溢出情况。(1)x补100111 y补111100 (2)x补011011 y补110100(3)x补101111 y补011000 解:(1)x变形补1100111 y变形补1111100 y变形补0000100 xy变形补110011111111001100011 xy变形补110011100001001101011(2)x变形补0011011 y变形补1110100 y 变形补0001100 xy变形补001101111101000001111 xy变形补001101100011000100111 溢出(3)x变形补1101111 y变形补0011000 y变形补1101000 xy变形补110111100110000000111 xy变形补110111111010001010111 溢出 3.3 设某机字长为 8 位,给定十进制数:x49,y74。试按补码运算规则计算下列各题,并判断溢出情况。(1)x补y补 (2)x补y补(3)x补21y补 (4)2x21y补(5)21x21y补 (6)x补2y补 解:x补00110001y补10110110 y补01001010(1)x补y补001100011011011011100111 (2)x补y补001100010100101001111011(3)x补21y补110011111101101110101010 (4)2x21y补011000100010010110000111 溢出(5)21x21y补000110001101101111110011 (6)x补2y补 2y补溢出,故x补2y补的结果溢出 3.4 分别用原码一位乘法和补码一位乘法计算xy原和xy补。(1)x0.11001 y0.10001 (2)x0.01101 y0.10100(3)x0.10111 y0.11011 (4)x0.01011 y0.11010 解:(1)xy原0.0110101001 xy补0.0110101001(2)xy原1.0100000100 xy补1.1011111100(3)xy原1.1001101101 xy补1.0110010011(4)xy原0.0100011110 xy补0.0100011110 .13/42 3.5 分别用原码两位乘法和补码两位乘法计算xy原和xy补。(1)x0.11001 y0.10001 (2)x0.10101 y0.01101(3)x0.01111 y0.11101 (4)x0.01001 y0.10010 解:(1)xy原0.0110101001 xy补0.0110101001(2)xy原1.0100010001 xy补1.1011101111(3)xy原1.0110110011 xy补1.1001001101(4)xy原0.0010100010 xy补0.0010100010 3.6 分别用原码不恢复余数法和补码不恢复余数法计算x/y原和x/y补。(1)(4)(1)x0.01011 y0.10110 x/y原0.10000 x/y补0.10000 or x/y补0.10001(2)x0.10011 y0.11101 x/y原1.10100 x/y补1.01100 or x/y补1.01011(3)x0.10111 y0.11011 x/y原0.11100 x/y补0.11101 or x/y补0.11100(4)x10110 y00110 x/y原100011 x/y补111101 3.7 在进行浮点加减运算时,为什么要进行对阶?说明对阶的方法和理由。答:3.8 已知某模型机的浮点数据表示格式如下:0 1 2 7 8 15 数符 阶符 阶码 尾数 其中,浮点数尾数和阶码的基值均为 2,均采用补码表示。(1)求该机所能表示的规格化最小正数和非规格化最小负数的机器数表示及其所对应的十进制真值。(2)已知两个浮点数的机器数表示为EF80H和FFFFH,求它们所对应的十进制真值。(3)已知浮点数的机器数表示为:x补1 1111001 00100101,y补1 1110111 00110100 试按浮点加减运算算法计算xy补。3.9 已知某机浮点数表示格式如下:0 1 2 5 6 11 数符 阶符 阶 码 尾数 其中,浮点数尾数和阶码的基值均为 2,阶码用移码表示,尾数用补码表示。设:x0.1101012001 y0.1001012001 试用浮点运算规则计算 xy、xy、xy、x/y。(要求写出详细运算步骤,并进行规格化)。解:机器数 x补0 01111 110101 y补1 10001 011011 y补0 10001 100101(1)xy 机器数 xy补1 10000 010000 xy0.11000020 对阶:e移ex移ey补011111111101110,eexey00010 小阶对大阶:x补0 10001 001101 xy补1 10000 010000 xy0.11000020(2)xy xy补0 10001 110010 xy0.11001021(3)xy xy0.11111020010.11111021 阶码相加:exey移ex移ey补011110000110000 尾数可采用定点补码乘法(双符号位):SxSy补Sx补Sy补11.100001010111.14/42 规格化:xy补1 01111 000010 xy0.11111020010.11111021(4)x/y 尾数|Sx|Sy|,Sx右移得:Sx补00.011010,ex移10000,阶码相减:exey移ex移ey补100001111101111 尾数用补码不恢复余数法:Sx/Sy补Sx补/Sy补1.010011(恒置 1)OR 1.010100(校正)规格化:x/y补1 01111 010011 OR 1 01111 010100 x/y0.1011012001OR 0.1011002001 3.10 A C Cn Cn+1 ALU AND1 寄存器 B B B AND2 CR&移 位 脉 冲 时钟脉冲 CT Q 启动 结束 Cn Cn Cn+1 Cn+1 00.0 0 0 0 0 1 0 0 1 1 0 0 00.0 0 0 0 0 0 1 0 0 1 1 0 x 00.1 1 0 0 1 00.1 1 0 0 1 00.0 1 1 0 0 1 0 1 0 0 1 1 00.0 0 1 1 0 0 1 0 1 0 0 1 x 11.0 0 1 1 1 11.0 1 1 0 1 11.1 0 1 1 01 0 1 0 1 0 0 11.1 1 0 1 1 0 1 0 1 0 1 0 x 00.1 1 0 0