我的工作,而旧的代码大气压,这代码测试的类型的存储方式类似short,int,long和long long分别.
是否有"仍在使用"的系统实际上对不同类型具有不同的字节顺序(由于这些类型的大小不同)?我所知道的唯一例子是PDP-11,其中32位的两个16位值以"大端序"存储,而这16位中的每一个的两个8位半以"小端序"存储".
由于在上述测试中未定义的行为,我可能需要重写部分内容,并想知道是否值得努力保持这种复杂性.我知道(以及如何)我可以编写独立于系统字节序的代码,但这将是我目前没有时间的很多变化.
大端机器仍在使用,在数字信号处理器 (DSP) 中,TI 提供了许多示例,在通用处理器中,Motorola 68000 就是一个例子。值得注意的是,在某些 DSP 和 RISC 处理器(参见 ARM 和 Power)中,字节序是可配置的,有时可以配置为多个级别。
以下是 TI 的示例,它结合了大端和小端处理器以实现特定功能,“OMAP910 设备”
以下 IEEE 文章个人计算机中的字节顺序描述了通用处理器中字节顺序的历史
在设计中使用 DSP 或 ARM 的原因包括,与通用处理器相比,该器件可以针对特定功能进行优化、更具成本效益、需要更少的支持电路或使用更少的功耗。OMAP910 演示了预期功能的字节顺序。
为在具有不同字节序的平台上运行而开发的代码通常以平台的字节序为条件,并且在可配置和相关的情况下,规则通常是显式设置或检测字节序。