按字寻址和按字节寻址问题!
来源:互联网 发布:软件部门预算表 编辑:程序博客网 时间:2024/05/21 01:43
转载说明:
最近和“位”打交道多了,研究PCI本地地址I/O寻址空间,看到资料是最大256 Byte,可用8根地址线。当时糊涂,在想2^8=256 啊,怎么和256 Byte搭上了。况且数据线是32位呢。于是网上搜了搜,发现这个讨论帮助蛮大的。特别是7楼和13楼的解答。
以下内容为转载:
L1:
按字寻址和按字节寻址问题!迷茫!!!
书上答案是按字节范围是1M 按字访问的范围是512K
可是书前面讲过地址线对应存储单元 20根就是1M个存储单元 所以按字访问应该是1M的范围 按字节的话应该是2M的范围
和答案矛盾了 求解释!!!!
我是这么理解的:通常人们说的16位机、32位机中的数字都指字长(内部数据线数),数据线根数只决定能传输数据的能力。而地址线根数才决定寻址范围,寻址范围跟数据线根数是无关的,假如有n根地址线,则寻址范围就是2^n B (注意后面范围是字节)。回到原题,20根就是2^20=1MB(恰好是按字节寻),由数据线根数知芯片字长为16位,那按字时就是每个单元扩大到16位,所以1M*8=512k*16; 注意:不要跟存储器按字节、字寻址混淆了,去找来对比下。
L3:
我以前的想法和你相同,后来听高手说存储单元的位数通常默认为1B,因此按字节寻址是1M.
2L中的说法应该就是这个意思吧,但是寻址范围应该就是1M而不是1MB
L4:
没什么疑问的?按字节寻址就是1M,因为2的20次方就是1M啊?一般告诉的地址空间就是指按字节寻址的,至于按字寻址就是2的20次方除以2,得出2的19次方,即512KB
L5:
你看我说的对不啊 首先这个范围应该是没有单位的 其次CPU的地址线和主存的地址线应该是相连的 我看你们的意思是不是虽然CPU有16根数据线 但是只用了8根 另外的空闲了 而地址线是全部用了 可是题目上并没有给出确切的条件啊 并且这样虽然按字节寻址范围是1M了 但是岂不是按字也是1M了吗 因为3L的前提就是1字就是1字节啊!
L6:
各位楼上解释的对,其实记住也行。寻址确实与数据线无关
按字节寻址就是2的地址线数目的次方
按字寻址就是按字节寻址除以(字长\字节),这里字长就是数据线位数
L7:
上面的解释都没看明白,LZ的那到题是唐朔飞教材P97页例4.3,在题目中讲到,A0和BHE来控制按字节和按字两种形式访问,也就是说A0是不能用来传地址的,也就是说CPU只有19根地址线来传地址,因此地址总共有2^19种,每种地址代表的是一个存储单元,也就是指向一个存储字。
如果按字访问就可以访问的地址范围是2^19=512K
如果按字节访问,由于CPU有16根数据线,即一个存储单元可以存16位二进制代码,也就是说一个存储字有16位,即1W=2B,所以按字节访问可以访问的地址范围是512K*2=1M。
如果对存储单元和存储字不是很理解的话,请看唐朔飞教材P13,里面主存结构说的很明显,以及P17关于“MAR的位数反映了存储单元的个数,MDR的位数反映了存储字长”即说明地址位数决定了存储单元的个数,每个存储单元对应一个地址,就是地址位数决定了地址范围;数据位数决定了存储字长。。。
L8:
建议LZ把唐书P73页的地址分配结合下面的图细读三遍!
.
.
.
L11:
本人理解、
按字寻址,即两个字节时,2^1=2 需要调出一根地址线用于存储单元内部寻址,故地址线变为19根用来寻存储单元,所以2^19=512K
按字节时,只有一个字节,而2^0=1,所以全部地址线用来寻存储单元,故为 2^20=1M
不知道对否,反正做题没错过~~~
L13:
按字节寻址的范围表示意思就是每个字节编上号,按字节的号去寻找它~比如4根地址线可以寻找到0—15个“字节号”;
而按字寻址的范围表示现在仍然是4根地址线,为了把每个字中的两个字节都表示出来,必须拿出一位作为字内的字节表示,
这时就只有3根地址线可以寻“字号”也就是0—7个“字号”。这样说不知道你能不能理解了。。。
注:”字节号“与”字号“是方便理解,自己起的名字,不严谨的~
L15:
嗯 明白了 从组相连映射那理解的,就你说的那意思,感觉可以用组相连来理解
================
原讨论在此:
http://www.cskaoyan.com/thread-48595-1-1.html
- 按字寻址和按字节寻址问题!
- 按字节寻址和按字寻址
- 关于按字寻址和按字节寻址的理解
- 关于按字寻址和按字节寻址的理解
- 关于按字寻址和按字节寻址的理解
- 按字节、位、字寻址
- 关于存储器按字节寻址和按字寻址的理解
- 寻址和字节顺序
- 寻址和字节序
- 2.寻址和字节存储顺序
- 寻址
- 寻址
- 51单片机特殊功能寄存器中的字节寻址和位寻址
- 2、Winsock的寻址方式和字节顺序
- 位、字节、寻址空间扫盲
- 位、字节、寻址空间扫盲
- 位、字节、寻址空间扫盲
- 位、字节、寻址空间扫盲
- ListView的监听器中OnItemClick各个参数的作用
- What is The Difference Between Risk Appetite, Risk Tolerance and Risk Threshold?
- 几行脚本让你看出Javascript端倪
- [CODEVS 1281] Xn数列
- 第三方库管理:CocoaPods简介
- 按字寻址和按字节寻址问题!
- ES学习笔记3-检索基础篇
- Mac OS X 背後的故事
- CodeForces 339C Xenia and Weights (简单dfs/dp)
- Linux进阶:让效率翻倍的Bash技巧(一)
- 安眠药的种类
- [UOJ 25][IOI2014]Wall(裸线段树)
- 【Android实战】Afinal框架的使用大全案例
- Java—Java中&&和&以及||和|的区别