Advertisement

数据大小端问题

阅读量:

大端和小端(big-endian和little-endian),源自对鸡蛋各部分的描述,并因此被引申为计算机领域中的术语。这种命名方式源自于对鸡蛋各个部位的不同称呼习惯,在计算机科学中则被用来描述数据在内存中的排列顺序。具体来说,在编程语言中通常会使用大端或小端来指代数据存储的方式:大端表示最低有效位位于内存的较高位置(high address),而小端则表示最低有效位位于内存的较低位置(low address)。例如,在处理数值时(如将数字11223344视为字符串"11223344"并附加尾部空字符'\0'),每一位数字占用一个存储单元,则最低有效位肯定是数字"4"或"5"等位置上的数值,并根据存储顺序的不同决定其在内存中的存放方式非常直观

这里写图片描述

对于一个占用两个字节的16位整数,在内存中存储这组两个字节可采用两种不同的方式:一种是将第一个字节存放于起始地址位置,并将其后续的第二个字节依次存放于随后的内存地址位置上;另一种则是将第二个字节存放于起始地址位置,并依次向前填充前面的所有内存地址位置上。前者被称为小端顺序(little-endian byte order),后者则被称

全部评论 (0)

还没有任何评论哟~