数字 1101004800 与数字 20 是如何对应的?

Posted

技术标签:

【中文标题】数字 1101004800 与数字 20 是如何对应的?【英文标题】:How do the digits 1101004800 correspond with the number 20? 【发布时间】:2011-09-23 05:41:17 【问题描述】:

我正在尝试学习如何使用 C++ 修改内存位置,并且在使用 MineSweeper 时,我注意到当内存中的时钟值为 1101004800 时,游戏进入了 20 秒。数字 1101529088 对应于游戏进入 21 秒。有人可以向我解释一下如何将这些 10 位长数字转换为 base-10 吗?

【问题讨论】:

1101529088 - 1101004800 = 524288 = 2^19。我不知道这意味着什么。 会不会是某个时代以来的蜱虫?只是猜测为 41A00000 似乎是一个奇怪的指针地址。 【参考方案1】:

他们使用浮点数来表示计时器。这是一个将整数转换为浮点数的程序:

#include <stdio.h>

int main() 
  int n = 1101004800;
  int n2 = 1101529088;

  printf("%f\n", *((float*)&n));
  printf("%f\n", *((float*)&n2));

  return 0;

输出:

20.000000
21.000000

【讨论】:

【参考方案2】:

1101004800十进制是0x41A00000十六进制,这是20.0的IEEE-754表示。 1101529088 十进制是 0x41A80000 十六进制,这是 21.0 的 IEEE-754 表示。

【讨论】:

谢谢!将浮点数用于始终为整数的计数器是不是有点奇怪? 这确实有点奇怪,但可能有充分的理由。

以上是关于数字 1101004800 与数字 20 是如何对应的?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 pl/SQL 函数在 LOV 项中列出数字(例如从 1 到 20)?返回值与显示值相同

如何计算整数中递归地与给定数字相加的数字对

求大神帮忙解释一下QT18B20数字温度传感器与DS18B20的区别,选择的话应选哪种?

使用jquery如何限制输入框输入数字范围在20到30之间

如何使用opencv集中和调整数字大小?

如何在不使用乘法的情况下对数字进行平方?