大端 小端 big endian
来源:互联网 发布:mac双系统修改默认启动 编辑:程序博客网 时间:2024/06/05 02:39
对于数据的大小端,从宏观类型来看,这些都应该是被屏蔽的细节。
例1,
int i = 0x01020304; printf( "%08x \n", i );
无论是在大端还是小端系统,它表示的值肯定是一样的和输出结果(即通过我们的阅读,由约定,比如从左到右一次表示最高位)肯定是一样的。
但是,当我们对类型进行分解,那么就需要知道是大端还是小端系统了。
例2,
char *si = (char*) &i; for ( int j = 0; j < sizeof(i); ++j ) { printf( "%02x,", si[j] ) }
这里的输出序列就和系统的大小端有关系了。
还有一种情况就是对单个字节进行操作,例如截取高四位,截取低四位。也需要考虑大小端的情况。
例3,
int i = 0x01020304; char si = (char*) &i; char up = si[0] & 0x01 char low = si[0] & 0x10 /(2*2*2*2); printf( "%x, %x\n", up, low );
这里的up和low也和系统有关系的。
对于mac系统,它好像是小端系统。
所以只要是对数据的整体进行操作,那么大小端系统的结果应该是一样的。
例如,
int i = 1; printf( "%08x\n", i); 输出都应该是 0x00000001, 其中1表示时数据的最低位。可以在系统中位于s[0](小端),或者s[3](大端)
0 0
- 大端 小端 big endian
- 小端(Little Endian) 大端(Big Endian)
- 大端(big endian)小端(little endian)
- 大端Big-Endian 、小端Little-Endian
- 字节序(Endian),大端(Big-Endian),小端(Little-Endian)
- 字节序(Endian),大端(Big-Endian),小端(Little-Endian)
- 字节序(Endian)、大端(Big-Endian)、小端(little-Endian)
- 大端(Big Endian)与小端(Little Endian)详解
- 大端(Big Endian)与小端(Little Endian)详解
- 分析 大端(Big Endian)和小端(Little Endian)
- 大端(Big Endian)与小端(Little Endian)详解
- Little endian and big endian大端小端
- Little endian and big endian大端小端
- 大端(Big Endian)与小端(Little Endian)详解
- 大端(Big Endian)与小端(Little Endian)详解
- 大端(Big Endian)与小端(Little Endian)详解
- 大端(Big Endian)与小端(Little Endian)
- 大端(Big Endian)与小端(Little Endian)详解
- Oracle 查询并删除重复记录的SQL语句
- 无法读取例程 &ROUTINE 中配置文件选项 FND_DEVELOPER_MODE
- Hadoop笔记:集群的运行(版本1.2.1)
- 用Exception类捕获所有异常的技术是怎么用的?
- JSP动态网页--网页之间、类之间的传值
- 大端 小端 big endian
- UVA 11178 Morley's Theorem
- 高等数学(上)期末考试试卷(B)—— 卷三
- 2014 08 26 (2)
- UVA - 12119 The Bells are Ringing (枚举)
- NGUI字体贴图压缩以及相关Shader解读
- AxureRP7.0基础教程系列 部件详解 表格Tabel
- Lua学习笔记 第十七章 弱引用table
- java学生信息管理系统源代码