当前位置: 首页 > news >正文

什么是大端序,什么是小端序,如何记忆它们!!!

小端序(Little-Endian) 和 大端序(Big-Endian) 是计算机中多字节数据在内存中的两种存储方式,具体区别及记忆方法如下:


1. 定义

  • 大端序(Big-Endian)

    • 高位字节存于低地址,低位字节存于高地址。

    • 示例:数值 0x12345678 在内存中存储为 12 34 56 78(从左到右为低地址到高地址)。

  • 小端序(Little-Endian)

    • 低位字节存于低地址,高位字节存于高地址。

    • 示例:数值 0x12345678 在内存中存储为 78 56 34 12


2. 记忆技巧

(1) 名称联想
  • 大端序

    • “大”对应“高位优先”,即 最高有效位(Most Significant Byte, MSB) 放在内存起始(低地址)。

    • 类似书写顺序:从左到右,高位在前(如数字 1234 写作 1(千位)在前)。

  • 小端序

    • “小”对应“低位优先”,即 最低有效位(Least Significant Byte, LSB) 放在内存起始(低地址)。

    • 类似反序书写:从右到左,低位在前(如数字 1234 写作 4(个位)在前)。

(2) 生活比喻
  • 大端序
    类似于日期格式 “年-月-日”(高位优先),例如 2023-10-05

  • 小端序
    类似于日期格式 “日-月-年”(低位优先),例如 05-10-2023

(3) 实际例子
  • 数值 0xA1B2 的存储

    • 大端序:内存顺序为 A1 B2(高字节 A1 在前)。

    • 小端序:内存顺序为 B2 A1(低字节 B2 在前)。


3. 应用场景

  • 大端序

    • 网络传输(网络字节序)、Java虚拟机、PowerPC处理器。

  • 小端序

    • x86/x64架构(Intel/AMD处理器)、ARM处理器(可配置)。


4. 验证方法(C语言示例)

通过代码查看整型数值在内存中的字节顺序:

#include <stdio.h>int main() {int num = 0x12345678;unsigned char *p = (unsigned char *)#printf("内存字节顺序:");for (int i = 0; i < sizeof(num); i++) {printf("%02X ", p[i]);}return 0;
}
  • 大端序输出12 34 56 78

  • 小端序输出78 56 34 12


5. 总结

  • 大端序:高位在前,适合人类阅读习惯。

  • 小端序:低位在前,硬件处理更高效。

  • 记忆口诀
    “大端高位先,小端低位前;网络用大端,Intel是小端。”

通过名称联想、生活类比和代码验证,可牢固掌握两者的区别与应用场景。

http://www.dtcms.com/a/216427.html

相关文章:

  • 深度学习常见实验问题与实验技巧
  • C++ 初始化大全
  • 阿里云云网络论文:Nezha,计算网络解耦下的vSwitch池化架构
  • 三品PLM产品全生命周期管理功能清单 三品PLM系统赋能企业产品全生命周期管理
  • 开疆智能Profinet转Profibus网关连接施耐德ATV610变频器案例
  • Web3怎么本地测试连接以太坊?
  • 车载网关策略 --- 车载网关通信故障处理机制深度解析
  • 26考研 | 王道 | 第五章 传输层
  • Linux 下 C 语言实现工厂模式
  • K8S Pod调度方法实例
  • go build -gcflags 参数学习
  • Oracle 12c新增的数字转换验证VALIDATE_CONVERSION函数
  • 多模态大语言模型arxiv论文略读(九十四)
  • 【linux篇】动静态库和自动化构建的“神之一手”:make、Makefile
  • 【C++】小知识点
  • 《计算机组成原理》第 9 章 - 控制单元的功能
  • 电脑主板VGA长亮白灯
  • 自动化Web页面性能测试介绍
  • word中表格拉不动以及插入图片有间距
  • 使用 ssld 提取CMS 签名并重签名
  • Python学习(1) ----- Python的文件读取和写入
  • el-table设置自定义css
  • 电气行业PLM应用案例:国产PLM助力山西氪安研发转型
  • 高频面试--MySQL
  • day03
  • 大模型实现多卡训练保证数据一致性
  • SSM-IOC入门案例/DI入门案例
  • P4155 [SCOI2015] 国旗计划
  • 第二批考更有利?软考高项两个批次考试难度对比分析!
  • Oracle EBS 12.1 处理ISG 发布的wsdl 被请求时遇到500错误