王爽《汇编语言》检测点1.1答案及解析

复习时可以先不看答案,再把题目做一遍:

检测点1.1:

(1)1个CPU的寻址能力为8KB,那么它的地址总线宽度为_____。

(2)1KB的存储器有____个存储单元,存储单元的编号从____到____。

(3)1KB的存储器可以存储____个bit,_____个Byte。

(4)1GB、1MB、1KB分别是_____Byte。

(5)8080、8088、80286、80386的地址总线宽度分别为16根、20根、24根、32根,则它们的寻址能力分别为____(KB)、____(MB)、____(MB)、____(GB)。

(6)8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根。则它们一次可以传送的数据为:_____(B)、____(B)、____(B)、____(B)、____(B)。

(7)从内存中读取1024字节的数据,8086至少要读____次,80386至少要读____次。

(8)在寄存器中,数据和程序以____形式存放。


答案及解析:

(1)1个CPU的寻址能力为8KB,那么它的地址总线宽度为_____。

答:13

8KB=8*1024B=8*2^10B=2^13Byte=2^N个内存单元,所以总线宽度N=13

注:

  • 大写的B是Byte(字节),小写的b是bit(比特)。
  • 书1.8节提到,10根导线可以传送10位二进制数据,而一根导线可以传送的稳定状态只有2种(高、低电平),所以10位二进制数可以表示2^10=1024个不同的数据。
  • 书1.8节提到,一个CPU有N根地址线,则可以说这个CPU的地址总线宽度为N。这样的CPU最多可以寻找2^N个内存单元。(即地址总线的宽度N决定了CPU的寻址能力是2^N个内存单元)
  • 书1.6节提到,微机存储器的容量是以Byte(字节)为最小单位计算的,所以一个内存单元占1Byte而不是1bit。(所以计算不能是8KB=8*1024B=8*2^10*8bit)

(2)1KB的存储器有____个存储单元,存储单元的编号从____到____。

答:1024;0;1023

注:

  • 1KB=1024B,微型存储器的一个存储单元占1B
  • 书1.6提到,存储器被划分为若干个存储单元,每个存储单元从0开始顺序编号

(3)1KB的存储器可以存储____个bit,_____个Byte。

答:2^13;1024

注:

1KB=1024B=2^10B=2^10*8b=2^10*2^3bit=2^(10+3)bit=2^13bit=8192bit

注意不要有计算错误(逃

(4)1GB、1MB、1KB分别是_____Byte。

答:2^30,2^20,2^10

注:

1GB=1024MB=2^10MB;1MB=1024KB=2^10KB;1KB=1024B=2^10B

1KB=2^10B

1MB=2^10KB=2^10*2^10B=2^20B

1GB=2^10MB=2^20KB=2^30KB

(5)8080、8088、80286、80386的地址总线宽度分别为16根、20根、24根、32根,则它们的寻址能力分别为____(KB)、____(MB)、____(MB)、____(GB)。

答:64;1;16;4

注:

  • 由上面第(4)题可知

        2^16B=2^6KB=64KB

        2^20B=1MB

        2^24B=2^4MB=16MB

        2^32B=2^2GB=4GB

  • 总线宽度为16,即一个CPU有16根地址线,所以可以传送16位二进制数据(如:1011 0010 0001 0011),每一位二进位位都有0、1两种可能,所以16位二进制数据可以表示2^16个不同的数据。从而他的寻址能力为2^16B=64KB。

(6)8080、8088、8086、80286、80386的数据总线宽度分别为8根、8根、16根、16根、32根。则它们一次可以传送的数据为:_____(B)、____(B)、____(B)、____(B)、____(B)。

答:1;1;2;2;4

注:

  • 8b=1B;8b=1B;16b=2*8b=2B;16b=2B;32b=4*8b=4B
  • 注意,题目中所说的是数据总线而不是地址总线。
  • 书1.9节提到,8根数据总线一次可以传送一个8位(bit)的二进制数据,即一个字节(B)。
  • 一根数据总线一次只传输1位(bit)数据,即0或1。

(7)从内存中读取1024字节的数据,8086至少要读____次,80386至少要读____次。

答:512;256

注:

  • 由上面第(6)题可知,8086的数据总线宽度为16根,一次可传输16b=2B的数据,80386的数据总线宽度为32根,一次可传输32b=4B的数据。
  • 1024B/2B=512次;1024B/4B=256次

(8)在寄存器中,数据和程序以____形式存放。

答:二进制

注:

见书1.5节


总结:

1、在做题时,涉及地址总线和数据总线问题时,曾经突然升起一些疑问:“怎么好像地址总线的单位是Byte,而数据总线的单位是bit呢?”,其实这种想法是错误的,地址总线和数据总线同为导线,一根导线能传输的数据大小都是1bit即0或1两种信号。

2、在做地址总线题时,常涉及的单位是B而不是b,是因为微型存储器的容量是以字节为最小单位来计算的,一个存储单元的大小被设定为1B。

3、以书1.6节附图1.2为例,该存储器被分为128=2^7个存储单元,编号从0~127。那么它对应的地址总线根数(即这个CPU的地址总线宽度)为7,地址总线传输的信号为000 0001时,代表CPU要访问编号为1的存储单元。而由于存储单元的大小是1B,所以CPU访问从编号为0的存储单元~编号为127的存储单元,表示CPU的寻址能力是128*1B即128Byte。


本博文是我在学习《汇编语言》王爽第三版时,一边学习一边做的笔记,可能会存在一些错误,欢迎大家来讨论和指正。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值