1个CPU的寻址能力为8KB,那么它的地址总线的宽度为多少?解决方法
发布时间:2010-06-14 15:31:10 文章来源:www.iduyao.cn 采编人员:星星草
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为多少?
1个CPU的寻址能力为8KB,那么它的地址总线的宽度为多少?这是在王爽的汇编里的第一题,答案是13根。我就有点弄不明白了。以我的算法8KB = 8 * 1024 * 8 bit = 2^16 是16根。
既然1根地址总线是对应一个二进制位,那它的寻址能力应该也是2^1,为什么是2^3呢。
我又看了书上面讲的,一根地址总线的寻址能力是一个内存单元,一个内在单元应该是1Byte,为什么一根位地址总线的寻址能力是8位了呢。实在想不明白。
大牛们指点一下。谢谢了。
------解决方案--------------------
一根地址总线寻址为2^1=2
10根地址总线就是2^10=1024byte=1KB
13根就是2^13=8KB
N根就是2^N
你的解法错了...
------解决方案--------------------
补充一下,你的理解是要*8
其实不用乘8的,我假设有4根地址线,那么就有16种组合,分别是0000,0001,0010·····
每一种组合都是一个byte,而不是楼主想的二进制位,所以不用*8
不知道我说的清楚不,功力不够啊- -
------解决方案--------------------
给楼上再补充一下:寻址就是用一个数字表示一个字节存储单元的地址,而不是表示这个存储单元中的内容,所以不用乘以8.
------解决方案--------------------
楼主你的想法那不叫寻址。。
所谓的寻址。是找内存单元的地址。也就是说用一个数来描述是哪一个内存单元。
//一个内存单元是8bit也就是一个字节。你不要把这个搞到寻址上去了。
1位的地址总线可以描述2个数据 就是0 和 1。
也就是1位的地址总线可能确定的地址有2种。
8K = 2 ^13 。
要在这么多个数里面确定一个位置。就需要一个13位2进制数。
所以地址总线的宽度应该是13。
------解决方案--------------------
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
MSN通讯协议逆向
MSN 进行数据通讯中,据说用了TWN认证,通过SSL/TLS连接到login.passport.com和 loginnet.passportr.com 等服务器。
...
-
win7+64位cpu的exe反汇编问题,多次问人,无果
vs20008写的一个很简单的c++控制台程序
平台是:win7 64位操作系统
用od进行反汇编,...
-
可能很白痴的问题:想给ax赋一个负数怎么做?
比如想要赋一个-5给ax,是不是只有求出这个-5的补码,然后mov进这个补码这一种方法?
------...
-
居然显示不出负数来,悲剧
Assembly code
.386
.model flat,stdcall
include kernel32.inc
includelib kernel32.lib
include ms...
-
call far ptr '标号'的问题[在线等答案]
为什么ax会是1010?不是1006??求详细解答
难道call far ptr不是执行了push cs,push ip,jm...
-
CPU的程序计数器PC和指令指针寄存器IP是一个东西吗?
看上去好像功能完全一样,又觉得不应该是一回事,求教
------解决方案----------...
-
菜鸟问题,高人来帮忙
编程,统计data段中数值为8的字节的个数,用ax保存结果
我的代码
Assembly code
assume cs:code,ds:data
data se...
-
一个死循环问题
什么原因造成内循环才刚循环一次还没完,到了loop s1的时候cx突然变成F?
Assembly code
assume cs:codesg,ds:datas...
-
初学MUL乘法指令,写法求解释下
MUL r8/m8 ;无符号字节乘:AX←AL×r8/m8
MUL r16/m16 ;无符号字乘:DX.AX←AX×r16/...
-
汇编如何 取到8051的P0口的内容呢?
Assembly code
ORG 0000H
AJMP START
ORG 0030H
START: MOV P0,#00H
LOOP: ...