一.大端和小端的认识解读

首先内存地址和数据的存储大多遵循一个存储规律,
而存储规律分了两类,
一类位大端,数据高位,存储在低地址
也可以是(数据低位,存储在高地址)
数据:0x12345678
高… 低

地址数据高低位置
0x0000 00000x12低地址
0x0000 00010x34
0x0000 00020x56
0x0000 00030x78
0x0000 000…
0xFFFF FFFF0xff高地址

一类位小端,数据低位,存储在低地址。
(数据高位存储在高地址)
数据:0x12345678
高 … 低

地址数据高低位置
0x0000 00000x78低地址
0x0000 00010x56
0x0000 00020x34
0x0000 00030x12
0x0000 000…
0xFFFF FFFF0xff高地址
判断数据存储方式通过联合体来判断:
#include <stdio.h>
#icnlude <arpa/inet.h>
int main (void)
{
	union
	{
		short i;
		char a[2];
	}u;
	u.a[0] = 0x12;
	u.a[1] = 0x34;
	printf ("0x%x\n", u.i);  //0x3412 为小端  0x1234 为大端
	printf ("0x%.x\n", htons (u.i)); //大小端转换 
	return 0;
}

方便记忆:

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值