我们除了了解不同编程语言的设计思路
也应当了解编程的发展历史
从而判断未来的编程技术将走向何方
下面就为大家普及下
计算机发展历程中的8个冷门小知识!
1.
第一台电脑为蒸汽驱动
作为公认的编程之父
Charles Babbage发明了世界上首批计算机之一
他将这台新设备称为分析引擎
其体积超过一栋房屋
由六台蒸汽机驱动并使用打孔卡进行编程
分析引擎有四大主要组成部分:
1.转盘——相当于现代计算机中的CPU;
2.存储——相当于现代计算机中的内存与存储介质;
3.读取器——相当于输入机制
4.打印机——用于实现信息输出
2.
电脑病毒的设计初衷并非是造成损害
史上第一款电脑病毒
竟然是由防御技术专家
Fred Cohen亲手设计出来的
目的仅仅是为了证明程序对电脑感染的可行性
从未希望借此对电脑造成任何危害
但这款程序却能够对电脑进行感染
并且能通过软盘等移动介质
在不同计算机之间进行传播
因而命名为病毒
后来,他又创造出一种主动式电脑病毒
主要目的是帮助电脑用户找到未受感染可执行文件
3.
史上第一位程序员为女性
她的名字是Ada Lovelace
在1843年,翻译了意大利工程师Luigi Menabreaw
撰写的分析引擎文章
她把自己的理解都批注到每篇文章下
而这举动加快了计算机编程技术的发展
在这之后她又设计出了
第一种能够利用分析引擎计算伯努利数的算法
这也是第一个用电脑编写的算法
4.
第一款数字化电脑游戏从未带来任何利润回报
第一个电脑游戏出现于1962年
由麻省理工学院的计算机程序员Steve Russell
与其团队一同编写
这款名为《太空大战》的游戏耗费了他们近200个小时
虽然Russell和他的团队从未在这个游戏所得任何收益
但如果没有这一突破
我们可能永远不会拥有如今蓬勃发展的视频游戏产业
5.
图像处理算法中使用最广的一幅图片来自《花花公子》杂志
40年来
这幅被应用为图像处理方案中的泛用性标准测试素材
还被程序员们亲切称为Lena的图片
但大多数人都不知道
它是来自《花花公子》杂志1972年11月刊的插页
6.
GIT中保证文件完整性的SHA-1值
Linux kernel开创者和Git的开发者——Linus说
Git使用了SHA-1并非是为了安全性
而是为了数据的完整性
它可以保证,在很多年后
你重新checkout某个commit时
一定是它多年前的当时的状态
完全一摸一样,完全值得信任
7.
程序中bug的名称源自“虫子”
这一术语最初由爱迪生在1878年提出的
但当时并没有流行起来
在这的几年之后
美国上将Grace Hopper在她的日志本中
写下了她在Mark II电脑上发现的一项bug
不过实际上,她说的真的是“虫子”问题
因为一只蛾子被困在电脑的继电器中
导致电脑的操作无法正常运行
如图片所见
她写道“这是我在电脑上发现的第一个bug”。
8.
丰富多彩的计算机编程世界
如果将计算机编程世界看作一个国家
那么其中涉及的语言种类必然冠绝群伦
目前已知的编程语言共有698种
远远超过任何以语言多样性著称的国家