编译原理第一章课后习题(我们老师需要我们写的) 您所在的位置:网站首页 机器翻译原理与方法课后答案 编译原理第一章课后习题(我们老师需要我们写的)

编译原理第一章课后习题(我们老师需要我们写的)

2024-07-05 01:13| 来源: 网络整理| 查看: 265

1-1 何谓源程序、目标程序、翻译程序、编译程序和解释程序?他们之间有什么关系? 源程序:用源语言编写的程序 目标程序:源程序经翻译程序加工处理过后生成的程序。 翻译程序:将源程序转换为与其逻辑上等价的目标程序。 //汇编程序:源语言为汇编语言,目标语言为机器语言的翻译程序。 编译程序:高级语言翻译成汇编语言或机器语言的翻译程序,属于翻译程序的一种。 ①先翻译后执行 ②执行速度快 ③多次运算 解释程序:源语言程序作为输入,但不产生目标程序,而是边解释变只想源程序。 ① 边解释变执行 ②有利于程序的调试 ③1次运算 关系:汇编程序、解释程序和编译程序都是翻译程序。 1-2 一个典型的编译系统通常由哪些部分组成?各部分的主要功能是什么? 各部分主要功能: 1)词法分析(Lexical Analysis) 从左到右挨个读入源程序的字符,对构成源程序的字符串进行扫描和分解,从而识别出一个个单词(也称单词符号或符号)。 2)语法分析(Syntax Analysis) 在词法分析的基础上将单词序列分解成各类语法短语,如“程序”,“语句”,“表达式”等。 3)语义分析(Syntactic Analysis) 语义分析实在语法分析程序确定出语法短语后,审查有无予以错误,并为代码生成阶段收集类型信息。 4)中间代码生成(Generation of intermediate code) 完成语法分析和语义处理工作后,编译程序将源程序变成一种内部表示形式,这种内部表示形式叫做中间语言或称中间代码,它是一种结构简单、含义明确的记号系统。 5)代码优化(Optimization of code) 为了使生成的目标代码更为高效,可以对产生的中间代码进行变换或进行改造,这就是代码的优化。 6)目标代码生成程序(Generation of code) 目标代码生成是编译器的最后一个阶段。在生成目标代码时要考虑以下几个问题:计算机的系统结构、指令系统、寄存器的分配以及内存的组织等。 7)错误检查和处理程序 程序查错,准确地报告源程序中错误的种类及错误出现的位置。同时,编译程序还应具有一定的“校错”能力。 8)信息表管理程序 编译程序在工作过程中需要保持一系列的表格,以登记源程序的各类信息和编译各阶段的进展情况。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有