第1章编译系统概述资料.ppt

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * 第1章 编译系统概述 1.1 程序设计语言的发展 1.2 基本术语解释 1.3 编译过程概述 1.4 出错处理 1.5 编译程序的前端和后端 1.6 编译程序的实现方式 * 1.1 程序设计语言的发展 汇编语言(Assemble Language) 机器语言(Machine Language) 程序设计语言(Programming Language) * 例计算表达式3*16+2的值,实现该计算的机器语言程序、汇编语言程序和程序设计语言(C语言)程序如下所示。目标计算机的系统结构和汇编语言的使用方法详见本书第7章。 2203 8210 2602 6101 1000 f000 Load R0,3 Mul R0,10 Load R1,2 Add R0,R1 Write R0 Halt void main(void) { cout3*16+2; } * ㈠机器语言 机器指令集合称为机器语言。机器指令即二进制数,通常由若干字节构成。 ①优点 计算机可直接识别执行 可充分利用硬件特性 ②缺点 可读性差 指令系统随机种而异 由于机器指令直接或间接含有绝对地址,增加或减少一条指令,可能会引起多条指令的修改。 编程者需协调内存的使用 所以,机器语言形式的程序编制和维护困难,限制了计算机的推广和应用。 * ㈡汇编语言 用记忆符取代二进制位,存储地址和汇编语句的序号可用符号名表示。 ①优点 用符号取代二进制数,提高了程序的可理解性。 性能较好的汇编语言,可用符号名来表示存储地址和汇编语句序号,这样避免了在汇编语句中绝对地址的出现。 可充分利用硬件特性 所以,汇编语言在一定程度上降低了程序编制和维护的难度。 ②缺点 汇编语句和机器指令基本上是一对一的,所以汇编语言的编程效率并没有质的提高。 和机器语言一样,汇编语言依附于目标计算机。 需汇编程序,将汇编语言译成机器语言。 汇编程序是编译程序的雏形。 * ㈢程序设计语言 程序设计语言又称高级语言。程序设计语言接近于英语,相当于工程语言。目前计算机系统一般含有多个程序设计语言的翻译程序(例VC、VB等),甚至对同一个程序设计语言配备了多个不同性能的翻译程序,供用户选择使用。 ①优点 独立于具体计算机,面向过程(函数)或对象。 程序设计语言接近于英语,可理解性好。 数据类型丰富,各种功能的语句齐备,一条语句至少相当于几十条汇编语句。 所以,程序设计语言极大地提高了编程效率,大幅度地降低了编程难度。 ②缺点 需翻译程序,将高级语言译成机器语言或汇编语言。 对硬件操作困难,高级语言通常提供汇编语言接口。 * 1.2 基本术语解释 ㈠源语言和源程序(Source Language and Source Program) 用程序设计语言书写的程序,称为源程序,该程序设计语言称为源语言。源程序通常用编缉程序输入,用字符(ASCII码)表示,以文本文件形式存储。 ㈡文本文件(Text File) 文本文件的内容由94个图形字符‘!’-‘~’(33-126)和4个控制字符换行(10)、回车(13)、空格(32)、TAB(9)构成,文本文件又称为ASCII码文件,扩展名通常为TXT,文件尾用控制字符EOF(26)指示。 * ㈢目标语言和目标程序(Target Language and Target Program) 目标语言可以是机器语言(二进制数),也可以是汇编语言(字符),或者是其它中间语言(字符),但最终结果必定是机器语言。机器语言程序用二进制文件存储,汇编语言或中间语言程序用文本文件存储。 目标程序是经翻译程序加工后用目标语言表示的程序。 ㈣二进制文件(Binary File) 二进制文件由机器指令即二进制数构成,因二进制数可能是26(文件结束控制符),故文件尾用文件长度(文件的字节数)指示,扩展名通常为EXE。 * ㈤翻译程序(Translator) 将源程序译成逻辑上等价的目标程序的程序。翻译程序有二种工作方式:编译和解释。 解释程序 Interpreter 源程序 结果 输入数据 解释、执行 解释方式主要特点是:用户程序是消极的。用户程序运行时,控制点在解释程序,即用户程序的执行离不开解释程序。 ①解释方式(Interpret) 以源程序作为输入,输入一句解释执行一句,不产生完整的目标程序,相应的翻译程序称为解释程序(Interpreter) 。 工作方式如下图所示: * ②编译方式(Compile) 将源程序全部译为目标程序,该目标程序可在操作系统环境下直接执行,相应

文档评论(0)

502992 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档