大端模式和小端模式之“终极记忆”

本文深入探讨了大端和小端存储模式的原理及记忆技巧,解释了这两种模式如何影响数据存储和传输,以及它们与CPU内核的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:

十进制数,最高有效位MSB在左边,最低有效位LSB在右边,即左边为大。二进制数其实也是一样的,例如1001_0110表示的十进制数就是96.那么数据是怎么存放在存储器中的呢?无非就两种存放模式:低地址存放MSB,高地址存放LSB;低地址存放LSB,高地址存放MSB。

命名:

但是这两种方式该怎么命名呢?得取个合理的计算机行业的名字才能提高理解效率,这个名称早就已经取好了,就是“低地址存放MSB,高地址存放LSB”称为大端模式,“低地址存放LSB,高地址存放MSB”称为小端模式。可是这种模式本身与它的名字有什么必然联系呢,以至于一说起名字就知道是什么存储模式,很遗憾,我记忆力差,每次遇到大端模式和小端模式我就会去查一下它们分别对应哪种存储模式,非常的浪费一个人的时间,那么有没有很奇特的方式能一下子就把名称与存储模式对应起来呢?网上查了,各种说法,有的说法变得更难记忆,有的说法相当于没说,因此我决定自己想出一种方法能永远记住这个。

记忆技巧:

低地址存放MSB,就相当于弟弟拿大的,哥哥拿小的,而这是一种美德,是一种大的美德,因此称为大端。所以以后一说起大端,就想到它是大的美德,大的美德就是小的拿到大的。

把0x1122334455这个数存放到存储器中,采用大小端方式存储就是如下方式:

大小端模式本质:

大端模式与小端模式是由硬件决定,具体是由CPU内核决定的,而不是存储器决定,更不是编译器决定的。存储器只是一种具体的存储媒介,至于怎么存它可不管,你把好吃的放在自己的房间,把不好吃的放在姐姐房间,那是你自己的选择,跟房间本身没半毛钱关系。

引申:

1、一个变量可能由若干个连续的存储单元组成,每个存储单元都有自己的地址,而变量本身也必须有自己的地址,那么哪个存储单元的地址代表这个变量的地址呢?答案是存储单元最低地址作为变量的地址。

2、大端和小端的概念不仅仅用于数据存储方面,还用于数据传输方面,传输的过程总会涉及到是先传输高有效位(MSB)后传输低有效位(LSB),还是先传输低有效位(LSB)后传输高有效位(MSB)

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值