检索 JavaScript 数字值的实际二进制值?
在 JavaScript 中,对于包含 Number 值的给定属性,是否可以检索实际的二进制值 - 表示该值的 64 位。
var x = 13;
x 指向的内存位置存储了哪些 64 位?
我知道有 IEEE 754 转换器。但是是否有可能从存储单元中检索实际的实时二进制值?顺便说一句,我不需要任何应用程序,我只是好奇......
In JavaScript, for a given property containing a Number value, is it possible to retrieve the actual binary value - the 64 bits representing the value.
var x = 13;
What 64 bits are stored in the memory location that x points to?
I know that there are IEEE 754 converters out there. But is it possible to retrieve the actual live binary value from the memory cell? BTW, I don't need this for any application, I'm just curious...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
请参阅将十进制值转换为 32 位浮点十六进制,您可以在其中找到 32 位情况的代码。将其转换为 64 位情况应该非常简单。
好吧,除了 JavaScript 不向您保证表示
Number
的实际数据类型的任何信息,因此,如果您的 JavaScript 实现仅使用 32 位来表示Number,您可能会遇到溢出问题
。See Converting a decimal value to a 32bit floating-point hexadecimal, where you can find the code for the 32-bit case. Converting that for the 64-bit case should be really straight-forward.
Well, except for the fact that JavaScript doesn't guarantee you anything about the actual data type that represents a
Number
, so you might get overflows if your JavaScript implementation only uses 32 bits for representingNumber
s.