1、解释程序的概念

解释程序是在运行用户程序时,直接执行源程序或源程序的中间表示。解释程序不产生源程序的目标程序。

解释程序实现高级语法的三种方式如下图:

方式A:直接对整个源程序进行逐个字符的检查、进行词法、语法分析和语义分析后就执行程序语句规定的动作。特点是反复扫描源程序来实现程序的运行效率很低。

方式B:解释程序先将源程序翻译成某种中间代码形式,然后对中间代码进行解释和实现用户程序的运行。

方式C:解释程序采用的中间代码更接近机器语言。

2、解释程序的结构

解释程序分为:分析部分、解释部分。

分析部分:主要包括词法分析、语法分析、语义分析程序。把源程序翻译成中间代码,中间代码常采用逆波兰方式表示。

解释部分:对解释部分的中间代码进行解释执行。

3、编译与解释方式对比

对比内容

编译方式

解释方式

效率

编译翻译一次多次运行,效率高

需要反复扫描源程序,效率低

灵活性

灵活性高

灵活性低

IT技术分享社区

个人博客网站:https://programmerblog.xyz

文章推荐 程序语言的组成知识笔记 程序语言的概念知识笔记 算法基础:图的相关算法知识笔记 算法基础:递归算法知识笔记 算法基础:常用的查找算法知识笔记 算法基础:常用的排序算法知识笔记 数据结构基础:图结构的学习笔记 数据结构基础:算法的基础知识笔记 数据结构基础:树结构的学习笔记 数据结构基础:栈和队列学习笔记

程序语言基础:解释程序基本原理笔记相关推荐

  1. 2020年中级数据库系统工程师考试笔记2—程序语言基础知识

    2.程序语言基础知识 2.1 程序语言概述 2.1.1 程序语言的基本概念 2.1.2 程序语言的基本成分(★★★) 2.2 程序语言翻译基础 2.2.1 汇编程序基本原理(了解一下) 2.2.2 编 ...

  2. C语言基础入门学习笔记

    前言 我是一个初中生,过完暑假就是一个高一的学生了.在这个暑假里,我学习了韦东山老师和唐佐林老师的课程,所以我写下这个笔记来记录自己的成长历程. C语言基础入门学习笔记 格式 #include < ...

  3. 《MSSQL2008技术内幕:T-SQL语言基础》读书笔记(上)

    索引: 一.SQL Server的体系结构 二.查询 三.表表达式 四.集合运算 五.透视.逆透视及分组 六.数据修改 七.事务和并发 八.可编程对象 一.SQL Server体系结构 1.1 数据库 ...

  4. c语言输入123输出112233,C语言程序的设计 第3章 程序语言基础1.pdf

    C语言程序的设计 第3章 程序语言基础1 第3章 程序语言基础 •3.1 C语言概述 3.1 C 33..11 CC 3.2 基本数据类型 3.2 • 33..22 3.3 运算符和表达式 3.3 • ...

  5. 程序语言的概念知识笔记

    1.低级语言和高级语言 计算机指令程序:0.1 组成的机器指令序列.特点:效率低.可读性差.难以维护. 汇编指令:用常用的符号代替0.1 序列来 表示机器指令,例如用ADD表示加法. 高级语言:面向对 ...

  6. 程序语言的组成知识笔记

    程序语言的基本成分包括数据'运算.控制.传输. 1.程序语言的数据成分 数据成分指程序中的数据对象,数据是程序程序操作的对象,具有存储类型.数据类型.数据名称.作用域.生存周期等属性. 1.1 常量和 ...

  7. 软件评测师题库--程序语言基础知识

    [选择题] 1.在Excel中,设单元格F1的值为38,若在单元格F2中输入公式: "=IF(AND(38<F1,F1<100)"输入正确","输入 ...

  8. c语言基础题(笔记一)

    c语言基础题 1.输出倒三角图案 2.如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048.现在,如果用户输入的是厘米数,那么对应英制长度的英尺和 ...

  9. (C/C++)数据结构所需的程序语言基础(一)数据类型、运算符及表达式

    语言基础之数据类型.运算符及表达式 (一)数据及数据的表现形式 1. 数据 是描述客观事物的符号,是计算机可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合,数据不仅仅指我们通常所说的数值 ...

最新文章

  1. 常用快捷键整理,提升工作效率!
  2. 探讨Redhat的开源“成功之道”
  3. python判断某年是否为闰年的程序_Python 学习--从0到1(4. 题3)
  4. 【连载】如何掌握openGauss数据库核心技术?秘诀一:拿捏SQL引擎(2)
  5. Linux错误27,解决在linux下编译32程序出现“/usr/include/gnu/stubs.h:7:27: 致命错误:gnu/stubs-32.h:没有那个文件或目录问题”...
  6. 乱七八糟 Nodejs 系列一:试水
  7. PHPCMS2008 二次开发摘要
  8. 中英文双语切换小程序开发制作
  9. android飞信群发助手
  10. 蒂芙尼推出由碧昂丝和Jay-Z主演的最新广告宣传片
  11. Video-based Emotion Recognition Using Multi-dichotomy RNN-DNN
  12. 深耕模具细分领域20载 德惠创新研发领跑行业
  13. Linux4.19-获取IDT地址
  14. excel中VBA获取指定单元格内容
  15. vue3安装wot-design步骤
  16. keepalived 配置文件参数详解
  17. 二十一点算法 --freeCodeCamp
  18. PS4合金装备5服务器维护,《合金装备5:幻痛》ps4联机网络设置方法介绍
  19. 数据库原理与应用课程知识点
  20. Flink Forward 201809PPT资料下载

热门文章

  1. Windows Server 2008 磐石风暴系列课程
  2. C语言中的静态函数的作用
  3. 【深度学习mmdetection错误】——mmdetection 运行报错KeyError:‘ConvWS is already registered in conv layer‘
  4. 【图像处理面试题】——1
  5. python查询模块所有类_python 小技巧(import模块、查询类继承关系、安装包)
  6. 解决 IDEA 调用其他类的时候自动加上包路径和类名的情况_idea 快捷键汇总(转)...
  7. python中configparser详解_Python中的ConfigParser模块使用详解
  8. redis的分布式解决方式--codis
  9. UVA - 11732 strcmp() Anyone?左兄弟右儿子trie
  10. Material design 色彩