编译原理第1章课后习题答案(修订版).pdfVIP

编译原理第1章课后习题答案(修订版).pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编译原理第2版参考习题答案 (1,3章,2017年修订) 1.1.1 编译器和解释器之间的区别是什么? 答:编译器和解释器之间的区别在于以下三个方面: 1. 是否生成目标程序:编译器将源语言编写的程序等价地转换成目标语言编写的程序,然 后由目标机器直接执行可执行的目标程序;而解释器不将源程序翻译成目标程序,而是直 接根据用户的输入执行源程序的操作。 2. 执行速度:执行编译器产生的目标程序比解释器的执行速度要快得多。 3. 错误诊断的灵活性:解释器逐个语句执行源程序,因此错误诊断效果比编译器要好。 1.1.2编译器相对于解释器的优点是什么?解释器相对于编译器的优点是什么? 答:编译器是针对于某一个特定的处理器对源程序进行翻译的,所以它能够将一次性翻译成 目标代码,再在处理器上运行,这种形式的程序运行显然要比翻译一部分命令执行一部分命 令要快,这也正是相对于解释器的优点所在。 对于解释器而言恰恰相反,它并不是将源程序一次性翻译成目标代码而是翻译一部分再执行 一部分,这种做法有两好处,首先它使得运行变得动态性,即对于相同的小部分代码它不用 再解释,这使得编译的效益提高。其次是这种解释的机制使得相同的程序在不同的处理器上 运行成为可能,通过解释可以在不同的处理器上执行。 1.1.3 答:汇编语言比较容易输出和调试,再由汇编器处理后生成可重新定位的机器语言。 1.1.4 把一种高级语言翻译成为另一种高级语言的编译器称为源到源的翻译器。编译器使用 C语言做为目标语言有什么好处? 答:把C语言作为目标语言的好处是一方面C语言被广泛的应用,使得编译后的目标语言能 够被大多数人理解。另一方面c语言已经有比较高效完备的编译器,便于再程序编译成其它 语言的目标程序。 1.6.1(左),1.6.2(右) 对下图中的块结构的C代码,指出赋给w、x、y和z的值。 intw,x,y,z; A1 intw,x,y,z; B1 int i 4;intj 5; int i 3;intj 4; { intj 7; A2 { int i 5; B2 i 6; w i+j; w i+j; } } x i+j; B3 x i+j; A3 { intj 6; B4 { int i 8; A4 i 7; y i+j; y i+j; } } z i+j; A5 z i+j; B5 声明或定值 作用域 声明或定值 作用域 int i 4 A1-A4 int i 3 B1--B2 (注:在A2中i 6 后改值为6) (注:在B4 中i 7 后改值为7) int j 5 A1-A2 int j 4 B1-B4 int j 7 A2 int i 5 B2 int i 8 A4 int j 6 B4 由分析可以得出: 由分析可以得出: w 6+7 13; w 5+4 9; x 6+5 11;

文档评论(0)

_______ + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档