x86平台和PowerPC平台的数据存储高地位正好相反?

zaf797979 2009-12-31 11:27:42
在这两个平台使用short int时,貌似高地位正好相反,导致数据出错,是平台上就是相反的吗?
...全文
150 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
pro_or_gram 2011-07-28
  • 打赏
  • 举报
回复
是的,powerpc 只支持 big-endian,默认也是 big-endian, 也有 true little-endian 模式。

little-endian 模式 的定义,是考虑到上层的软件与以前的兼容,

因为你以前的软件可能是在arm,x86等little-endian模式的架构上编写的。
yanghehong 2010-01-07
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 supermegaboy 的回复:]
intel的cpu是小端模式,powerpc的cpu是大端模式,字节排列顺序相反。
[/Quote]

貌似也不全是这样。
印象中PowerPC有big endian的,也有small endian的。
有的公司的做的PowerPC处理器是big endian的,
有的公司做的,则是small endian的。


- 千里孤行
jc_ontheroad 2010-01-01
  • 打赏
  • 举报
回复
是的,x86平台采用低端在前,little endian;PowerPC平台及网络传输,采用高端在前,big endian。
do_fork 2010-01-01
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jackyjkchen 的回复:]
引用 6 楼 do_fork 的回复:
引用 3 楼 jackyjkchen 的回复:
引用 2 楼 do_fork 的回复:
不应该为你的代码假设字节序


某些二进制操作似乎设定字节序效率更高,我见过许多密码库都有为不同字节序专门设定了宏


这个不是为了效率,是为了正确性

我看他的文档里这样写的:如果不清楚目标机器的类型,可以使用“中立端”(ENDIAN_NEUTRAL),如果明确目标机器,使用大端或小端可获得最佳的效能……

似乎就是“大小端无关代码”与“最高效代码”的选择
[/Quote]

知道大小端可以用字长相等的单位做处理,否则只能按字节为单位处理,就是这个差别
jackyjkchen 2010-01-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 do_fork 的回复:]
引用 3 楼 jackyjkchen 的回复:
引用 2 楼 do_fork 的回复:
不应该为你的代码假设字节序


某些二进制操作似乎设定字节序效率更高,我见过许多密码库都有为不同字节序专门设定了宏


这个不是为了效率,是为了正确性
[/Quote]
我看他的文档里这样写的:如果不清楚目标机器的类型,可以使用“中立端”(ENDIAN_NEUTRAL),如果明确目标机器,使用大端或小端可获得最佳的效能……

似乎就是“大小端无关代码”与“最高效代码”的选择
独孤过儿 2010-01-01
  • 打赏
  • 举报
回复
do_fork说的是正确的

可以参考glibc里面的memcpy()函数实现
do_fork 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 jackyjkchen 的回复:]
引用 2 楼 do_fork 的回复:
不应该为你的代码假设字节序


某些二进制操作似乎设定字节序效率更高,我见过许多密码库都有为不同字节序专门设定了宏
[/Quote]

这个不是为了效率,是为了正确性
失落的凡凡 2009-12-31
  • 打赏
  • 举报
回复
程序实现如果依赖字节序,就要考虑好大端法和小端法两种情况
myallisall 2009-12-31
  • 打赏
  • 举报
回复
学习了  哈哈
jackyjkchen 2009-12-31
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 do_fork 的回复:]
不应该为你的代码假设字节序
[/Quote]

某些二进制操作似乎设定字节序效率更高,我见过许多密码库都有为不同字节序专门设定了宏
do_fork 2009-12-31
  • 打赏
  • 举报
回复
不应该为你的代码假设字节序
飞天御剑流 2009-12-31
  • 打赏
  • 举报
回复
intel的cpu是小端模式,powerpc的cpu是大端模式,字节排列顺序相反。

69,368

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧