第2章练习与思考题参考答案 单片机

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

练习与思考题2

1.为什么微型计算机要采用二进制?十六进制代码能为微型计算机直接执行吗?为什么要使用十六进制数?

答:在所有数制中,只有二进制数最容易用电路来表达,据此构建的计算机结构也是最简单的。十六进制代码不能为计算机直接执行,只有二进制代码才能为计算机所识别和执行。二进制代码过于冗长,而其对应的十六进制数则更为简洁,而且此二种数制的相互转换非常方便,这就是常常使用十六进制数来表示其对应的二进制数的原因。

2.将下列各二进制数分别转换为十进制数和十六进制数。

(1)11010B (2)110100B (3)10101011B (4)11111B

答:(1)11010B=26=1AH (2)110100B=52=34H (3)10101011B=171=ABH (4)11111B=31=1FH

3.将下列各数分别转换为二进制数和十六进制数。

(1)129D (2)253D (3)0.625 (4)111.111

答:(1)129D=10000001B=81H (2)253D=11111101B=FDH

(3)0.625=0.101B=0.AH (4)111.111=01101111.000111B=6F.1CH 4.把下列十六进制数转换成十进制数和二进制数。

(1)AAH (2)BBH (3)C.CH (4)DE.FCH (5)ABC.DH (6)128. 08H 答:(1)AAH=170=10101010B

(2)BBH=187=10111011B

(3)C.CH=12.75=1100.1100H

(4)DE.FCH=222.984375=11011110.1111110B

(5)ABC.DH=2748.8125=101010111100.1101B

(6)128. 08H=296.03125=100101000.00001

5.什么叫原码、反码及补码?

答:在机器数中,最高位为符号位,正数的符号位用0表示,负数的符号位用1表示,其余为该数的绝对值,这种表示法称为原码。正数的反码和原码相同;负数的反码为其原码除符号位外其他各位按位取反得所值。正数的补码和原码相同;负数的补码为反码加1。

6.已知原码如下,写出其反码及补码(其最高位为符号位)。

(1)[X]原= 01011001 (2)[X]原= 11011011 (3)[X]原= 11111100

答:(1)[X]反= [X]补= [X]原= 01011001

(2)[X]反= 10100100 [X]补=10100101

(3)[X]反= 10000011 [X]补=10000100

7.当微机把下列数视为无符号数时,它们相应的十进制数为多少?若把它们视为补码,最高位为符号位,那么它们相应的十进制数又是多少?

(1)10001110 (2)10110000 (3)00010001 (4)01110101

答:视为无符号数时:

(1)10001110B=142 (2)10110000B=176

(3)00010001B=17 (4)01110101B=117

若把它们视为补码,最高位为符号位,那么它们相应的十进制数是:

(1)10001110B= -114 (2)10110000B= -80

(3)00010001B= 17 (4)01110101B= 117

8.先将下列十六进制数转换为二进制数,然后分别完成逻辑乘、逻辑加和逻辑异或操

作。

(1)33H和BBH (2)ABH和FFH (3)78H和0FH

答:(1)X=33H=00110011B,

Y=BBH=10111011B;

X ∧Y=00110011B;X∨Y=10111011B;X⊕Y=10001000B

(2)X=ABH=10101011B,

Y=FFH=11111111B;

X ∧Y=10101011B;X∨Y=11111111B;X⊕Y=01010100B

(3)X=78H=01111000B;

Y=0FH=00001111B;

X ∧Y=00001000B;X∨Y=01111111B;X⊕Y=01110111B;

9.已知x和y,试分别计算[x + y]补和[x- y]补,并指出是否产生溢出(设补码均用8位表示)。

(1)x = +1001110,y = +0010110 (2)x = +0101101,y = -1100100

(3)x = -0101110,y = +0111011 (4)x = -1000101,y = -0110011

答:(1)[x + y]补= 01100100B,无溢出;[x- y]补=00111000B,无溢出;

(2)[x + y]补= 11001001B,无溢出;[x- y]补=10010001B,溢出;

(3)[x + y]补= 00001101B,无溢出;[x- y]补=10010111B,无溢出;

(2)[x + y]补=10001000 B,无溢出;[x- y]补=11101110B,无溢出;

10.写出下列各数的BCD码。

(1)45 (2)98 (3)124 (4)1998

答:(1)45=(0100 0101)BCD(2)98=(1001 1000)BCD

(3)124=(0001 0010 0100)BCD(4)1998=(0001 1001 1001 1000)BCD 11.用十六进制形式写出下列字符的ASCII码。

(1)CD (2)COMPUTER (3)HELLO (4)F365

答:(1)43H、44H (2)43H、4FH、4DH、50H、55H、54H、45H、52H (3)48H、45H、4CH、4CH、4FH (4)46H、33H、36H、35H 12.ALU是什么部件?它能完成什么运算功能?

答:ALU称为算术逻辑部件,它能完成算术运算和逻辑运算。

13.累加器有何用处?

答:累加器通常用于提供ALU的一个运算数据或暂存ALU的运算结果,此外还能使存储其中的数据左移或右移。

14.控制字是什么意思?试举个例子说明之。

答:控制字是一个二进制数,其各位代表相应控制信号的逻辑状态。例如:

CON = L A E A L B E B L C E C L D E D=10010000

表示要将寄存器B的内容传送入寄存器A中去。

15.ROM和RAM各有何特点和用处?

答:ROM为只能读出的存储器,可用于存放固定的程序和数据。

ROM为可在线写入和读出的存储器,可用于随时写入或读出数据,也可用于写入随时有可能改变的用户程序。

16.为什么要建立“地址”这个概念?

答:因为存储器的存储单元很多,为区分不同的存储单元必须给每个存储单元编上地址。

17.除地线公用外,5根地址线和11根地址线各可选多少个地址?

答:25=32个地址

相关文档
最新文档