在最新版本的 boost 中,定义了 4 个字节序宏:
* `BOOST_ENDIAN_BIG_BYTE`, byte-swapped big-endian.
* `BOOST_ENDIAN_BIG_WORD`, word-swapped big-endian.
* `BOOST_ENDIAN_LITTLE_BYTE`, byte-swapped little-endian.
* `BOOST_ENDIAN_LITTLE_WORD`, word-swapped little-endian.
Run Code Online (Sandbox Code Playgroud)
https://www.boost.org/doc/libs/1_69_0/boost/predef/other/endian.h
我不清楚_BYTE和_WORD宏之间的区别。
字交换字节序是指(现在是史前的)硬件,它可以被认为是中间字节序:一个字的两半会被交换,但半字中的字节顺序不会。PDP-11 可能是最著名的架构。
老实说,boost 支持这种字节序的原因尚不清楚,因为我很确定 boost 通常在那些史前架构上得不到很好的支持。例如,C++ 标准可以做小和大的选择:https : //en.cppreference.com/w/cpp/types/endian
查看有关中间端的更多信息:https : //en.wikipedia.org/wiki/Endianness#Middle-endian
| 归档时间: |
|
| 查看次数: |
306 次 |
| 最近记录: |