编译原理,第一章绪论

本文介绍了编译过程的五个阶段:词法分析、语法分析、语义分析和中间代码生成、优化、目标代码生成。讨论了编译程序的开发,包括自编译、交叉编译、自展和移植的概念。编译程序的大部分时间用于表格管理,它是高级语言程序翻译成机器语言的关键。解释和编译是执行高级语言程序的两种途径,各有优劣。最后,作为编译程序的总设计师,需要考虑源语言、目标语言、硬件结构和操作系统等多个因素。
摘要由CSDN通过智能技术生成

编译过程和编译程序结构

五个阶段:

  1. 词法分析
  2. 语法分析
  3. 语义分析和中间代码生成
  4. 优化
  5. 目标代码生成

编译程序的开发

  1. 自编译:用某种高级语言编写自己的编译程序称为自编译,
  2. 交叉编译:用A机器上的编译程序来产生可在B机器上运行的目标代码
  3. 自展:首先确定一个非常简单的核心语言L0,然后用机器语言或者汇编语言写出它的编译程序T0,再把语言L0扩充到L1,用L0编写L1的编译程序T1,这样不断扩展下去,直到完成所要求的编译程序为止。
  4. 移植:A机器上的某种高级语言的编译程序稍加改动后能够在B机器上运行

习题

  1. 编译程序是将高级语言程序翻译成的机器语言程序的程序
  2. 将编译程序分成若干个“遍“是为了使编译程序的结构更加清晰。
  3. 构造编译程序应掌握:源程序、目标语言、编译方法
  4. 编译程序绝大多数时间花在表格管理上
  5. 编译程序是对高级语言程序的翻译。
  6. 计算机执行用高级语言编写的程序有哪些途径,它们之间主要区别是什么?
    答:计算机执行用高级语言编写的程序主要有两个途径,解释和编译
    解释:翻译程序每读入一条源程序的语句,就将其解释成对应其功能的机器代码语句串并执行,然后再读入下一条源程序语句并解释执行。
    编译:首先将高级语言源程序全部翻译成机器代码程序,再执行机器代码程序
    编译型高级语言比解释型高级语言块,解释方式下人机界面比编译型好,便于人机调试。
    解释方式下不生成目标代码&#x
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值