本人学习zst_2001的课程总结如下链接:zst_2001的个人空间_哔哩哔哩_Bilibili
(主要更新背多分,需要理解的已经放了学习链接了,各位好好加油,我把整本书都看了,刷了10年真题总结如下:)
目录
(以下有限自动机、正规式、上下文无关文法都需要理解,我把学习链接放下面,进去找就行了,我主要更新背多分,理解还得各位学习后,刷真题就行了~)
HTML基本知识(有一年考了两题,不容忽视,大概考的就一下这些了)
编译程序和解释程序:
解释器:
翻译源程序时不生成独立的目标程序
解释程序和源程序要参与到程序的运行过程中
编译器:
翻译时将源程序翻译成独立保存的目标程序
机器上运行的是与源程序等价的目标程序,
源程序和编译程序都不能再参与目标程序的运行过程
程序设计语言基本成分:
程序设计语言的基本成分包括数据、运算、控制和传输等。
程序设计语言的控制成分包括顺序结构、选择结构、循环结构。
程序设计语言规定在源程序中的数据都必须具有类型:
1、便于为数据合理分配存储单元
2、便于对参与表达式计算的数据对象进行检查
3、便于规定数据对象的取值范围及能够进行的运算
传值调用和传址调用的方法:
传值调用:
将实参的值传递给形参,实参可以是变量、常量和表达式。
不可以实现形参和实参双向传递的效果
传址调用:(引用调用)
将实参的地址传递给形参,形参必须有地址,实参不能是常量(值),表达式。
可以实现形参和实参双向传递数据的效果,即改变形参的值同时也改变的实参的值。
形参和实参的区别 如下:
编译、解释程序翻译阶段:
常见的中间代码有:后缀式、三地址码、三元式、四元式和树(图)等形式。
中间代码与具体的机器无关(不依赖具体的机器),
可以将不同的高级程序语言翻译成同一种中间代码。
中间代码可以跨平台。
因为与具体的机器无关,使用中间代码有利于进行
与机器无关的优化处理和提高编程程序的可移植性。
符号表:
不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入符号表中。
记录源程序中各个字符的必要信息,以辅助语义的正确性检查和代码生成。
重点背诵下面蓝色字各种分析的作用(常考语法分析,语意分析)
(以下有限自动机、正规式、上下文无关文法都需要理解,我把学习链接放下面,进去找就行了,我主要更新背多分,理解还得各位学习后,刷真题就行了~)
(软件设计师 上午题 #2 程序设计语言_哔哩哔哩_bilibili)
有限自动机是词法分析的一个工具,他能正确地识别正规集
确定的有限自动机(DFA):对每一个状态来说识别字符后转移的状态是唯一的
不确定的有限自动机(NFA):对每一个状态来说识别字符后转移的状态是不唯一的
正规式:
正规式(需要理解,近两年内考试没有出)(有限自动机也是近两年没有出)
上下文无关文法
上下文无关文法例题:
中缀后缀表达式转换(常考):
(需要理解,链接点击软件设计师 上午题 #2 程序设计语言_哔哩哔哩_bilibili 在里面找就好)
语法树中后续遍历(常考):
(需要理解,链接点击软件设计师 上午题 #2 程序设计语言_哔哩哔哩_bilibili 在里面找就好)
程序语言的各种特点:
脚本语言都是动态语言,而动态语言都是解释型语言
c/c++是编译型程序设计语言,常用于进行系统级软件的开发
java python javascript 都是解释型本程序设计语言,其中python
和javascript 是脚本语言。
HTML基本知识(有一年考了两题,不容忽视,大概考的就一下这些了)
- <!DOCTYPE html> 声明为 HTML5 文档
- <html> 元素是 HTML 页面的根元素
- <head> 元素包含了文档的元(meta)数据,如 <meta charset="utf-8"> 定义网页编码格式为 utf-8。
- <title> 元素描述了文档的标题
- <body> 元素包含了可见的页面内容
- <h1> 元素定义一个大标题
- <p> 元素定义一个段落
- <br>换行
- <hr>定义水平线