膜拜!上古程序员实在太厉害了!

即梦 AI 全功能零基础详细教程(纯技术版) 即梦 AI 是一款多模态 AI 生成工具,主打文本生成视频、图片生成视频、角色一致性生成、音画同步等核心功能,依托自研 AI 视觉模型,实现从文本 / 图片 / 音频素材输入,到高清视频、图像内容输出的全流程 AI 创作,支持短视频、短剧、创意素材等多场景创作,具备操作门槛低、生成效率高、画面可控性强的技术特点。@为工具内置引用指令,作用是锁定指定素材 / 角色,强制 AI 按照该素材的核心特征生成内容,无额外付费、解锁要求,免费使用。剧本拆分:将短剧拆分为单镜头(15 秒内 / 个) 阅读详情

写在前面:我已经把这篇文章转成了视频,习惯看视频的朋友欢迎关注视频号"码农翻身Pro":

这是世界上第一台商业上成功的个人计算机:ALTAIR 8800。

0

它没有显示器,没有键盘,怎么写程序?

很简单,拨动开关来写程序!

如果仔细观察一下上面的图,就能发现面板上写着:Data,Adress,Stop,Run,Deposit,CLR,D0 ~ D7, A0~A15等字样。

如果想计算“1+1”,在这个机器上可以这么干。

1.设计汇编代码

;把该地址的数字装入累加器
LDA 000020   


;将数字1和累加器的数相加
ADI 001    


;将累加器的数保存到特定地址
STA 000022

2. 把汇编转化成机器指令(用8进制,方便输入)

072 020 000 306 001 062 022 000

3.拨动开关,输入指令

例如072,对应的开关是这样的:

e019324e5530355d32d1d00ad2aa98e7.png

就这么一点点地拨动开关进行输入,可不能出错,一旦出错就前功尽弃。

4.查看结果

输入完成,扳动“运行”开关,然后看看控制面板上的小灯,就知道运行接过是否正确了。

5945cd70ff07715df5949184e57cf212.png

看过《编码》这本书的同学可能更有感觉,这种办法和书中说的是类似的。

4e1961a9d60523cf07693e3099f460ed.png

过程看起来非常繁琐,但是却体现了计算机最最本质的:存储程序。

程序也是数据,通过拨动开关的方式被输入到计算机内存中,然后逐条开始执行。

01

纸带

拨动开关的编程方式直接操作机器码,容不得一丝一毫的错误,拨动开关的每一次操作必须精确无误。

任何一次把0拨成了1,或者把1拨成了0,就前功尽弃。

所以极少有程序员这么干,有个更好的替代办法:纸带。

程序怎么才能进入纸带呢?有专门的设备。

例如著名的ASR-33电传打字机(Teletype),当时售价高达1000美元(相当于现在的10000美元)。

0

它有一个键盘,左边长长的就是纸带。

现在,程序员就可以先在纸上汇编程序写好:

3E 64 

C6 C8 

76

先在脑子中“调试”一下,没问题的话再通过ASR-33的键盘输入。

ASR-33就可以转化成二进制,然后输出到纸带上。

同理,ASR-33还可以反向把纸带中的内容读出来,输入计算机执行。

过程很繁琐,但是已经比拨动开关好太多了。

1975年,比尔·盖兹和保罗·艾伦为了抢到ALTAIR 8800的生意,通过这种方式,没日没夜地干了八周时间,为ALTAIR 8800写出了第一个Basic解释器,从此开始了微软的称霸之路。

7864d64f998ef9a3c512cca50e54da84.png

下图就是存储Basic解释器的纸带

0

肯·汤普逊和丹尼斯·里奇也是用ASR-33 Teletype来开发Unix的,所以Unix的Terminal 就叫做tty。

cfbb2238d9d94dac8a0211b63ab971ff.png

02

穿孔卡片

纸带便宜,紧凑,但是非常脆弱,容易损坏。 

如果纸带散落到地上,代码立刻就变成了一大堆意大利面条,真正的意大利面条,不管它是卷起来的还是折起来的,非常容易被撕破。

3ffe7b273d07e6273ecd057be1f5bbac.png

更烦人的是纸带难以编辑,如果程序错了,需要定位到错误位置——这不是一件轻松的事情,毕竟纸带上一行行全是孔——然后剪断现有纸带,拼接新的部分。

换句话说,纸带像是一个脆弱的“顺序存取”的媒介。

很快,大家就更喜欢IBM发明的打孔卡了。

d473659db6f301a0e00cb80f984a4b18.png

“写”在打孔卡上的程序,即使是出了错,也可以轻松地替换掉出错的那一张或者几张。

将有错误的卡片和一张空白卡片放在打卡机中,DUP 到错误处,打出正确的部分,DUP 剩余的,放回去就行了。

0e7ee26972e2b40e689e4faa19256580.png

所以打孔卡具备一些容易修改的“随机存取”的性质。

下面这幅图一共有62500张打孔卡(大小为 5 MB),保存着美国SAGE 军事计算机网络的控制程序。

a42456ecd7629473090fb2a607895574.png

如果打孔卡掉到地上乱了怎么办?

打孔卡上有序号,只需要把它们捡起来,放在同一个方向(将切掉的一角对齐),放进一个专门的机器(Punched card sorter)排序就行了。

03

硬盘

在打孔卡以后,大家又用了磁鼓存储器,磁带,最后才发展到硬盘,现在主要是固态存储了。

编程语言也从机器语言,汇编语言,发展到Fortran、C、 C++、Python、Java、JavaScript等高级语言。

一路走来,程序员现在终于可以坐在电脑前,打开自己喜欢的IDE/编辑器,舒服地编程了。

现在的程序员是幸福的,可以站在一个很高的抽象层次上进行编程创作。

现在的程序员也是不幸的,很多人丧失了了解计算机最底层原理的兴趣。

以后有了AI的辅助,程序员可能连代码都不用写了,当好一个代码审查员就行。

想想前辈们拨动开关输入程序,在纸带和打孔卡上编程,真是恍如隔世。

最后留个问题:如果现在退回到纸带和打孔卡时代,你还愿意从事编程这个行业吗?

近期爆文:

一个软件Bug,竟然让爱好和平的国家领袖变成了核武器暴君!

小心,美国人又要在基础软件上弯道超车了

世界上最幸福的程序员

世界上最厉害的协作软件,让程序员痛不欲生,最后被印度人搞走了

1970年以来技术的发展趋势,怪不得程序员35岁就被裁......

这个大学生写了个免费软件,全世界网民抢着给他送钱,每月10万美元

全世界流浪的程序员,用最原始的技术,每月赚17.6万美元!

开源软件的叛徒,加入了微软

这两个程序员要花100万,彻底重写世界上最复杂的软件

新手别怕!用‘东北天’和‘右前上’坐标系,5分钟搞懂惯性导航姿态矩阵(含Python验证代码) 本文通过‘东北天(ENU)’和‘右前上(RFU)’坐标系,详细解析惯性导航中的姿态矩阵概念。包含Python代码验证,帮助新手快速理解坐标变换、欧拉角及旋转矩阵的构建与应用,特别强调有限转动不可交换性与无限转动次序无关的区别。 阅读详情

相关推荐

关于StartAI本地部署相关问题解答

很多小伙伴们都有接入自己本地SD的需求,对此小编整理了一些相关问题~

HDJ9387的博客 940

来玩玩编程纸带打孔编程------最底层的编程

来玩玩编程纸带打孔编程, 看看最底层的编程是怎么玩的, 如图:         计算机先驱们玩纸带编程, 不一定是通过光敏电阻来玩的, 但无疑, 光敏电阻可以实现纸带打孔编程。 上图就是纸带编程的原理, 通过纸带上的有孔(表示1)和无孔(表示0)来控制电路电压/电流, 让电路电压/电流完成计算(本质就是搬弄一堆开关而已), 怎么计算的呢? 想想与非或三门吧, 然后就知道了半加器, 全加器

认知 行动 坚持 1万+

深入解析APS开源排程工具OptaPlanner:链式结构与移动优化

本文深入解析了开源APS排程工具OptaPlanner的核心机制,重点阐述了链式结构如何作为排程优化的“骨架”,通过单一`previous`变量隐式定义资源与顺序,从而简化建模。文章详细介绍了基于此结构的移动操作(如`ChainChangeMove`)如何驱动优化引擎探索解空间,并自动触发影子变量更新与分数计算,为构建高效、灵活的生产计划系统提供了实践指导。

keras9composer的博客 298

最底层、最原始的编程-------纸带打孔编程

                                计算机先驱们玩纸带编程, 不一定是通过光敏电阻来玩的, 但无疑, 光敏电阻可以实现纸带打孔编程。 上图就是纸带编程的原理, 通过纸带上的有孔(表示1)和无孔(表示0)来控制电路电压/电流, 让电路电压/电流完成计算(本质就是搬弄一堆开关而已), 怎么计算的呢? 想想与非或三门吧, 然后就知道了半加器, 全加器, 集成电路, cpu....

捕影世界 7375

混合编程实战:C#集成C++ PCL点云处理库,打造跨语言动态链接库

本文详细介绍了C#与C++混合编程实战,重点讲解如何通过动态链接库(DLL)集成C++ PCL点云处理库,实现跨语言协作。内容涵盖环境配置、PCL功能封装、C#调用DLL的完整方案,以及性能优化和错误处理等进阶技巧,帮助开发者高效处理大规模点云数据,提升工业软件开发效率。

weixin_42620913的博客 382

STM32CUBEMX 使用教程5 — DMA配置 & 串口结合DMA实现数据搬运

DMA(Direct Memory Access),直接存储器访问(或数据搬运),是STM32中很实用的一个外设。DMA 传输数据方式不需要 CPU 参与控制传输,也不用中断处理的方式进行数据搬运处理,纯粹通过硬件为 RAM 与 I/O 设备之间开辟一条直接传送数据的通路,使 CPU 的效率大大提高。

weixin_43866583的博客 1499

远古程序员

今天不写枯燥的技术,老狗特意准备了趣味性和知识性并重的编程历史以飨众狗,祝大家度过一个轻松愉快的周末!

爱学习饼的博客 1256

2024年中科大分子生物研究生考试建议

分子生物学复习资料及往年考题。

qq_43337249的博客 2953

我私藏的刷题网站都在这里了!

遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网站放...

Fuohua的博客 2722

YOLO26涨点改进 | 全网独家创新,注意力改进篇| SCI一区Top | 引入AFCA自适应细粒度通道注意力,联合建模全局与局部通道依赖关系,适合目标检测、图像去雾、关键点检测、图像分类、图像分割

🔥本文提出了一种基于AFCA(自适应细粒度通道注意力)模块改进的YOLO26目标检测网络。AFCA通过联合建模全局与局部通道依赖关系,实现了更精细的通道注意力分配,能够增强目标相关特征并抑制背景噪声。该模块采用自适应融合策略动态平衡通道权重,在保持轻量级结构的同时,显著提升了小目标和复杂背景下的检测性能。文章详细介绍了AFCA的结构原理、实现优势,并提供了完整的代码实现和YAML配置文件,指导读者如何将该模块集成到YOLO26框架中。实验结果表明,AFCA在检测精度和鲁棒性方面优于传统注意力机制。

Ai缝合怪、助力小伙伴高效发论文 304

1.14、基于NARX神经网络的磁悬浮建模(matlab)

数据准备:首先,需要准备用于训练和测试的磁悬浮系统的输入和输出数据,包括磁力、电流、位置、速度等信息。数据可以被保存在MATLAB的数据文件中,并加载到工作空间中。使用MATLAB的神经网络工具箱,创建一个NARX神经网络。需要定义网络的层次结构、节点数、激活函数等参数。通常,NARX网络包括自回归层和外部输入层。数据预处理:对加载的数据进行预处理,包括去除噪声、归一化处理等操作,以确保数据质量和网络训练的稳定性。使用MATLAB的训练函数,如trainlm或者trainbr,对NARX神经网络进行训练。

XU157303764的博客 1998

刷了几千道算法题,这些我私藏的刷题网站都在这里了!

遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活… 然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题...

Rsun2018的博客 646

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

我公司真有“古法编程”程序员:全栈不用AI,代码全靠手敲

面对全栈大神拒绝 AI、坚持手敲代码的“古法编程”,你是否感到好奇?本文带你深入剖析这一现象,通过实战复盘揭示手写代码如何倒逼基础夯实,并指出 AI 难以处理的盲区。在 AI 时代,带你重新审视核心竞争力的本质 🔍。

yweng18的博客 1396

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

刷题网站集合

1、leetcode 英文网址:https://leetcode.com/ 中文网址:https://leetcode-cn.com/ 估计 leetcode(力扣)大家都很熟悉了,都被推荐烂了,很多国内外的程序员在上面刷题,难度从 Easy、Medium 至 Hard 都有,据说很多面试官都会从中挑选各种题目,号称大厂的筛码工。 我很早就知道 leetcode,但是直到准备复试闲来无事的时候才在它上面刷了点儿题找感觉,发现上面的题型覆盖很广,像线段树、滑动数组、博弈论、扫描线等都应有具有,但是好像有的测试

代码是程序员的语言,博客是思想的桥梁,连接你我,共享智慧之光。 7529

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

学习库,刷题提升

1、leetcode 英文网址:https://leetcode.com/ 中文网址:https://leetcode-cn.com/ 估计 leetcode(力扣)大家都很熟悉了,都被推荐烂了,很多国内外的程序员在上面刷题,难度从 Easy、Medium 至 Hard 都有,据说很多面试官都会从中挑选各种题目,号称大厂的筛码工。 2、hihoCoder :网址:https://hiho...

Baron_ND的博客 479

算法刷题网站总结

刷题不要单纯的为了追求做题的数量,还是要以学会为目的,并且学以致用。

年少的勇气已经用完,剩下的就是三思而后行 1650

刷了几千道算法题,我私藏的刷题网站都在这里了

作者 |Rocky0429来源 | Python空间(ID: Devtogether)遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活...然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝...

AI科技大本营 3543

面试算法题刷题资源库

0x00 收割 offer 版 不管是找工作笔试面试白板试进大厂,还是研究生参加初试复试机试,数据结构和算法都是绕不过去的坎,刷题就成了很多人的需求,快来看看下面这些网站,变身刷题机器,收割 offer 吧! 1、leetcode 英文网址:https://leetcode.com/ 中文网址:https://leetcode-cn.com/ 估计 leetcode(力扣...

纸上得来终觉浅,绝知此事要躬行 1531

扫描线算法 python_刷了几千道算法题,这些我私藏的刷题网站都在这里了

遥想当年,机缘巧合入了 ACM 的坑,周边巨擘林立,从此过上了"天天被虐似死狗"的生活…然而我是谁,我可是死狗中的战斗鸡,智力不够那刷题来凑,开始了夜以继日哼哧哼哧刷题的日子,从此"读题与提交齐飞, AC 与 WA 一色 ",我惊喜的发现被题虐既刺激又有快感,那一刻我泪流满面。这么好的事儿作为一个正直的人绝不能自己独享,经过激烈的颅内斗争,我决定把我私藏的十几个 T 的,阿不,十几个刷题网站放出来...

weixin_39739661的博客 642

常用刷题网址——提高代码能力

常用刷题网址——提高代码能力 备份和总结 1、leetcode 英文网址:https://leetcode.com/ 中文网址:https://leetcode-cn.com/ 估计 leetcode(力扣)大家都很熟悉了,都被推荐烂了,很多国内外的程序员在上面刷题,难度从 Easy、Medium 至 Hard 都有,据说很多面试官都会从中挑选各种题目,号称大厂的筛码工。 很早就知道 lee...

Alliswell_WP 1336

致广大而尽精微——读张银奎《软件简史·序》后感

我读了《序》和前两章,随后在动车上和飞机上,我每读一章前,我就再看一遍《序》,已经记不清楚读了多少遍《序》。每读一遍《序》,我就想到《典籍里的中国》中的编写典籍的那些先辈们在历史长河中躬身入局、身体力行地将文化和智慧保存下来,传承中国文化、传承中国精神,让我们薪火相传、接续前行。张银奎说:“历史本来就是有趣的,很多学科都是有趣的,我们应该发现它的趣味,归还它本来的趣味给每个喜欢求知的心灵。我想,他是以人文情怀审视软件的,他应该是想打破技术与人文的边界,想软件开发应关注人的需求、社会责任和文化价值。

advdbgger的博客 143
上一篇: 漫画 | 妻子的一桶冷水,把计算机科学的先驱给浇死了......
下一篇: 被质疑套壳的编程语言也能进入北大,成为计算机学院研究生课程?
码农翻身
码农翻身 《码农翻身》作者 《码农翻身》作者
博客等级 码龄8年 3万+粉丝 1084原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值