雷军1994年写的诗一样的代码,我把它运行起来了!

大数据DT

共 2173字,需浏览 5分钟

 ·

2020-11-23 23:14


导读:雷军曾在访谈中说,有人夸他写的代码像诗一样优雅。后来有人找出了雷军1994年写的代码,网友直呼“跪着读完!


作者:浪迹在
来源:程序员入门进阶(ID:code_gg_home)


这是一段古董代码了,因为在1994年,当时我的一个老师也是做汇编项目,他跟我聊过的故事是,当时是他跟一个前辈一起去现场给客户看故障,调试,用的ARM汇编,当时前辈是赚了2w,他赚到了6k的样子。

在1994年能够精通汇编,虽然不被大众认可,认为这个电脑还是比较飘幻,因为那时候还没有进入寻常百姓家,我接触电脑在初中,那时候也2002-2003年了,而且那时候要记指令,也没多少画面,印象不深。

记得学校有个校园网剧音频版,就是《让青春继续》,讲述的牵扯到了四小龙以及当时的包分配最终走向自营的过程,刚好也是这个时间段,主人公百脑也是系统子弟,叛逆的去学了编程,最终走出自己的传奇人生。

他们都是出生在这个时代,这个时代造就的人才,科技人才,能够接触到信息技术,那么很容易就能够出彩。像马化腾,张小龙,还有雷军,李彦宏,都是做过技术开发的,有了程序员思维,同时又在商业中寻求生存,试错的机会以及风口卷动,最终扶摇而出。

之前看到有朋友发雷军写的代码,因为现在都不直接用汇编去写代码,但是如果用汇编写过代码的话,其实对于硬件接触的多会对编码有更深的理解,具体就是能够将实现具体拆下去成颗粒状的指令,这个跟我们一般意义的C语言还是有区别的。


当写汇编的时候,会晓得一点,就是能够感知到指令周期,以及时钟运转的流程,指令是计算机中表征最小颗粒,再往下的微指令一般都不深究,到这里就足够将计算机系统搭建完成。


那么回过头来,我们看下雷军当时写的代码,因为是汇编语言,看了下大致就是MASM,于是我上网找出MASM32plus工具,但是编译的结果是报错,爆出很多不识别的指令。

这个也没细究,我之前用MASM的时候,也已经是有API的,就是汇编的API,已经不是纯粹汇编写法了,大致是这种写法了。


那么我再继续查找,这段代码跟我之前写的C51的写法差不多,我找了相关的一个编译工具,emu8086,这个工具是识别这段汇编的,但是有个报错是,重定义。这里主要就是代码中多处的@@2这类标签,在这个emu8086里面会认为这个是多重定义,但是按理说不应该,所以工具是没选对的。也就是emu8086会把标签认定成是全局的,但是实际上这个是函数内部的标签。


那么我继续去找ASM的编译工具,找的关键字都是8086ASM,最终试了多个都是失败了,也是比较挫折的。今天又想着不能放弃,再找找看看有没有线索,于是便继续检索,找到了一本书,这本书给出了答案。


这本书的作者是雷军,对就是写这个的,求伯君和雷军,写出的金山软件。书名是《深入DOS编程》,因为这段代码就是DOS下的清理软件,而且时间点也是匹配的,所以这个书里面应该有答案的。

我要找的是什么?就是编写代码,以及书里面怎么编译的。简单验证了下汇编写法一致,那么就剩下找到书里的编译工具,幸运的是,找到了,具体是:


TASM 3.0。引用下百度的介绍:


下一步便是找到工具,从CSDN找到的开发包缺少tlink工具,于是又百度找了下,最终找全了。在Win7 ,Win10上面,运行不了这个工具了,因为缺少DOS环境了,那么我们就应该找到 XP 系统,这个里面是包含着DOS系统的,我们去看Windows的PE结构,就知道里面前面的一部分是表征的DOS结构。


那么我们装一个虚拟机,我这里用的Vbox,我电脑装VM12装xp系统就会卡死,于是我用了Vbox安装了雨林木风的GHOST,最终把工具放到里面,运行成功。以下是运行的效果,编译过程。


具体是:tasm 汇编成obj,然后使用tlink进行链接,最终生成COM可执行程序。

最后分享个学习方法,在使用一个工具的时候,可以去看看它的官方文档,以及工具中的文件夹,幸运的是,TASM安装包有EXAMPLES,打开可以去看看一些实例,学习,编译。同时还能快速的确认出来,跟雷军的代码使用的伪指令,汇编代码差不多,也就是这个工具就对了。

当然这个工具真正要跑应用,是在DOS的实模式运行,我们的XP是模拟的DOS环境,所以也不是完全一致,这块如果要真正测验,需要一个DOS的模拟器,完全一致下,测试效果就出来了。

代码和工具的获取方式 ,后台回复雷军代码


划重点?


干货直达?


更多精彩?

在公众号对话框输入以下关键词
查看更多优质内容!

PPT | 读书 | 书单 | 硬核 | 干货 | 讲明白 | 神操作
大数据 | 云计算 | 数据库 | Python | 可视化
AI | 人工智能 | 机器学习 | 深度学习 | NLP
5G | 中台 | 用户画像 1024 | 数学 | 算法 数字孪生

据统计,99%的大咖都完成了这个神操作
?


浏览 12
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报