第一台计算机之前,人怎么算账

第一台计算机之前,人怎么算账

在电子计算机出现之前,人类已经用一套复杂而精巧的方法处理数字。算账这件事,远不只是加减乘除,它涉及记录、核对、汇总、传递,以及如何在容易出错的环节里设置纠错机制。理解这段历史,有助于我们看清计算机到底替代了什么,又继承了什么。

一、账房先生:人脑与算盘的协作

中国传统商号里的账房,是一套成熟的信息处理节点。以明清时期的钱庄和票号为例,账房先生通常使用算盘进行日常核算,但算盘只是工具,真正支撑规模运作的是账簿体系。商家普遍采用“三账”制度:流水账按时间顺序记录每笔交易,总账按客户或科目分类汇总,明细账则追踪具体项目的来龙去脉。这三套账相互勾稽,月末进行“合龙门”——将流水账的收支总额与总账余额核对,差额必须为零,否则就要逐笔排查。

这种复核机制并非中国独有。欧洲中世纪的商人同样发展出复式记账法,但中国账房的做法有其特点:流水账的书写格式高度标准化,每笔记录包含日期、摘要、金额和经手人,相当于预设了数据字段。账房先生还要定期编制“红账”(类似资产负债表),用红色标注异常项目。这些做法说明,在没有计算机的年代,人们已经通过流程设计和纸张格式来约束计算错误。

算盘本身也值得一说。它采用十六进制与十进制混合的计数方式,上珠一颗代表五,下珠一颗代表一,运算时通过口诀驱动手指动作。熟练的账房先生可以做到“盲打”,即不看算盘只凭触觉拨珠,速度不亚于今天的小键盘输入。但算盘不保存中间结果,每一步都需要人工记忆或记录,这是它和后来机械计算器的关键区别。

二、表格革命:从帕乔利到对数表

1494年,意大利修士卢卡·帕乔利出版了《算术、几何、比与比例概论》,系统总结了威尼斯商人的复式记账法。这本书并没有发明复式记账,但它把散落在各商号的做法整理成可传授的规则。帕乔利强调,每笔交易都要在借方和贷方同时登记,且金额相等。这个约束看似简单,却把“账实相符”从个人经验变成了制度要求。此后几百年,欧洲的商业教育一直把帕乔利的著作当作教材。

复式记账解决的是记录问题,而大规模计算还需要另一类工具:数表。17世纪,约翰·纳皮尔发明对数,亨利·布里格斯随后编制了常用对数表。对数表把乘法转化为加法,把除法转化为减法,极大降低了天文、航海和金融计算的工作量。布里格斯的《对数算术》在1624年出版,包含从1到20000以及90000到100000的14位对数表。这些数字不是凭空写出来的,而是通过逐次开平方等手工方法计算,耗时数年。

对数表的出现催生了一个新职业:计算员。他们按照固定算法,在纸上完成大量重复运算,再把结果交给校对员核对。这种“人肉并行计算”的模式,在18世纪和19世纪的欧洲已经相当普遍。法国在大革命期间曾组织过大规模的对数表重算项目,由德普罗尼主持,参与者包括多名计算员,他们采用分工协作的方式,把计算任务拆解成加法、减法等简单步骤。这其实就是后来计算机“流水线”思想的雏形。

三、机械计算:齿轮能走多远

人脑加纸张的极限,在需要高精度或高速度的场合很快暴露出来。17世纪,帕斯卡为了帮助父亲处理税务计算,设计了一种齿轮式加法器。它的核心是一个个带有0到9刻度的齿轮,通过棘轮机构实现进位。帕斯卡的机器能处理多位数加法,但减法需要借助补码,操作起来并不方便。莱布尼茨后来改进了设计,增加了步进鼓轮,使机器能够直接做乘除法,但制造精度要求太高,他的样机并没有投入实用。

真正让机械计算进入商业领域的是19世纪的差分机和分析机设想。查尔斯·巴贝奇在设计差分机时,目标是用有限差分法自动计算多项式值,从而生成高精度数学表。差分法的原理是:一个n次多项式的n阶差分是常数,因此只需做加法就能递推出整张表。巴贝奇的设计包含寄存器、运算器和输出装置,用蒸汽驱动,但受限于当时机械加工水平,项目未能完成。他的分析机设想更进一步,引入了条件分支和循环,但同样停留在图纸阶段。

巴贝奇之后,机械计算器逐渐实用化。19世纪末到20世纪初,瑞典的奥德纳、美国的伯勒斯等公司生产了多种按键式机械计算器,能够完成加减乘除四则运算。这些机器在银行、保险和统计部门广泛使用,直到20世纪70年代才被电子计算器取代。它们的共同特点是:运算过程完全由齿轮和杠杆的物理运动实现,不需要电力,也不存储程序。换句话说,它们能算,但不能“判断”。

四、人力计算机:组织起来的计算

机械计算器解决了单点运算的速度问题,但大规模计算仍然依赖人的组织。19世纪后期,美国人口普查局面临一个现实难题:1880年人口普查的数据处理耗时超过八年,照这个速度,1890年普查的结果还没出来,下一轮普查就要开始了。赫尔曼·霍尔瑞斯为此发明了穿孔卡片制表机,用卡片上的孔洞表示数据,机器通过金属针接触水银或金属刷来读取孔位,自动累计分类计数。1890年普查的数据处理时间缩短到约一年。霍尔瑞斯后来创立了制表机公司,这家公司经过合并成为IBM的前身之一。

穿孔卡片系统的意义不只是快。它把数据变成了机器可读的格式,使“记录”和“计算”可以分离。卡片先由人工打孔,再送入制表机汇总,中间环节可以重复使用同一批卡片进行不同角度的统计。这种思路在20世纪上半叶被广泛采用,保险公司的保单管理、铁路公司的货运统计、甚至政府的税收记录,都建立在穿孔卡片之上。

与此同时,纯人力计算的组织形态也达到高峰。二战期间,美国陆军弹道研究实验室在阿伯丁试验场雇佣了大量计算员,其中许多是女性数学专业毕业生。她们使用机械计算器和数学表,计算火炮射程表。这些计算员按小组分工,有人负责初值,有人负责迭代,有人负责校对。后来ENIAC的编程工作也由这些计算员承担,她们把微分方程转化为机器指令,用插线和开关设置程序。这段历史提醒我们,早期计算机并不是“自动”的,它背后是一整套人力协作体系。

五、信用与风险:算账不只是算术

账房和计算员处理的是已经发生的交易,但商业活动中还有一类计算针对未来:信用评估和风险定价。在计算机出现之前,这类计算主要依靠经验规则和简单的统计。以19世纪的火灾保险为例,保险公司根据建筑材质、位置和用途划分风险等级,每个等级对应不同的费率。这些费率表不是精算模型算出来的,而是从历史赔付记录中归纳出来的经验值。保险公司会保存多年的赔付档案,由职员手工统计各类风险的损失频率,再据此调整费率。

这种做法的局限很明显:样本量有限,分类粗糙,难以处理交互效应。但它也揭示了一个重要事实:算账从来不只是算术,它包含判断和分类。计算机后来在金融领域的应用,首先是从批量处理开始的——工资发放、账单结算、利息计算——这些任务规则明确、数据量大,适合机器执行。至于信用评分和风险模型,则要等到数据积累和统计方法进步之后才逐步自动化。

六、从算账到计算:一条连续的线

把上述线索放在一起看,第一台电子计算机并不是凭空出现的。它继承了账房的复核逻辑、对数表的分工协作、机械计算器的运算单元、穿孔卡片的机器可读格式,以及人力计算机的组织经验。ENIAC之所以重要,不在于它第一个“算”,而在于它第一个用电子速度执行通用计算,并且可以通过重新设置程序来处理不同任务。

更重要的是,这段历史提醒我们,算账的核心问题始终是信息处理:如何记录、如何核对、如何汇总、如何传递。计算机改变了这些环节的速度和规模,但没有改变问题的本质。今天我们在Excel里设置公式、在数据库里写查询,本质上仍然是在做账房先生做过的事——用一套规则约束数字,让它们彼此印证。区别只在于,我们不再需要打算盘,也不再需要把账本锁在铁柜里。

评论

写下你的想法

邮箱不会被公开。带 * 的为必填项。