编译原理的基本简介

机器语言:可以被计算机直接理解,由二进制0与1组成

汇编语言:引入助记符,依赖于特定的机器

高级语言:类似于数字定义或自然语言的简洁形式

1.什么是编译:
编译: 高级语言 (源语言) 翻译 汇编语言或者机器语言 (目标语言) 的过程语言翻译成汇编语言或者机器语言的过程
 
2.编译器在语言处理系统中的位置:

 

 
 
3.编译器的结构:

 

 
编译器各个结构
作用
词法分析器
从左到右逐行扫描源程序的字符,识别出各个单词,确定单词的类型。
语法分析器
从词法分析器输出的token序列中识别出各类短语,并构造语法分析树
语义分析器
收集标识符的属性信息;语义检查
中间代码生成器
以三地址码的形式表示高级语言;生成语法结构树/语法树
目标代码生成器
以源程序的中间形式作为输入,并把它映射到目标语言;为程序中使用的变量合理分配寄存器
机器有/无关代码优化器
为改进代码所进行的等价程序变换,使其运行得更快一些、占用空间更少一些,或者二者兼顾
 
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值