Time 这是什么时间系统?
我想了解一些程序,在我还不知道的某个系统中处理时间。希望你能告诉我什么是系统,如果有的话 其中一个数字值为170000000,代表2037年4月26日。另一个例子是164632577,代表2022年12月20日 我用历元转换器测试了两者,但我得到了完全不同的日期,所以不能确定它是历元。你有什么线索吗Time 这是什么时间系统?,time,Time,我想了解一些程序,在我还不知道的某个系统中处理时间。希望你能告诉我什么是系统,如果有的话 其中一个数字值为170000000,代表2037年4月26日。另一个例子是164632577,代表2022年12月20日 我用历元转换器测试了两者,但我得到了完全不同的日期,所以不能确定它是历元。你有什么线索吗 谢谢。我们假设从日期转换为这些奇怪时间单位的公式如下: f(x) = m*x + b 其中x以奇怪的时间单位表示,f以天表示: f(2037*365.2425+31+28+31+26)=17000
谢谢。我们假设从日期转换为这些奇怪时间单位的公式如下:
f(x) = m*x + b
其中x以奇怪的时间单位表示,f以天表示:
f(2037*365.2425+31+28+31+26)=170000000f(2022*365.2425+365.2425-(31+1-20)=164632577 因为我们有两个数据点,所以我们可以建立两个公式:
I:f1=m*x1+b
II:f2=m*x2+b 现在我们要找的是:m,b 我们解决如下问题: I=>III:
b=f1-m*x1
三分为二:f2=m*x2+f1-m*x1=>f2-f1=m(x2-x1)=>m=(f2-f1)/(x2-x1)
具体到:
m = 1024.04 units/day and (exactly 1024, most likely, because that’s 2^10)
b=f1-m*x1时
b = -591973731.84 (??)
所以你得到:
从第一年起的天数转换为奇怪的时间单位:
f(x) = 1024 * x - 591973731.84
其中x以天为单位,因此年份*365.2524+(月-1)*30+天
测试表明
f(2038年1月1日=2038*365.2425)=1024*2038*365.2425-591973731.84=170255224.3
,这比2037年12月20日稍微多一点,所以它可以工作
奇怪的是,这些奇怪时间单位的0点代表了1582年左右的年份(x of
f(x)=0
)。我们假设从日期转换为这些奇怪时间单位的公式为以下形式:
f(x) = m*x + b
其中x以奇怪的时间单位表示,f以天表示:
f(2037*365.2425+31+28+31+26)=170000000f(2022*365.2425+365.2425-(31+1-20)=164632577 因为我们有两个数据点,所以我们可以建立两个公式:
I:f1=m*x1+b
II:f2=m*x2+b 现在我们要找的是:m,b 我们解决如下问题: I=>III:
b=f1-m*x1
三分为二:f2=m*x2+f1-m*x1=>f2-f1=m(x2-x1)=>m=(f2-f1)/(x2-x1)
具体到:
m = 1024.04 units/day and (exactly 1024, most likely, because that’s 2^10)
b=f1-m*x1时
b = -591973731.84 (??)
所以你得到:
从第一年起的天数转换为奇怪的时间单位:
f(x) = 1024 * x - 591973731.84
其中x以天为单位,因此年份*365.2524+(月-1)*30+天
测试表明
f(2038年1月1日=2038*365.2425)=1024*2038*365.2425-591973731.84=170255224.3
,这比2037年12月20日稍微多一点,所以它可以工作
奇怪的是,这些奇怪的时间单位中的0点代表了1582年左右的时间(x of
f(x)=0
)。170000000似乎非常四舍五入。你知道你的数字所代表的游戏中的精确秒数吗
它应该是一个线性系统,您知道(170000000-164632577)=5367423的值等于您的天数(2037-04-26-2022-12-20)=5241天之间的差值
这意味着一天是(5241/5367423)=0.00097644623873
从164632577位倒数到零位让我们回到(164632577*0.00097644623873…)=160754.86天,从2022-12-20到1582-11-02
对170000000进行的相同计算将我们带回(170000000*0.00097644623873…=165995,86天,从2037-04-26到1582-11-02。Heuruka
因此,您有一个系统,其中时间($value)=[1582-11-02]+[0.00097644623873…*$value天]
问题:
- 这些数字有几个舍入问题。你的日期很可能包括秒,但我们计算的是整天
- 我们正在时光倒流,将出现与时间旅行相关的问题。这些问题包括但不限于根据您的日历不存在的日期
编辑:我以前写过乘数应该是0.001,但正如丹尼尔在另一个答案中指出的,它实际上是1/1024=0.0009765625。170000000似乎非常四舍五入。你知道你的数字在游戏中代表的精确秒数吗 它应该是一个线性系统,您知道(170000000-164632577)=5367423的值等于您的天数(2037-04-26-2022-12-20)=5241天之间的差值 这意味着一天是(5241/5367423)=0.00097644623873 从164632577位倒数到零位让我们回到(164632577*0.00097644623873…)=160754.86天,从2022-12-20到1582-11-02 对170000000进行的相同计算将我们带回(170000000*0.00097644623873…=165995,86天,从2037-04-26到1582-11-02。Heuruka 因此,您有一个系统,其中
时间($value)=[1582-11-02]+[0.00097644623873…*$value天]
问题:
- 这些数字有几个舍入问题。你的日期很可能包括秒,但我们计算的是整天
- 我们正在时光倒流,将出现与时间旅行相关的问题。这些问题包括但不限于根据您的日历不存在的日期
编辑:我之前写过乘数应该是0.001,但正如Daniel在另一个答案中指出的那样,它实际上是1/1024=0.0009765625。你可能想标记语言,也许还需要列出你用来获取这些值的函数。这是一个游戏,我真的不知道这是用什么语言写的。你不知道吗我不知道它是用什么语言写的,但你正在试图理解它?我认为识别程序使用的语言是第一步