专栏名称: 码农翻身
工作15年的前IBM架构师分享好玩有趣的编程知识和职场的经验教训, 不容错过。
目录
相关文章推荐
程序猿  ·  Python有史以来最强大的挑战者终于出现 ·  昨天  
OSC开源社区  ·  苹果用Swift重写每天数十亿次请求的Jav ... ·  2 天前  
OSC开源社区  ·  Gitee ... ·  3 天前  
程序员的那些事  ·  疯了!我那些怀疑 AI ... ·  5 天前  
51好读  ›  专栏  ›  码农翻身

一个翻译家族的发家史

码农翻身  · 公众号  · 程序员  · 2017-03-29 20:05

正文

请到「今天看啥」查看全文



但程序的本质还是没有变化, 依然是在使用二进制来编程。


如果这个样子一直持续下去, 估计这个世界上的程序员会少的可怜: 编程的门槛太高了。


比如说你的脑子里得记住这样的指令:

0000 表示从内存中往CPU寄存器装载数据

0001 表示把CPU寄存器的值写入内存

0010 表示把两个寄存器的值相加


你还得记住每个寄存器的二进制表示:


1000 表示寄存器A

1001 表示寄存器B


综合起来就像这样:


0000 1000  000000000001  它的意思是说, 把编号为1的内存中的值装载到寄存器A当中


0010 1000  1001  的意思是把寄存器A和寄存器B的值加起来,放到寄存器A中。


整天生活在这样的世界里, 满脑子都是0和1, 要是我估计就抑郁了。


当时的程序员像熊猫一样稀少, 不, 肯定比熊猫更少, 他们都要二进制写程序, 对我们翻译家族没有任何的需求。

2

汇编语言


既然二进制这么难记, 人们很快就想到:  能不能给这些指令起个好听的名称呢?


0000  : LOAD

0001   :   STORE

0010   :   ADD


寄存器也是一样的:

1000 : AX

1001 : BX


这下读来容易多了:

ADD AX BX


人们给这些帮助记忆的助记符起了个名字: 汇编语言


但是计算机是无法执行汇编语言的,  因为计算机这个笨家伙只认二进制,  所以还得翻译一下才行。


于是我们家族的一个重要成员: 汇编器 隆重登场了, 他专门负责汇编语言写的程序翻译为机器语言, 这个翻译的过程比较简单,几乎就是一一对应的关系。


汇编语言解放了人们的部分脑力, 可以把更多的精力集中在程序逻辑上了。 越来越多的人学会了使用汇编来编程,  写出了很多伟大的软件。







请到「今天看啥」查看全文