计算机发展史 (5)携手共赴难
就在痛苦艰难的时刻,孤独苦闷的巴贝奇意外地收到一封来信,写信人不仅
对他表示理解而且还希望与他共同工作。娟秀字体的签名,表明了她不凡的身份 ──伯爵夫人。
接到信函后不久,巴贝奇实验室门口走进来一位年轻的女士。她身披素雅的 斗蓬,鬓角上斜插一朵白色的康乃馨,显得那么典雅端庄。巴贝奇一时愣在那里, 他与这位女士似曾相识,又想不起曾在何处邂逅。女士落落大方地作了自我介绍, 正是那位写信人。
“您还记得我吗? ”女士低声问道,“十多年前,您还给我讲过差分机原理。” 看到巴贝奇迷惑的眼神,她又笑着补充说:“您说我像野人见到了望远镜。”巴 贝奇恍然大悟,想起已经十分遥远的往事。面前这位女士和那个小女孩之间,依 稀还有几分相似。
原来, 伯爵夫人本名叫阿达·奥古斯塔(Ada Augusta),是英国著名诗人 拜伦的独生女。她比巴贝奇的年龄小 20 多岁,1815 年出生。阿达自小命运多舛, 来到人世的第二年,父亲拜伦因性格不合与她的母亲离异,从此别离英国。可能 是从未得到过父爱的缘由,小阿达没有继承到父亲诗一般的浪漫热情,却继承了 母亲的数学才能和毅力。
还是在阿达的少女时代,母亲的一位朋友领着她们去参观巴贝奇的差分机。 其他女孩子围着差分机叽叽喳喳乱发议论,摸不着头脑。只有阿达看得非常仔细, 她十分理解并且深知巴贝奇这项发明的重大意义。
或许是这个小女孩特殊的气质,在巴贝奇的记忆里打下了较深的印记。他赶 紧请阿达入座,并欣然同意与这位小有名气的数学才女共同研制新的计算机器。
就这样,在阿达 27 岁时,她成为巴贝奇科学研究上的合作伙伴,迷上这项 常人不可理喻的“怪诞 ”研究。其时,她已经成了家,丈夫是洛甫雷斯伯爵。按 照英国的习俗,许多资料在介绍里都把她称为“洛甫雷斯伯爵夫人 ”。
30 年的困难和挫折并没有使巴贝奇屈服,阿达的友情援助更坚定了他的决 心。还在大型差分机进军受挫的 1834 年,巴贝奇就已经提出了一项新的更大胆 的设计。他最后冲刺的目标,不是仅仅能够制表的差分机,而是一种通用的数学 计算机。巴贝奇把这种新的设计叫做“分析机 ” ,它能够自动解算有 100 个变 量的复杂算题,每个数可达 25 位,速度可达每秒钟运算一次。
今天我们再回首看看巴贝奇的设计,分析机的思想仍然闪烁着天才的光芒。
由于巴贝奇晚年因喉疾几乎不能说话,介绍分析机的文字主要由阿达替他完 成。阿达在一篇文章里介绍说:“这台机器不论在可能完成的计算范围、简便程 度以及可靠性与精确度方面,或者是计算时完全不用人参与这方面,都超过了以 前的机器。 ”巴贝奇把分析机设计得那样精巧, 他打算用蒸汽机为动力,驱动 大量的齿轮机构运转。 巴贝奇的分析机大体上有三大部分:其一是齿轮式的“存 贮库 ”,巴贝奇称它为“仓库 ” (Store),每个齿轮可贮存 10 个数,齿轮组 成的阵列总共能够储存 1000 个 50 位数。分析机的第二个部件是所谓“运算室 ”, 它被巴贝奇命名为“作坊 ”(Mill),其基本原理与帕斯卡的转轮相似,用齿轮 间的啮合、旋转、平移等方式进行数字运算。为了加快运算速度,他改进了进位 装置,使得 50 位数加 50 位数的运算可完成于一次转轮之中。第三部分巴贝奇没 有为它具体命名,其功能是以杰卡德穿孔卡中的“0 ”和“ 1 ”来控制运算操作的 顺序,类似于电脑里的控制器。他甚至还考虑到如何使这台机器处理依条件转移 的动作,比如,第一步运算结果若是“ 1 ”,就接着做乘法,若是“0 ”就进行除 法运算。此外,巴贝奇也构思了送入和取出数据的机构,以及在“仓库 ”和“作 坊 ”之间不断往返运输数据的部件。
阿达“心有灵犀一点通 ”,她非常准确地评价道:“分析机‘编织 ’的代数 模式同杰卡德织布机编织的花叶完全一样 ”。于是,为分析机编制一批函数计算 程序的重担,落到了数学才女的肩头。阿达开天辟地第一次为计算机编出了程序, 其中包括计算三角函数的程序、级数相乘程序、伯努利函数程序等等。阿达编制 的这些程序,即使到了今天,电脑软件界的后辈仍然不敢轻易改动一条指令。人 们公认她是世界上第一位软件工程师。
众所周知, 美国国防部据说是花了 250 亿美元和 10 年的光阴,把它所需要 软件的全部功能混合在一种计算机语言中,希望它能成为军方数千种电脑的标准。 1981 年,这种语言被正式命名为 ADA(阿达)语言,使阿达的英名流传至今。
不过,以上讲的都是后话,殊不知巴贝奇和阿达当年处在怎样痛苦的水深火 热之中! 由于得不到任何资助,巴贝奇为把分析机的图纸变成现实,耗尽了自 己全部财产,弄得一贫如洗。他只好暂时放下手头的活,和阿达商量设法赚一些 钱,如制作什么国际象棋玩具,什么赛马游戏机等等。为筹措科研经费,他们不 得不“下海 ”搞“创收 ”。最后,两人陷入了惶惶不可终日的窘境。阿达忍痛两 次把丈夫家中祖传的珍宝送进当铺,以维持日常开销,而这些财宝又两次被她母 亲出资赎了回来。
贫困交加,无休止的脑力劳动,使阿达的健康状况急剧恶化。1852 年,怀 着对分析机成功的美好梦想,软件才女英年早逝,死时年仅 36 岁。阿达去世后, 巴贝奇又默默地独自坚持了近 20 年。晚年的他已经不能准确地发音,甚至不能 有条理地表达自己的意思,但是他仍然百折不挠地坚持工作。1871 年,为计算 机事业贡献毕生精力的先驱者巴贝奇,终于满怀着对分析机无言的悲怅,孤独地 离开了人世。有人把他的大脑用盐渍着保存起来,想经过若干年后,有更先进技 术来研究他大脑保存的精神。
分析机终于没能造出来,巴贝奇和阿达失败了。巴贝奇和阿达的失败是因为 他们看得太远,分析机的设想超出了他们所处时代至少一个世纪!社会发展的需 求和科学技术发展的可能,使得他们注定要成为的悲剧人物。尽管如此,巴贝奇 和阿达为电脑科学留下了一份极其珍贵的精神遗产,包括 30 种不同设计方案, 近 2000 张组装图和 50000 张零件图…… ,更包括那种在逆境中自强不息,为追 求理想奋不顾身的拼搏精神。
相关文章:
计算机发展史 (5)携手共赴难
就在痛苦艰难的时刻,孤独苦闷的巴贝奇意外地收到一封来信,写信人不仅 对他表示理解而且还希望与他共同工作。娟秀字体的签名,表明了她不凡的身份 ──伯爵夫人。 接到信函后不久,巴贝奇实验室门口走进来一位年轻的女士。她身披素雅…...
一键搞定简历设计!电子版简历制作指南3步走!
如今,随着无纸化办公趋势的流行,电子简历逐渐取代了纸质简历,成为我们最常用的简历设计格式。 然而,从纸质简历到电子简历后,对于非平面设计领域的学生来说,简历设计的难度可能再次超出了我们的能力范围。…...
tcpdump 常用用法
简要记录下tcpdump用法 监控某个ip上的某个端口的流量 tcpdump -i enp0s25 tcp port 5432 -nn -S 各个参数作用 -i enp0s25 指定抓包的网卡是enp0s25 -nn 显示ip地址和数字端口 ,如果只 -n 则显示ip,但是端口为services文件中的服务名 如果一个…...
Opencv实战(5)平滑处理与常见函数
平滑处理 Opencv实战: Opencv(1)读取与图像操作 Opencv(2)绘图与图像操作 Opencv(3)详解霍夫变换 Opencv(4)详解轮廓 文章目录 平滑处理1.均值滤波2.方框滤波3.高斯滤波4.中值滤波5.双边滤波 常见函数(1).createTrackbar()(2).SetMouseCallback() 图像的平滑处理是…...
音频PCM介绍与运用
音频PCM介绍与运用 什么是PCM PCM (Pulse Code Modulation) 是一种数字音频编码方式,将模拟声音信号转换为数字信号的过程。在 PCM 中,声音信号被采样并量化为离散的数值,以便于数字化处理和传输。 以下是 PCM 的主要特点: 采样…...
计算机专业大学四年应该如何规划(Java方向)
计算机专业的学生,如何在大学四年内提高自己的竞争力,毕业之后直接进大厂工作? 以下将从大学四年计算机专业的学习规划、课程设置、能力提升、参考书籍等方面,为同学们提供一些建议和指导。 大一: 主攻技能学习并且达…...
算法D27|回溯算法4| 93.复原IP地址 78.子集 90.子集II
93.复原IP地址 本期本来是很有难度的,不过 大家做完 分割回文串 之后,本题就容易很多了 题目链接/文章讲解:代码随想录 视频讲解:回溯算法如何分割字符串并判断是合法IP?| LeetCode:93.复原IP地址_哔哩哔…...
C++实现XOR加解器
#include <Windows.h> #include <iostream> #include <fstream> #include <string>// 加解密函数,使用XOR运算 void XORCrypt(char* data, int size, const std::string& key) {int keyLength key.length();for (int i 0; i < siz…...
Kubernetes的Sevice管理
服务原理: 所有服务都是根据这个服务衍生或者变化出来,根服务---- 服务感知后端靠标签 slelector 标签选择器 kubectl label pods web1 appweb kubectl cluter-info dump | grep -i service-cluster-ip-range 服务ip取值范围 Service 管理: 创建服务: --- kind: Serv…...
C# 高阶语法 —— Winfrom链接SQL数据库的存储过程
存储过程在应用程序端的使用的优点 1 如果sql语句直接写在客户端,以一个字符串的形式体现的,提示不友好,会导致效率降低 2 sql语句写在客户端,可以利用sql注入进行攻击,为了安全性,可以把sql封装在…...
vue3+vite+ts配置多个代理并解决报404问题
之前配置接口代理总是报404,明明接口地址是对的但还是报是因数写法不对;用了vue2中的写法 pathRewrite改为rewrite 根路径下创建env文件根据自己需要名命 .env.development文件内容 # just a flag ENVdevelopment# static前缀 VITE_APP_PUBLIC_PREFIX"" # 基础模块…...
开创未来:探索OpenAI首个AI视频模型Sora的前沿技术与影响
Sora - 探索AI视频模型的无限可能 随着人工智能技术的飞速发展,AI视频模型已成为科技领域的新热点。而在这个浪潮中,OpenAI推出的首个AI视频模型Sora,以其卓越的性能和前瞻性的技术,引领着AI视频领域的创新发展。让我们将一起探讨…...
Redis---持久化
Redis是内存数据库,是把数据存储在内存中的,但是内存中的数据不是持久的,如果想要做到持久,那么就需要让redis将数据存储到硬盘上。 Redis持久化有两种策略: RDB > Redis DataBase RDB机制采取的是定期备份AOF …...
从 Flask 切到 FastAPI 后,起飞了!
我这几天上手体验 FastAPI,感受到这个框架易用和方便。之前也使用过 Python 中的 Django 和 Flask 作为项目的框架。Django 说实话上手也方便,但是学习起来有点重量级框架的感觉,FastAPI 带给我的直观体验还是很轻便的,本文就会着…...
状态码转文字!!!(表格数字转文字)
1、应用场景:在我们的数据库表中经常会有status这个字段,这个字段经常表示此类商品的状态,例如:0->删除,1->上架,0->下架,等等。 2、我们返回给前端数据时,如果在页面显示0…...
Pytorch 复习总结 4
Pytorch 复习总结,仅供笔者使用,参考教材: 《动手学深度学习》Stanford University: Practical Machine Learning 本文主要内容为:Pytorch 深度学习计算。 本文先介绍了深度学习中自定义层和块的方法,然后介绍了一些…...
YOLOv9中加入SCConv模块!
专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,主力高效涨点!!! 一、本文介绍 本文将一步步演示如何在YOLOv9中添加 / 替换新模块,寻找模型上的创新! 适用检测目标: YOLOv9模块…...
代码随想录算法训练营第四十七天丨198. 打家劫舍、 213. 打家劫舍 II、337. 打家劫舍 III
198. 打家劫舍 自己的思路: 初始化两个dp数组,dp[i][0]表示不偷第i户,在0-i户可以偷到的最大金额,dp[i][1]表示偷i户在0-i户可以偷到的最大金额。 class Solution:def rob(self, nums: List[int]) -> int:n len(nums)dp […...
龙蜥Anolis 8.4 anck 安装mysql5.7
el8没有用mysql5.7了,镜像里是mysql8。 禁用 sudo dnf remove mysql sudo dnf module reset mysql sudo dnf module disable mysql 修改Yum源 sudo vi /etc/yum.repos.d/mysql-community.repo [mysql57-community] nameMySQL 5.7 Community Server baseurlhttp:…...
【踩坑】修复xrdp无法关闭Authentication Required验证窗口
转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 问题如下,时不时出现,有时还怎么都关不掉,很烦: 解决方法一:命令行输入 dbus-send --typemethod_call --destorg.gnome.Shell /org/gnome/Shell org.gn…...
终极网盘直链下载助手:八大平台完整解决方案免费获取真实下载地址
终极网盘直链下载助手:八大平台完整解决方案免费获取真实下载地址 【免费下载链接】Online-disk-direct-link-download-assistant 一个基于 JavaScript 的网盘文件下载地址获取工具。基于【网盘直链下载助手】修改 ,支持 百度网盘 / 阿里云盘 / 中国移动…...
YOLO26在疲劳驾驶识别中的应用:多类别面部状态检测(项目源码+数据集+模型权重+UI界面+python+深度学习+远程环境部署)
摘要 疲劳驾驶是导致交通事故的重要原因之一,基于视觉的驾驶员状态监测系统对于预防疲劳驾驶具有重要意义。本研究基于YOLO26目标检测算法,构建了一个针对驾驶员面部状态的疲劳识别检测系统。系统共包含4个检测类别:打哈欠(Yawn)、闭眼(clos…...
2026奇点大会闭门报告泄露:AI创意写作正经历第3次范式迁移——你还有72小时升级工作流
第一章:2026奇点智能技术大会:AI创意写作 2026奇点智能技术大会(https://ml-summit.org) 本届大会首次设立“AI创意写作”专项工作坊,聚焦大语言模型在文学生成、跨模态叙事与人机协同创作中的前沿实践。来自DeepStory、Nara Labs与中科院自…...
Hermes Agent 是什么:一篇讲清楚 AI Agent 能力边界的入门文章
如果你最近经常看到 AI Agent、自动化执行、任务编排这些词,很容易产生一种错觉: 只要接入一个大模型,系统就会自动理解目标、分解步骤、调用工具,最后把事情办完。 现实没有这么简单,但也没有那么遥远。像 Hermes agent 这类系统…...
Kelsey Hightower在KubeCon 2026:面对AI,人人都是初级工程师
Electrolux站点可靠性产品经理Kristina Kondrashevich清晰地记得Kelsey Hightower对她工作产生的深刻影响。"我们参加了KubeCon 2023,Kelsey Hightower在那次大会上做了一场关于开源项目的演讲,"Kondrashevich告诉The New Stack,&q…...
气象科研入门:手把手教你用FileZilla免费下载葵花8号卫星数据(附详细FTP配置)
气象科研实战:零基础获取葵花8号卫星数据的完整指南 第一次接触卫星数据下载时,我盯着满屏的专业术语和复杂的FTP配置界面手足无措。直到成功下载到第一个NetCDF文件,才发现原来获取葵花8号数据并没有想象中那么困难——只要掌握正确的工具和…...
Java全栈工程师面试实录:从技术到业务的深度解析
Java全栈工程师面试实录:从技术到业务的深度解析 1. 开场白 面试官:你好,很高兴见到你。我是负责技术评估的面试官,今天我们会围绕你的技术能力、项目经验以及对业务的理解来展开交流。你可以先简单介绍一下自己。 应聘者…...
【AIGC工程化生死线】:为什么92%的生成式AI产品因热更新失败导致SLA跌破99.5%?
第一章:生成式AI应用模型热更新方案 2026奇点智能技术大会(https://ml-summit.org) 在生产环境中,生成式AI服务需支持毫秒级模型切换,避免请求中断或推理延迟突增。传统全量重启方式导致服务不可用窗口达数秒至分钟级,无法满足高…...
深入解析频率间隔、分辨率与采样密度的工程实践
1. 频率间隔、分辨率与采样密度的基础概念 第一次接触信号处理时,我被这三个概念绕得头晕:频率间隔、频率分辨率和采样密度。它们听起来很像,实际含义却大不相同。让我用最直白的语言帮你理清楚。 **频率间隔(ΔF)**就…...
Hyperf对接报表 企业级报表系统中,针对百万级数据量的帆布报表导出场景,请从 HyperF 的进程模型、内存管理、分页查询三个维度,设计一套完整的性能优化方案。
核心选型: openspout/openspout — 流式写入,内存恒定 ~10MB,无需加载整个文档到内存。---架构总览 HTTP请求 → 异步队列 …...
