大端存储和小端存储

简介: 1.大小端字节序2.大端存储3.小端存储4.为什么会有大小端存储模式之分?5.如何判断当前机器是大端存储还是小端存储方法1方法2

1.大小端字节序

大小端字节序:数据在电脑上存储的字节顺序

2.大端存储

大端存储模式:数据的低位保存在内存的高地址中,数据的高位保存在内存的低地址中

3.小端存储

小端存储模式:数据的低位保存在内存的低地址中,数据的高位保存在内存的高地址中

4.为什么会有大小端存储模式之分?

在计算机系统中,以字节为单位,每个地址单元对应着一个字节,一个字节为8bit。但在C语言中处理8bit的char外,还有16bit的short型,32bit的int型等,此外,对于位数大于8位的处理器,例如16位或者32位的处理器,由于寄存器宽度大于一个字节,那么必然存在着如何安排多个字节的问题。因此,就出现了大端存储模式和小端存储模式。


5.如何判断是大端存储还是小端存储

方法1

#include <stdio.h>intjudge(void)
{
inta=1;
char*pa= (char*)&a;
return*pa;
}
intmain()
{
intflag=judge();//若返回1,则为小端;若返回0,则为大端if (flag==1)
    {
printf("小端\n");
    }
else    {
printf("大端\n");
    }
return0;
}

分析:

 

 

方法2

intjudge()
{
union    {
inta;
charc;
    }un;
un.a=1;
returnun.c;
}
intmain()
{
intflag=judge();
if (flag==1)
    {
printf("小端\n");
    }
else    {
printf("大端\n");
    }
return0;
}

分析:

目录
相关文章
|
2月前
|
存储
计算机存储,字节分为大端和小端
计算机存储,字节分为大端和小端
43 1
|
2月前
|
存储 网络协议 API
大端与小端概念、多字节之间与单字节多部分的大小端转换详解
大端与小端概念、多字节之间与单字节多部分的大小端转换详解
178 1
|
9月前
|
存储 小程序 编译器
数据的存储--大小端
数据的存储--大小端
406 0
|
2月前
|
存储 小程序 编译器
什么是“大小端字节序”存储模式?
这篇内容讨论了计算机内存中存储整型变量的方式,特别是针对不同字节序(大端和小端)的概念。文章首先解释了正负整数在内存中以补码形式存储的规则,然后提出了一个问题:当一个4字节的整数在内存中存储时,其字节是如何分布的?接着,文章引入了大端字节序和小端字节序的概念,其中大端模式将高位字节存储在低地址,小端模式则相反。文章通过示例说明了两种存储模式的区别,并提供了一道题目来判断当前机器使用的字节序。最后,给出了一个简单的程序来检测系统是大端还是小端。
36 0
什么是“大小端字节序”存储模式?
|
2月前
大端法和小端法
大端法和小端法
23 2
|
7月前
|
存储 编译器 C语言
数据在内存中的存储(包含整型、浮点型在内存中的存储以及大小端的介绍)
数据在内存中的存储(包含整型、浮点型在内存中的存储以及大小端的介绍)
94 0
|
10月前
|
存储
大端法与小段法的区别
大端法与小段法的区别
132 0
|
存储 小程序 编译器
整型在内存中的存储(详细剖析大小端)——“C”
整型在内存中的存储(详细剖析大小端)——“C”
大端和小端模式
大端和小端模式