打印

大小端的概念其实很简单,好多人还是搞不清楚。

[复制链接]
1195|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
keer_zu|  楼主 | 2015-2-15 12:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
寻址的单位是字节,
而 short
int
long
struct xxx
class xxx 本事都需要占用多个字节存放空间

那么,问题就来了:
类似int这样的数,低权值(个十百千...是十进制的权值,明白权值是什么了吧)到高权值的存放顺序是低地址到高地址或是相反呢?这就是大小端的问题,这是处理器平台决定的,比如ARM和X86就可能不同。

struct类似,它除了有上面的问题外,还有成员的存放顺序,不过道理一样。明白大小端的区别了吗?

相关帖子

沙发
keer_zu|  楼主 | 2015-2-15 12:38 | 只看该作者
其实简单写个程序,判断一下一个不对称的short变量s的值是否:  p ==  *(char *)(&s) + *(((char *)(&s)) + 1) * 256
就可以知道该平台是是大端还是小端了。

使用特权

评论回复
板凳
keer_zu|  楼主 | 2015-2-15 12:39 | 只看该作者
其实简单写个程序,判断一下一个不对称的short变量s的值是否:  p ==  *(char *)(&s) + *(((char *)(&s)) + 1) * 256
就可以知道该平台是是大端还是小端了。

使用特权

评论回复
地板
xouou_53320| | 2015-2-16 12:37 | 只看该作者
大小端 这种说法 根本就是误人子弟的翻译
应该叫 大尾  小尾
大尾:大地址放末位字节
这样不就好理解了

使用特权

评论回复
5
keer_zu|  楼主 | 2015-2-16 15:54 | 只看该作者
xouou_53320 发表于 2015-2-16 12:37
大小端 这种说法 根本就是误人子弟的翻译
应该叫 大尾  小尾
大尾:大地址放末位字节

端和尾道理一样

使用特权

评论回复
6
xouou_53320| | 2017-4-22 10:15 | 只看该作者
keer_zu 发表于 2015-2-16 15:54
端和尾道理一样

端有首端, 末端 , 这能和尾一样?


使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1314

主题

12271

帖子

53

粉丝