计组_存储单元的地址分配和数据的存储和排列方式(大端方式/小端方式)

存储单元的地址分配和数据的存储和排列方式(大端方式/小端方式)

存储单元的地址分配

  • 主存各存储单元空间位置是由单元地址号来表示的,
  • 地址总线是用来指出存储单元地址号的,根据该地址可读出或写人一个存储字
  • 不同的机器存储字长也不同,为了满足字符处理的需要,常用8位二进制数表示一个字节,因此存储字长都取8(bit)的倍数。
  • 通常计算机系统既可按字寻址,也可按字节寻址。
    • 例如IBM 370机的字长为32位,
      • 它可按字节寻址,即它的每一个存储字包含4个可独立寻址的字节,
      • 其地址分配如图(a)所示。
        • 1646531269942
        • 字地址(word address)的二进制分别是:0000,0100,1000
        • 该矩阵下,每一行代表该机器的一个字(word);四个数字分别表示该字中的四个字节的四个地址
      • 字地址是用(构成)该(的4个字节中的)高位字节的地址来表示
        • 根据后面的数据存储和排列方式可以知,该方式属于小端方式排列
      • 故其字地址是4的整数倍(4Byte),正好用地址码末两位来区分同一字4个字节的位置
    • 但对PDP -11机而言,其字长为16位,字地址是2的整数倍.
      • 它用低位字节的地址来表示字地址
      • 🥰03/06/2022 09:59:33
        • 该方式属于大端方式排列
    • 由图(a)所示,对24位地址线的主存而言,按字节寻址的范围是16 M( 2 24 = 2 4 × 2 20 = 16 M ( B y t e ) 2^{24}=2^{4}\times 2^{20}=16M(Byte) 224=24×220=16M(Byte),(地址线的位数直接决定了字节的寻址能力(范围,和机器相关的单位是,也就是同样位数的地址线的寻址范围会因为不同的机器而不同);按寻址的范围为4M(按字寻址的范围宽度/4)(a机器的一个字包含4个Byte)。
    • 由图(b)所示,对24位地址线而言,按字节寻址的范围仍为16 M,但按寻址的范围为8 M。

数据的存储和排列

  • 现代计算机基本上都采用字节编址,即每个地址编号中存放1字节。
  • 不同类型的数据占用的字节数不同,
    • int和 float型数据占4字节,double型数据占8字节等,而程序中对每个数据只给定一个地址
    • 假设变量i的地址为08 00H,字节01H、23H、45H、67H应该各有一个内存地址,那么地址08 00H对应4字节中哪字节的地址(最高字节地址还是最低字节地址)呢?
    • 这就是字节排列顺序问题。
大端方式

按从最高有效字节到最低有效字节的顺序存储数据,即最高有效字节存放在前面;

小端方式

按从最低有效字节到最高有效字节的顺序存储数据,即最低有效字节存放在前面

1646531559890

posted @   xuchaoxin1375  阅读(50)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2021-11-13 navicat/dataGrip in IDEA/vscode/搭建mysql学习环境/beginner利用小皮控制面板(phpStudy)来快速搭建mysql的运行环境/生成测试数据并填充到表
2021-11-13 mysql_windows/mysql服务安装/使用zip包来安装mysql服务:Installing MySQL onWindows Using a noinstall ZIP Archive
点击右上角即可分享
微信分享提示