计算机组成存储单元地址分配,【计算机组成原理】主存中存储单元地址的分配/大小端方式/按字节(字)寻址云笙菇凉的博客-...

本文写的很详细,搞了很久才理解这块的东西,如有错误请指出.

为了方便理解,先补充一些知识

8位十六进制=32位二进制

字地址=存储字地址=存储单元地址

1字节=8位二进制

字(word)是一次存取,加工,传送的数据长度,字长是每个字所包含的位数,32位字长=4个字节

32(字长)/8(bit)=4(字节) 因此1个字=4个字节

大端和小端是指数据在内存中的存储模式,它由 CPU 决定:

1) 大端模式(Big-endian)是指将数据的低位(比如 1234 中的 34 就是低位)放在内存的高地址上,而数据的高位(比如 1234 中的 12 就是高位)放在内存的低地址上.

2) 小端模式(Little-endian)是指将数据的低位放在内存的低地址上,而数据的高位放在内存的高地址上。这种存储模式将地址的高低和数据的大小结合起来,高地址存放数值较大的部分,低地址存放数值较小的部分,这和我们的思维习惯是一致,比较容易理解。

e329eb132b62c40ad4f1e0400f32fe03.png

12345678H是8位十六进制(也就是8个16进制数),左边大端方式12所在的位置是低地址,1个十六进制数转化为二进制占4位,因为一个字节是8位二进制,因此一个格子里放2个十六进制数.

列 字地址 0 4 8 ,实际是因为1个字=4个字节, 也就是0123(0)4567(4)891011(8)

对16个格子进行编号,第一行第一个是0, 就像二维数组那样. 0就是最低位

地址线和按字节寻址/按字寻址

8496ead3c5e0c42a7cf0315b37a0b27b.png

总线中的每根“线”,一次只能传输0/1,所以一根线能传输1位(bit)的数据,两根线呢,能传输2位(bit)。但是,需要注意的是1bit能表达0和1,所以1bit能表达2个数,所以,3bit能表达的数其实是2^3个,也就是8。

地址线24根,按字节寻址范围为2^24 =16M;

若字长32位,则一个字有4个字节,所以要留2根地址线指出该字中的哪个字节[00,01,10,11],即寻址范围为 2^24−2=4M;

若字长16位,则一个字有2个字节,所以要留1根地址线指出该字中的哪个字节[0,1],即寻址范围为2^24−1=8M;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值