问题标签 [endianness]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python中整数的字节顺序
我正在开发一个程序,我将一些数据存储在一个整数中并按位处理。例如,我可能会收到数字 48,我将逐位处理它。一般来说,整数的字节序取决于整数的机器表示,但是 Python 是否会做任何事情来保证整数总是小字节序?还是我需要像在 C 中那样检查字节顺序,然后为这两种情况编写单独的代码?
我问是因为我的代码在 Sun 机器上运行,虽然它现在运行的机器使用 Intel 处理器,但我将来可能不得不切换到带有 Sun 处理器的机器,我知道这是大端的。
endianness - 从使用大端到小端的转换过程有多快?
从使用大端到小端的转换过程有多快?
c++ - C/C++:强制位域顺序和对齐
我读到结构中位字段的顺序是特定于平台的。如果我使用不同的特定于编译器的打包选项,这会保证数据在写入时以正确的顺序存储吗?例如:
在带有 GCC 编译器的 Intel 处理器上,这些字段在内存中布局,如图所示。Message.version
是缓冲区中的前 3 位,Message.type
然后是。如果我找到各种编译器的等效结构打包选项,这将是跨平台的吗?
c# - BinaryWriter 字节序问题
我正在使用 BinaryWriter 类将二进制文件写入磁盘。当我调用 Write 方法时,传递一个无符号短值,它以小端格式写入。例如:
将二进制文件中的值写入 0x00 0xA0。有没有办法让 BInaryWriter 使用 Big Endian?如果没有,是否可以创建一个新类,继承 BinaryWriter 并重载 Write 函数以使其写入大端?
ascii - ASCII 字符如何存储在内存中?
考虑一台计算机,它具有根据大端方案以 32 位字组织的字节可寻址存储器。程序读取在键盘上输入的 ASCII 字符并将它们存储在连续的字节位置中,从位置 1000 开始。在输入名称“johnson”后,显示位置 1000 和 1004 处的两个内存字的内容。
c - ASCII 字符串和字节序
一位和我一起工作的实习生向我展示了他参加的关于字节顺序问题的计算机科学考试。有一个问题显示了一个 ASCII 字符串“My-Pizza”,学生必须展示该字符串如何在小端计算机的内存中表示。当然,这听起来像是一个技巧问题,因为 ASCII 字符串不受字节序问题的影响。
但令人震惊的是,实习生声称他的教授坚持认为该字符串将表示为:
我知道这不可能。在任何机器上都无法像这样表示 ASCII 字符串。但显然,教授在坚持这一点。所以,我写了一个小 C 程序并告诉实习生把它交给他的教授。
这清楚地表明该字符串在内存中存储为“My-Pizza”。一天后,实习生回复我,告诉我教授现在声称 C 正在自动转换地址以以正确的顺序显示字符串。
我告诉他他的教授疯了,这显然是错误的。但只是为了检查我自己的理智,我决定将其发布在 stackoverflow 上,以便让其他人确认我在说什么。
所以,我问:谁在这里?
c++ - constexpr 和字节序
在 C++ 编程世界中不时出现的一个常见问题是编译时确定字节顺序。通常这是通过几乎不可移植的#ifdefs 来完成的。但是 C++11constexpr
关键字和模板专业化是否为我们提供了更好的解决方案?
执行以下操作是否合法 C++11:
然后专门为两种字节序类型创建一个模板:
然后做:
c# - 在 C# 中将数组中的字节从大端交换到小端的快速方法
我正在从一个大端的二进制流中读取。BitConverter 类自动执行此操作。不幸的是,我需要的浮点转换与 BitConverter.ToSingle(byte[]) 不同,所以我有自己的同事的例程。但输入 byte[] 需要采用 little-endian。有没有人有一种快速的方法来转换字节 [] 数组的字节顺序。当然,我可以交换每个字节,但必须有一个技巧。谢谢。
c# - 用 16 位字在 C# 中交换字节顺序的更快方法
必须有一种更快更好的方法来交换 16 位字的字节然后这个:
有人有想法吗?
c - C字节序转换:一点一点
我有一个特殊的无符号长整数(32 位),我需要逐位转换它的字节顺序 - 我的长整数表示几件东西都被一起平滑成一个二进制文件。
我该怎么做?