程序语言基础知识
Posted 晴天彩虹
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了程序语言基础知识相关的知识,希望对你有一定的参考价值。
1.语言概述
基本概念
机器指令程序,最基本的计算机语言,二进制的机器指令序列;
汇编语言,书写格式取决于特定计算机的机器指令。
以上皆是低级语言,面向机器的语言。
高级语言:不依赖于机器硬件的程序语言。如:java、c、c++、php、python……
语言处理程序:将高级语言或汇编语言翻译为机器语言。
方式分为:汇编、解释、翻译
源程序
解释程序:即解释器,将源程序翻译为中间代码
编译程序:即编译器,将源程序翻译成目标语言程序
区别:解释器,不生成独立的目标程序,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序控制权在解释程序;编译器,将源程序翻译成独立保存的目标程序在机器上运行,源程序和编译程序都不在参与到目标程序的执行过程中。
程序语言的定义:语法、语义、语用、语境
通用程序设计语言:程序语言能够用于范围广泛的问题求解过程。如c、java、
程序语言的分类:
命令式程序设计语言:基于动作的语言,面向过程。如c、结构化程序设计语言
面向对象程序设计语言:c++、java、
函数式程序设计语言:
逻辑型程序设计语言:
语言基本成分:数据、运算、控制、传输、
数据:名称、类型、存储类别、作用域、生存期
值是否改变分类:常量、变量
作用域范围分类:全局量、局部量
数据组织形式分类:
运算:算数运算、关系运算、逻辑运算、位运算
控制:顺序结构、选择结构、循环结构
函数
2.语言处理程序
将高级语言或汇编语言翻译为机器语言。
分为:汇编程序、编译程序、解释程序
汇编语言程序:
三类语句:指令语句、伪指令语句、宏指令语句
汇编程序:将汇编语言编写的程序翻译成机器指令程序。
编译程序:将源程序翻译成目标语言程序(汇编语言或机器语言)
文法:
字母表、字符、字符串、空串、连接、
字符串集合运算:或、积、幂、正则闭包、闭包
文法分类
状态转换图、状态转换矩阵
中间代码分类:后缀式(逆波兰式)、三元式、四元式、树形表示
语法单位:算数表达式、布尔表达式、赋值语句、控制语句……
分配存储空间:基本数据类型、结构化数据类型(数组、记录……)、连接数据(返回地址、参数……)
分配依据:作用域、生存期定义的规则
分类:静态存储分配(编译时确定)、动态存储分配(允许递归过程、可变数据结构;栈分配、堆分配)
优化:转换为等价、有效的目标代码;可在编译的各个阶段进行,最主要的优化是在目标代码生成以前对中间代码进行的
1.中间代码形式:树与后缀表示形式(解释器)、四元式形式(编译器,与机器指令格式接近)
2.目标代码:汇编语言形式、机器指令形式(绝对机器指令代码、可再定位机器代码)
3.寄存器的分配
4.计算次序的选择
解释程序基本原理
结构:分析部分(词法、语法、语义)、解释部分
解释方式与编译方式的比较:
1.编译可能取得更高的效率
2.解释灵活性更高
3.解释可移植性更高
DFA与NFA:
以上是关于程序语言基础知识的主要内容,如果未能解决你的问题,请参考以下文章