Big-Endian和Little-Endian的判断,以及我写的C语言测试程序

本文介绍了字节顺序的概念,包括Big-Endian(高字节在前,大端)和Little-Endian(低字节在前,小端),以及为何存在这两种顺序。字节顺序在跨平台通讯和不同编程语言之间交换数据时显得尤为重要,例如网络协议采用Big-Endian,而x86和ARM通常使用Little-Endian。文中还提及Java与某些处理器架构如PowerPC支持Big-Endian。
摘要由CSDN通过智能技术生成

1,什么是字节顺序

指的就是数据在内存里存储的顺序,通常我们默认一个存储单元为1Byte,一个逻辑数据比如Float是4个Byte,它在内存理存储的顺序可以是高字节在前,也可以是低字节在前.这样就有区分了.

2,有些什么顺序:

Big-Endian(MSB),高字节在低地址  中文称“大端”

Little-Endian(LSB),低字节在低地址 中文称“小端”


3,为什么要有字节顺序?

因为程序需要与外界通讯,传送数据,这里的外界包括其他机器和其他语言写的程序.比如x86下c++程序与linux底下的程序通讯,比如c++和java的程序通讯.都会涉及到字节存放顺序的问题.


4,哪些会是Big-Endian,哪些会是Little-Endian

网络协议都是Big-Endian的,Java编译的都是Big-Endian的

Motorola的PowerPC是Big-Endian的

x86系列则采用Little-Endian方式存储数据。

ARM同时支持 big和little,实际应用中通常使用Little-Endian


5.  我的示例程序,可以测试本机CPU是哪种Endian
/*******
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值