学习笔记(05):2020软考软件设计师--基础知识实战培训视频-程序语言基础知识(一)...

立即学习:https://edu.csdn.net/course/play/7883/161184?utm_source=blogtoedu

一. 程序设计语言基本概念

  1. 低级语言和高级语言
    机器语言和汇编语言称为低级语言.
    机器语言指0 \ 1组成的机器指令序列.
    汇编语言指用符号表示指令的语言.
    高级语言是从人类的逻辑思维角度出发\面向各类应用的程序语言,抽象程度大大提高,需要编译成特定机器上的目标代码才能执行.
  2. 编译程序和解释程序
    高级语言或汇编语言编写的程序称为源程序,源程序不能直接在计算机上执行.
    如果源程序是汇编语言编写的,则需要一个称为汇编程序的翻译程序将其翻译成目标程序,然后才能执行.
    如果源程序是高级语言时,这个翻译程序称为编译程序.
    按源程序中语句的执行顺序,逐条翻译并立即执行相关功能的处理程序,称为解释程序.

    程序的执行方式:
    1.编译执行:按编译方式在计算机上执行用高级语言编写的程序,需经过两个阶段:
    编译阶段,把源程序翻译为目标程序;
    运行阶段,真正执行此目标程序.
    优点:执行效率高,占用资源小.
    缺点:兼容性差.
    2.解释执行:源程序的每个语句一经解释就立即执行.
    优点:可移植性较好,开发速度较快,与用户通信方便.
    缺点:效率低.(因为每次执行都要解释一遍)

二.编译系统基本原理(3-5分)

编译程序的工作过程可以分为6个阶段:词法分析\语法分析\语义分析\中间代码生成\代码优化\目标代码生成.(背记)

1.词法分析阶段

输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个的单词,删掉无用信息,报告分析时的错我.

一个程序语言的基本语法符合分为五类:关键字\标识符\常量\运算符\界符等

词法分析器所暑促单词符号常常表示成如下的二元式:(单词种类,单词符号的属性值)(为固定长度,符号属性值可以用指针表示,指向内存中的值)

描述词法规则通常用:正规式和有限自动机.

2.状态转换图

状态转换图是状态有限的有向图,用圆圈表示结点状态,结点之间有向边代表状态转换,有向边上可标记字符,表示前一状态接受某一个字符之后的状态转移.

 

状态转换图的功能:

  • 用于识别一定字符串

状态转换图的要求

  • 状态(即结点)个数有限
  • 至少一个初始状态,若干中止状态
  • 每条边上标有字符(也可以是空字符)

状态转换图的表示习惯

  • 初始状态用"o"表示
  • 非终止状态用"o"表示
  • 状态之间的跳转用"------>"(有向边)表示
  • 终止状态用""表示
  • 多读进一个字符用"*"表示

3.正规表达式与正规集(定义和运算)

状态转换图可以构造词法分析程序,但属于非形式花描述正规表达式(简称正规式)是词法分析的形式化表示方法.所谓形式化的方法,是指用一整套带有严格规定的符号体系来描述问题的方法.

优点:更加清晰和准确

 

正规式定义中:

  • "|" 读为 "或"
  • "." 读为 "连接"
  • "*" 读为 "闭包"(即,任意有限次的自重复连接).

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章