最初计算机操作系统是32位,而时间也是用32位表示。
System.out.println(Integer.MAX_VALUE);
2147483647
Integer在JAVA内用32位表示,因此32位能表示的最大值是2147483647。另外1年365天的总秒数是31536000,
2147483647/31536000 = 68.1
也就是说32位能表示的最长时间是68年,而实际上到2038年01月19日03时14分07秒,便会到达最大时间,过了这个时间点,所有32位操作系统时间便会变为
10000000 00000000 00000000 00000000
也就是1901年12月13日20时45分52秒,这样便会出现时间回归的现象,很多软件便会运行异常了。

因为用32位来表示时间的最大间隔是68年,而最早出现的UNIX操作系统考虑到计算机产生的年代和应用的时限综合取了1970年1月1日作为UNIX TIME的纪元时间(开始时间),而java自然也遵循了这一约束。

至于时间回归的现象相信随着64为操作系统的产生逐渐得到解决,因为用64位操作系统可以表示到292,277,026,596年12月4日15时30分08秒,相信我们的N代子孙,哪怕地球毁灭那天都不用愁不够用了,因为这个时间已经是千亿年以后了。

为什么编程时间从1970年1月1日开始?相关推荐

  1. 漫话:为什么计算机起始时间是1970年1月1日?

    这是我的第 203 期分享 作者 | 漫画编程 来源 | 漫画编程(ID:mhcoding) 分享 | Java中文社群(ID:javacn666) 问题复现 1970-01-01对于开发者来说都是不 ...

  2. 漫画:为什么计算机起始时间是 1970 年 1 月 1 日?

    作者 | 漫话编程 来源 | 漫话编程(ID:mhcoding) 问题复现 1970-01-01对于开发者来说都是不陌生的,有些系统对于时间的处理如果不够好的话,就可能把时间显示成1970-01-01 ...

  3. java为什么计算时间从1970年1月1日开始

    今天在看Python  API 时,看到 time 模块 : The epoch is the point where the time starts. On January 1st of that  ...

  4. 为什么计算机起始时间是1970年1月1日

    1969年8月,贝尔实验室的程序员肯汤普逊利用妻儿离开一个月的机会,开始着手创造一个全新的革命性的操作系统,他使用B编译语言在老旧的PDP-7机器上开发出了Unix的一个版本.随后,汤普逊和同事丹尼斯 ...

  5. 1970-01-01是什么?为什么计算机起始时间是1970年1月1日

    我们是不是也曾见到过或者听说过1970-01-01,而且它好像常常存在于计算机行业,非常常见,从事IT行业的兄弟应该都接触过,那么到底为什么是1970-01-01,而不是其他呢? 其实,1970-01 ...

  6. DEDECMS发布时间为1970年1月1日的解决方法

    我们在用火车头采集的时候,一般很少有人采集文档的发布时间,基本都是采集了直接发布,所以今天我遇到一个问题,就是采集好的内容发布到dede后,看到系统入库时间为3-19,正常,但是在文章页显示的时间为: ...

  7. 为什么计算机起始时间、为什么Java时间戳、是1970年1月1日?

    为什么计算机起始时间.为什么Java时间戳.是1970年1月1日? 相信这个问题让很多学习编程的人都感到疑惑,我也是,查询了很多,发现这篇帖子讲的通俗易懂,简单明了. [为什么计算机起始时间是1970 ...

  8. 计算机的起始时间 1970年1月1日

    一.1970-01-01 Date date = new Date(0); System.out.println(date);//Thu Jan 01 08:00:00 CST 1970 查看 Dat ...

  9. python输出一年有多少天多少时分秒_python编程如何显示从1970年1月1日到今天多少天又多少小时...

    python编程如何显示从1970年1月1日到今天多少天又多少小时 有两个模块可以实现:time 和 datetime 在time模块中: time()函数返回的是1970-1-1 0:0:0 到现在 ...

最新文章

  1. 交换机软件IOS升级更简化了
  2. MyBatis学习 之 二、SQL语句映射文件(1)resultMap
  3. return跳转 和 goto跳转
  4. 安装容器编排工具 Docker Compose
  5. codeforce No to Palindromes!(枚举)
  6. python字典更改元素_python – 返回带有一个已更改元素的字典
  7. 摘得“2019最佳智能手机”大奖的华为P30系列究竟比iPhone XS系列强在哪
  8. php jquery进度条,如何实现jQuery进度条效果
  9. Visual Studio 编辑R语言环境搭建
  10. java垃圾收集器、Serial收集器、ParNew收集器、Parallel Scavenge收集器、Serial Old 收集器、CMS收集器、G1收集器、如何查看GC日志
  11. python经纬度是否在范围内_如何用经纬度数据在python里查询城市等地址信息
  12. cass有坐标文件生成里程文件_南方CASS里程文件生成
  13. 20170216.双目摄像机标定参数说明
  14. Bootstrap学习(九)collapse折叠窗口、carousel轮播效果、Affix侧边栏
  15. 微信小程序开发费用一览表 微信小程序制作费用是多少钱
  16. HTML+CSS+JavaScript实战——美团首页
  17. QT入门之UI设计界面
  18. does not have write access to 'C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET File
  19. 【HTML | CSS | JAVASCRIPT】再见2022,一起来写一个响应式跨年倒计时吧(附源码)
  20. 电位器的主要参数有哪些?

热门文章

  1. 电容笔能否替代Apple pencil?适用于Ipad电容笔推荐
  2. Python绘画五角星
  3. JAVA实现坦克大战(八个方向移动,根据难度改变地图、玩家自定义地图,含源码)
  4. 详解SpringBoot整合Mybatis框架
  5. 808协议服务器下发,基于部标JT/T 808协议及数据格式的GPS服务器
  6. FileInputStream 和 FileOutStream流
  7. 《gathertool开发使用文档》
  8. ZYNQ 高速QDR IP功能和调用
  9. 修改host文件提示拒绝访问解决
  10. jQuery $(this) 无法获取 value解决方法