转载的,标注一下出处,原文链接:https://blog.csdn.net/sinat_34943123/article/details/52890089
64KB的存储器用十六进制表示,它的最大的地址码是
这个问题比较绕并不难,我这里稍微解释一下,算是个人的理解。
首先存储器有64KB的容量,能有多少地址我们先算一算,然后再换算为十六进制
注意,这个64KB是十进制的
所以64KB=64*1024B也就是64*1024个字节,字节是计算机存储的基本单位
64是2的6次方,1024是2的10次方,64*1024=2^6*2^10=2^16结果是2的16次方个字节(请注意了,这里还是十进制)
那么十进制转换为十六进制的前提是先转换为二进制
十进制的2的16次方,就相当于二进制的1后面跟着16个零。
1 0000 0000 0000 0000
换算成十六进制呢?二进制里面4位是十六进制中的一个位
所以十六进制是
(二进制) 1 0000 0000 0000 0000
(十六进制)1 0 0 0 0
大家这样看可能就会舒服很多了,因为十六进制视角下,我们看到64KB的容量是这么大,也就是说有10000个地址,问题是,最大地址码是多少呢?别忘了,地址的开始从0开始,也就是0000,这样打个比如100个数从0开始,那么最大值就是99,那么10000个单位,从0开始,最大数(十六进制下)是多少?FFFF嘛!
所以我说过很多次了,计算机方面的竞赛题目,往往这是很考察知识点的,并不是算法很困难的。