编译原理第一章 编译概述

编译程序将高级语言转换为机器语言,包括词法分析、语法分析、语义分析等阶段。编译过程分为编译阶段和运行阶段,涉及表格管理和错误处理。错误处理程序旨在广泛查错并准确报告错误类型和位置。编译程序是系统软件,与具体语言和机器相关,而解释程序则是边解释边执行。编译方式生成目标代码,而解释方式不生成。编译程序的必备阶段包括词法分析、语法分析、语义分析和目标代码生成,中间代码生成和代码优化可视情况而定。
摘要由CSDN通过智能技术生成

导言

由于每种计算机都有着独特的指令系统,在没有翻译程序前,它只能执行用机器语言编写的程序。这种方式很不方便,为了让我们能够更好地用接近自然语言的高级语言来编写程序调用计算机资源,现代计算机不能直接接受和执行用高级语言的程序,因此,一种用于将高级语言翻译成机器语言程序的翻译程序出现了

翻译程序、编译程序、解释程序

翻译程序:把源语言所写的源程序翻译成与之等价的目标语言的程序(目标程序)。
解释程序:将源程序作为输入边解释边执行,按照源语言的定义解释执行源程序本身。
编译程序:如果源语言是高级语言(Pascal,C,Ada,Java),目标语言是汇编语言或机器语言等的低级语言,则这种翻译程序是编译程序。

编译程序的分阶段运行

一般分为编译阶段和运行阶段。
编译阶段:源程序通过编译程序翻译为机器语言目标程序
运行阶段:机器语言目标程序在输入的初始数据基础上在运行系统上运行,得出结果。
如果编译阶段生成的是汇编语言程序,则编译阶段后是汇编阶段。
汇编阶段:将汇编语言目标程序通过汇编程序翻译为机器语言目标程序。

编译程序的结构和功能

翻译的过程类似外文的翻译过程。
编译程序是将一种语言形式翻译成另一种语言形式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值