直接寻址的最大范围怎么算

直接寻址的最大范围怎么算,第1张

要看字长是多少位的,不同字长,其直接寻址范围也是不同的,例如16位字长,其直接寻址范围是2^16=(2^6)(2^10)=641024=64KB,也就是说直接寻址范围就是64KB。用二进制表示的话,地址编号就是16个0到16个1,即0000000000000000~1111111111111111。

是2的16次方。

举个最简单的例子,某个程序要访问内存,以16位为例。采用间接寻址。假设,地址码是4位2进制,如果是1对1的关系,4位地址码最多是2的4次方内存单元。只用一个1个内存就能访问更大的单元。//先访问0001H单元内存mov 0001H 0000H //将立即数0001H放。

扩展资料:

由于程序中的指令序列通常是顺序排列的,对于顺序推进的指令序列,采用程序计数器PC加1的方式自动形成下一条指令的地址。当程序发生转移时,就不能采用上述方式,此时把指令地址的形成转换为 *** 作数地址的寻址。把指令不当指令信息,而当作 *** 作数信息来处理、按 *** 作数的寻址方式获得指令地址。

参考资料来源:百度百科-寻址概念

某计算机字长是16位,它的存储容量是1MB,按字编址,它的寻址范围是512KB。

因为存储容量=1M(字节)=1024KB(字节)=512KW(字),所以其寻址范围是512K。

寻址空间是CPU对于内存寻址的能力,通俗地说,就是能最多用到多少内存的一个问题,即能够寻址的最大容量。一般用MB和G来表示。

扩展资料

Intel公司早期的CPU产品的地址总线和地址寄存器的宽度为20位,即CPU的寻址能力为2^20=10241024字节=1024K字节=1M字节。

286的地址总线和地址寄存器的宽度为24位,CPU的寻址能力为2^24=1024410244B=410244KB=16M。

386及386以上的地址总线和地址寄存器的宽度为32位,CPU的寻址能力为2^32=4096M字节=4G字节。

也就是说,如果机器的CPU过早,即使有很大的内存也不能得到利用,而对于现在的PⅡ级的CPU,其寻址能力已远远超过目前的内存容量。

由此推出:地址总线为N位(N通常都是8的整数倍;也说N根数据总线)的CPU寻址范围是2的N次方字节,即2^N(B)。

解答:
按双字变址,故为64位
16MB=16102410248位,所以16MB可以寻址为:
(16102410248)/64=210241024=2M,
所以寻址范围是:
0~2M-1


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12618924.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存