编译器的发展史

编译器的工作就是将用代码编写的源程序翻译为计算机可以执行的目标程序,例如.c编译后生成.exe前面会涉及一些老基础,可以直接看第四标题的内容机器语言计算机刚发明的时候人们通过各种开关和电缆来编写程序。这时候的程序是真正的二进制,例如000110101011。后来做出了改进,把程序打在穿孔带上,让机器读取。但本质还是没有改变,还是在使用二进制编程。下面举一个例子:0001表示加1010表...
摘要由CSDN通过智能技术生成

编译器的工作就是将用代码编写的源程序翻译为计算机可以执行的目标程序,例如.c编译后生成.exe
前面会涉及一些基础,可以直接看第四标题的内容

机器语言

计算机刚发明的时候人们通过各种开关和电缆来编写程序。这时候的程序是真正的二进制,例如000110101011。
后来做出了改进,把程序打在穿孔带上,让机器读取。但本质还是没有改变,还是在使用二进制编程。下面举一个例子:
0001表示加
1010表示寄存器a
1011表示寄存器b
那么把a和b的值加起来放在a,就是0001 1010 1011
当时的程序员比大熊猫还稀少,每天脑子里除了0就是1

汇编语言

既然二进制这么难记,人们就想到了给这些指令记一个好记的名字
0001:add
1010:a
1011:b
这样子就变成了,add a b
但计算机太笨了,只能执行二进制,所以汇编器出来了,用来把汇编语言转换为机器语言

高级语言

机器语言和汇编语言一直被统一称为低级语言
人类一直探索一种更高级的语言来写程序。这个语言应该是面向人而不是面向机器。
能使用变量来存放数据,而不是寄存器:int a=10;
能用表达式来表示自己的意图:a++;
能用判断语句来处理分支:if(a>=0) ;else a=-a;
能用循环语句:for(int i=1;i<=100;i++) sum+=i;
能定义一个函数处理一段多次使用的操作:int getmax(){}
编译器的工作就是把高级语言翻译成机器语言

编译器的操作

我们先看看编译的过程:

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值