1623
1623年,德国科学家契克卡德(Wilhelm Schickard)制造能够进行6位数的加减运算,是为了帮助自己的挚友天文学家开普勒(kepler)做机械运算,但是这个发明很晚世人发现。
1642
法国科学家帕斯卡为了帮助父亲费力的计算税率税款,19岁的帕斯卡研发出一种系列齿轮组成的,外壳用黄铜材料制作,长20英寸宽4英寸高3英寸的厂方盒子计算器,面板上有一列显示数字的小窗口,旋紧发条后才能转动, 用专用的铁笔来拨动转轮以输入数字。 这种机器开始只能够做6位加法和减法。然而,即使只做加法,也有个“逢十进一”的进位问题。聪明的帕斯卡采用了一种小爪子式的棘轮装置。当定位齿轮朝9转动时,棘爪便逐渐升高;一旦齿轮转到0,棘爪就“咔嚓”一声跌落下来,推动十位数的齿轮前进一档。可惜成本较高,不受当代重视
1725
18世纪,工业革命开始,1725年,法国纺织工人鲁修为便于转织图样,在织布机套上穿孔纸带,他的合作伙伴则在1726年着手改良设计,将纸带换成相互串连的穿孔卡片,以此达到仅需手工进料的半自动化生产。1801年,法国人雅卡尔发明提花织布机,利用打孔卡控制织花图样,与前者不同的是,这部织布机变更连串的卡片时,无需更动机械设计,此乃可编程化机器的里程碑。
1880
美国宪法规定每十年必须进行一次人口普查,1880年排山倒海的普查资料就花费了8年时间处理分析,因此美国统计学家赫尔曼·何乐礼在1890年开发出一种排序机,利用打孔卡储存资料,再由机器感测卡片,协助美国人口调查局对统计资料进行自动化制表,结果不出3年就完成户口普查工作。
何乐礼在1896年成立制表机器公司,几经并购,后来成为国际商业机器有限公司(IBM)的一部分。到了1950年,IBM的卡片已在业界与政府机构广泛使用,为了让卡片可作为证明文件重复使用,卡片上都印有“请勿折叠、卷曲或毁损”的警告字样,这行警语后来还成为后二次大战时期的流行标语
1823
1823年,英国数学家巴贝奇在政府的支持下,开始建造以蒸汽引擎驱动的差分机,用来比较数字间的差异,经历10年未能竟功,巴贝奇遂转而研究设计得更为完整,直接利用打孔卡输入和储存资料的分析机,可惜最后巴贝奇穷其毕生精力都未能造出任一完整的差分机或分析机。
于1834年给出现代计算机的基本结构:堆栈、处理器、控制器。巴贝奇在1835年提到,分析机是一部一般用途的可编程化计算机,同样是以蒸汽引擎驱动,吸收提花织布机的优点,使用打孔卡输入资料,其中的重要创新是用齿轮模拟算盘的算珠。他最初的计划是打算利用打孔卡控制机器进行运算,印出高精确度的对数表(特殊用途计算机),后来才转而开发一般用途的可编程化计算机。
尽管巴贝奇的设计健全,方向正确(至少是仅需部分修正),计划仍因各种大小问题而阻扰不断。一来巴贝奇难以共事,任何人不合其意便起争端,加上他的机器全是手工打造,上千个零件只要一个零件有一点小差错,就会引起重大错误,因此需要远超寻常的制造公差。英国政府也因差分机的经验,不愿继续资助如此先进的科技,于是资金告馨后,这项计划就在与技工的吵吵闹闹中告终。
1895
英国工程师弗莱明(John Ambrose Fleming)利用爱迪生效应发明了人电子管。从此,人类进入了微电子时代。1912年,美国发明家德·福雷斯特(Lee de Forest)在加州的帕洛·阿托(Palo Alto)市发现了电子管的放大作用,为电子工业奠定了基础。1913年,麻省理工的教授万尼伐尔·布什(Vannevar Bush)制造出了第一台模拟式计算机微分分析仪。该计算机靠电机驱动,并利用齿轮转动的角度来进行模拟计算。
1936
1936年11月12日,阿兰·图灵(Alan Turing)发表了计算机理论的奠基性论文《论可计算数及其在判定问题中的应用》(On Computable Numbers, with Application to the Entscheidungsproblem)。阐明了现代计算机理论,从理论上定义了现代通用计算机,可计算性等重要概念。为了模拟人的运算过程,图灵指出一台能实现数字计算和逻辑判断的机器必须具备以下功能:
1.一条无限长的纸带。纸带分为一个个格子,每个格子里有一个来自有限字母表的字母,字母表中有一个空白符号。纸带上的格子被编号为0, 1, 2, …,纸带一端可以无限伸展。2.一个扫描器。扫描器能沿着纸带移动,能读出当前所在格子内的字母,并能改变该字母。3.一套控制规则。它根据图灵机的当前状态及当前扫描器读出的字母来决定扫描器的下一步动作,并改变状态寄存器中寄存的状态,令图灵机进入新状态。4.一个状态寄存器。它用来保存图灵机的当前状态。图灵机的所有可能状态的数目是有限的,并且有一个特殊状态——停机状态。满足上面这四个条件的机器就是有名的图灵机。图灵的这篇论文把奥地利数学家库尔特·哥德尔(Kurt Godel)在1931年给出的不可能性定理,用图灵机精确地表达了出来。
图灵机每一部分都有限,只是有一个无限长的纸带,这是一个理想设备。图灵认为这样的一台机器就能模拟人类所能进行的任意计算过程。图灵对计算机理论的重要贡献之一是给出了停机问题,即数理逻辑中的可计算性问题。它问的是“能否判断任意一个程序会在有限时间内结束运行”这样一个问题。用数学语言来表示就是:给定一个程序P和输入I, 程序P在输入I下是否会停止?
1936年,图灵证明了图灵定理——不存在可以判断停机问题的通用算法。证明给出了计算机和程序的纯数学定义——图灵机。图灵定理告诉我们,停机问题在图灵机上是不可判定问题。从数理逻辑的观点来看,停机问题说的就是一阶逻辑的不完备性。因此,图灵机的本质是哥德尔不完备定理的另一种表述,图灵机是哥德尔的以通用算术为基础的一种形式语言。图灵因其图灵机和图灵定理,被认为是计算机科学之父。