《计算机系统:核心概念及软硬件实现(原书第4版)》——3.8 练习

简介:

本节书摘来自华章计算机《计算机系统:核心概念及软硬件实现(原书第4版)》一书中的第3章,第3.8节,作者:[美] J. 斯坦利·沃法德(J. Stanley Warford)著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.8 练习

3.1 节
*1.数出下列数字后面的10个数(a)八进制从267开始,(b)三进制从2102开始,(c)二进制从10101开始,(d)五进制从2433开始。
2.数出下列数字后面的10个数(a)八进制从466开始,(b)三进制从1201开始,(c)二进制从11011开始,(d)五进制从3434开始。
*3.将下列数字从二进制转换到十进制,假定是无符号二进制表示法:

  (a)10010(b)110           (c)1011        (d)1000  (e)11111        (f)1010101

4.将下列数字从二进制转换到十进制,假定是无符号二进制表示法:

(a)10010       (b)10             (c)1011        (d)10000       (e)1111          (f)11110000

*5.将下列数字从十进制转换到二进制,假定是无符号二进制表示法:

(a)25             (b)16             (c)1             (d)14             (e)5             (f)41
  1. 将下列数字从十进制转换到二进制,假定是无符号二进制表示法:

    (a)12              (b)35             (c)3             (d)0             (e)27             (f)16
  2. 采用无符号二进制表示法,下列单元用二进制和十进制表示的表数范围是什么?
    (a)2位单元 (b)3位单元 (c)4位单元

      (d)5位单元              (e)n位单元
    
  3. 执行下面的无符号加法运算,假定是7位单元。显示进位位的结果。
    image

9.执行下面的无符号加法运算,假定是9位单元。显示进位位的结果。
image

10.假定是12位单元,求与0110 0101 0111相加,和为全0的二进制数,即求下面运算中缺失的数字。
image

求出的数可能会把进位位置为1。不看3.2节,你能给出求任意数的如上缺失数字的通用规则吗?提示:一个简单的规则涉及NOT运算。
11.根据3.1节,你可以通过看1的位置上的数字来确定二进制数是奇数还是偶数,这个规则对任何基数都可能吗?请解释。

12.八进制和十进制之间的转换类似于二进制和十进制之间的转换。*(a)写出图3-4所示的八进制数70146的多项式表达。(b)使用图3-5的技巧,把7291(dec)转换为八进制。

13.二进制小数类似于十进制小数,它包含一个二进制小数点,而不是十进制小数点。*(a)写出图3-4所示的十进制数29.458的多项式表达。(b)写出图3-4所示的二进制数1011.100101的多项式表达。(c)在(b)中的二进制数的十进制值是什么?

14.为何ISA3层的程序员会混淆万圣节(Halloween)和圣诞节(Christmas)?提示:31(oct)等于什么?
3.2节
*15.将下列数从十进制转换到二进制,假定用7位补码二进制表达式:

  (a)49        (b)-27            (c)0
  (d)-64        (e)-1            (f)-2
  (g)这台计算机二进制和十进制的数值范围是什么?

16 . 将下列数从十进制转换到二进制,假定用9位补码二进制表达式:

  (a)51        (b)-29            (c)-2
  (d)0        (e)-256            (f)-1
  (g)这个单元二进制和十进制的数值范围是什么?

17 . 将下列数从二进制转换到十进制,假定是7位补码二进制表达式:

  (a)001 1101        (b)101 0101        (c)111 1100
  (d)000 0001        (e)100 0000        (f)100 0001

18 . 将下列数从二进制转换到十进制,假定是9位补码二进制表达式:

  (a)0 0001 1010          (b)1 0110 1010          (c)1 1111 1100
  (d)0 0000  0001         (e)1 0000 0000            (f)1 0000 0001

*19. 执行下面的加法运算,假定是7位补码二进制表示。显示状态位的结果:

image

20.执行下面的加法运算,假定是9位补码二进制表示。显示状态位的结果:
image

21.用补码二进制表示,下列单元二进制和十进制表数范围是什么?

(a)2位单元(b)3位单元(c)4位单元    
    (d)5位单元(e)n位单元

3.3节

*22.假定是7位单元,执行下面的逻辑运算:
image

23.假定是9位单元,执行下面的逻辑运算:
image

*24.假定是7位补码二进制表示,将下列数字从十进制转换到二进制,给出ASL运算的结果,再把它转换回十进制。用ASR运算再做一次。对于ASL,给出对NZVC位的影响。对于ASR,给出对NZC位的影响。

    (a)24                     (b)37                         (c)-26    
(d)1                     (e)0                                   (f)-1

25.假定是9位补码二进制表示,将下列数字从十进制转换到二进制,给出ASL运算的结果,接着把它转换回十进制。用ASR运算再做一次。对于ASL,给出对NZVC位的影响。对于ASR,给出对NZC位的影响。

    (a)94                     (b)135                         (c)-62
    (d)1                     (e)0                         (f)-1

26 . (a)写出6位单元算术右移的RTL描述。(b)写出16位单元算术左移的RTL描述。
27 .假定是7位单元,给出在C的初始值下,各个数的循环位移运算结果:

    (a)C=1, ROL 010 1101                                                   (b)C=0, ROL 010 1101
    (c)C=1, ROR 010 1101                                                   (d)C=0, ROR 010 1101

28 . 假定是9位单元,给出在C的初始值下,各个数的循环位移运算结果:

    (a)C=1, ROL 0 0110 1101                                              (b)C=0, ROL 0 0110 1101
    (c)C=1, ROR 0 0110 1101                                              (d)C=0, ROR 0 0110 1101

29 . (a)写出6位单元循环右移的RTL表述。(b)写出16位单元循环左移的RTL表述。
3.4节
30.从下面的数开始,往后数5个十六进制数:
(a)3AB7 (b)6FD (c)B9E
31.将下列十六进制数转换到十进制:
(a)2D5E (b)2F (c)7
32.本章提到了从十进制到十六进制的转换方法,但是没有给出例子。采用该方法把下列数从十进制转换到十六进制:
(a)26831 (b)4096 (c)9
33.把十进制数转换到二进制数的方法稍加改动,就能把十进制数转换到任何基数。(a)解释从十进制转换到八进制的方法。(b)解释从十进制转到基数n的方法。
*34.假定是7位补码二进制表示,将下面的数从十六进制转换到十进制,记得要检查符号位:

    (a)5D        (b)2F        (c)40

35.假定是9位补码二进制表示,将下面的数从十六进制转换到十进制,记得要检查符号位:

    (a)1B4        (b)0F5        (c)100

*36. 假定是7位补码二进制表示,写出下面十进制数的十六进制位模式:

    (a)-27        (b)63        (c)-1

37.假定是9位补码二进制表示,写出下面十进制数的十六进制位模式:

    (a)-73        (b)-1        (c)94

*38.将下面加密的ASCII消息解码(横着读)

    100 1000        110 0001        111 0110        110 0101
    010 0000        110 0001        010 0000        110 1110
    110 1001        110 0011        110 0101        010 0000
    110 0100        110 0001        111 1001        010 0001

39.将下面加密的ASCII消息解码(横着读)

    100 1101        110 0101        110 0101        111 0100
    010 0000        110 0001        111 0100        010 0000
    110 1101        110 1001        110 0100        110 1110
    110 1001        110 0111        110 1000        111 0100
    010 1110

40.下面的9个字符的字符串是以ASCII怎样存储的?
image

41.下面的13个字符的字符串是以ASCII怎样存储的?
image

42.你是和上斯洛波维亚打仗的下斯洛波维亚军队的首席通信官,为了获得斯洛波维亚的领地,你的间谍将潜入敌人的指挥中枢。你知道上斯洛波维亚正在策划一次重要的攻击,你也知道下列情况:(1)攻击的时间是日落或日出,(2)攻击将通过陆地、空中或者大海,(3)攻击将会在3月28、29、30、31或者4月1日进行。你的间谍必须用二进制和你通信,设计一个合适的二进制编码用来传递这些信息,尽可能使用最少的位数。
43.有时候八进制用于代替十六进制来表示位序列。

 (a)一个八进制数代表多少位?
    在下面的单元,如何用八进制来表示十进制数-13?
    (b)15位单元      (c)16位单元(d)8位单元

3.5节
44.把下列数从二进制转换到十进制:

    (a)110.101001           (b)0.000011         (c)1.0

45.把下列数从二进制转换到十进制:

    (a)101.101001           (b)0.000101        (c)1.0

46.把下列数从十进制转换到二进制:

    (a)13.156 25              (b)0.039 062 5    (c)0.6

47.把下列数从十进制转换到二进制:

    (a)12.281 25              (b)0.023 437 5    (c)0.7

48.做一个类似图3-30的表,可以比较4位单元的所有余7码和补码。
49.(a)用余7码表示法,4位单元以二进制和十进制表示的表数范围是什么?(b)用余15码表示法,5位单元以二进制和十进制表示的表数范围是什么?(c)用余2n-1-1码表示法,n位单元以二进制和十进制表示的表数范围是什么?
50.假定是3位指数字段和4位有效位数,写出下列十进制值的位模式:

(a)-12.5            (b)13.0          (c)0.43        (d)0.101 562 5
    (d)0.5                     (e)0.6                       (f)256.015 625

51 . 假定是3位指数字段和4位有效位数,下面位模式表示的十进制值是什么:

(a)0 010 1101    (b)1 101 0110           (c)1 111 1001
    (d)0 001 0011         (e)1 000 0100           (f)0 111 0000

52 . 采用IEEE 754单精度浮点数表示法,写出下面十进制值的十六进制表示:

(a)27.101 562 5      (b)-1.0                      (c)-0.0

(d)0.5 (e)0.6 (f)256.015 625
53 .采用IEEE 754单精度浮点数表示法,下面用十六进制表示的数的二进制科学计数法表示是什么:
(a)4280 0000 (b)B350 0000 (c)0061 0000

    (d)FF80 0000         (e)7FE4 0000           (f)8000 0000

54.采用IEEE 754单精度浮点数表示法,写出下列数的十六进制表示:

  (a)正零                            (b)最小正的非规格化数             (c)最大正的非规格化数
    (d)最小正的规格化数     (e)1.0                                          (f)最大正的规格化数
    (g)正无穷大

55.采用IEEE 754双精度浮点数表示法,写出下列数的十六进制表示:

    (a)正零              (b)最小正的非规格化数     (c)最大正的非规格化数
    (d)最小正的规格化数     (e)1.0                                  (f)最大正的规格化数
    (g)正无穷大
相关文章
|
存储 C++ Python
《计算机系统:核心概念及软硬件实现(原书第4版)》——导读
这种方法为讨论计算机科学中的核心问题提供了一种很自然的环境。例如,本书介绍了HOL6层的结构化编程,可以和Asmb5层的非结构化编程的可能性进行对比。书中讨论了goto争议、结构化编程/效率之间的折中,给出了两个层次上语言的实际例子。
1833 0

热门文章

最新文章