广工编译原理学习必备
需积分: 9 81 浏览量
更新于2024-07-26
收藏 505KB DOC 举报
“广工编译原理复习资料,包含了编译原理的重要概念和术语,适合备考使用。”
在计算机科学领域,编译原理是研究编程语言如何转换成计算机可执行代码的学科。以下是一些核心知识点的详细说明:
1. **字母表(Alphabet)**:在编译原理中,字母表是指一组基本符号的集合,这些符号用于构建程序或语言的语法。
2. **符号(Symbol)**:符号是构成语言的基本单元,可以是单个字符或字符串。
3. **串(String)**:由一个或多个符号组成的序列,是程序的基本结构。
4. **长度(Length)**:一个符号或串的字符数量。
5. **连接(Catenation)**:将两个或多个串合并成一个新的串。
6. **方幂(Power)**:在数学运算中,指一个数自乘的次数,在编译原理中可能涉及计算表达式的值。
7. **集合(Gather)**:一组具有共同特性的元素的组合。
8. **乘积(Product)**:在编译器设计中,可能指不同符号或语言结构的组合。
9. **空集(Empty Set)**:不包含任何元素的集合,表示没有匹配的语法结构。
10. **闭包(Closure)**:在正则表达式或自动机理论中,表示所有可能的扩展串。
11. **程序(Program)**:一组指令,用于告诉计算机执行特定任务。
12. **逻辑结构(Logic Structure)**:程序中的逻辑组成部分,如循环、条件语句等。
13. **机器语言(Machine Language)**:计算机能直接理解的二进制指令。
14. **指令(Instruction)**:机器语言中的基本操作命令。
15. **函数(Function)**:程序中的可重用代码块,执行特定功能。
16. **汇编程序(Assembler)**:将高级语言转换为机器语言的程序。
17. **解释程序(Interpreter)**:直接执行源代码的程序,无需先生成目标代码。
18. **翻译程序(Translator)**:将一种语言转换为另一种语言的工具。
19. **源语言(Source Language)**:程序员编写程序的语言。
20. **有穷的(Finite)**:在编译原理中,通常用于描述有限状态自动机,即只有有限数量的状态。
21. **源程序(Source Program)**:用源语言编写的原始程序。
22. **目标语言(Target Language)**:编译后的程序所用的语言,通常是机器语言。
23. **属性(Attribute)**:在语法分析中,与语法元素相关的附加信息。
24. **占有(Possess)**:在编译过程中,指一个元素具有或关联特定的属性。
25. **预处理(Preprocess)**:在编译前对源代码进行的处理,如宏替换。
26. **编译程序(Compiler)**:将源代码转换为目标代码的软件。
27. **中断(Break)**:在程序执行中,用于停止当前流程的控制结构。
28. **中间语言(Intermediate Language)**:编译过程中产生的临时代码,便于进一步处理。
29. **定义(Definition)**:在编译原理中,指的是语法结构的规范说明。
30. **重构(Reconstructed)**:在编译过程中,对源代码进行的结构修改。
31. **正规(Regular)**:在正则表达式中,表示可以用有限状态自动机识别的语言。
32. **字符序列(Symbol Sequences)**:在词法分析阶段,识别出的符合语法规则的字符组合。
33. **程序设计语言(Programming Language)**:用于编写计算机程序的语言。
34. **操作数(Operand)**:在表达式中参与运算的对象。
35. **内存(Memory)**:计算机存储数据和指令的地方。
36. **元素(Element)**:构成程序设计语言的基本单位。
37. **高级语言(High-Level Language)**:人类可读性更强的编程语言。
38. **目标程序(Object Program)**:经过编译后的、准备被链接和执行的程序。
39. **地址(Address)**:内存中存储位置的标识。
40. **输入(Input)**:提供给程序的数据。
41. **输出(Output)**:程序处理后的结果。
42. **终结符(Terminal)**:文法中的基本符号,对应于词法分析的标记。
43. **递归(Recursion)**:函数或过程调用自身的技术。
44. **确定性(Deterministic)**:在编译器设计中,指解析过程的确定性,即对于相同的输入,总能得到相同的结果。
45. **非确定性(Nondeterministic)**:相反,非确定性解析允许有多种可能的解析路径。
46. **Backus-Normal Form (BNF)**:一种描述形式文法的表示方法,用于定义编程语言的语法。
47. **语法(Syntax)**:编程语言中,关于如何正确构造程序的规则。
48. **树(Tree)**:在语法分析中,用于表示程序结构的图形表示。
49. **表达式(Expression)**:在程序中,代表计算的结构。
50. **文法(Grammar)**:一套定义语言结构的规则。
51. **自动机(Automaton)**:用于识别或生成语言的数学模型。
52. **前缀(Prefix)**、**后缀(Suffix)**和**中缀(Infix)**:表示运算符的三种方式,分别在操作数前、后和中间。
53. **识别(Identify)**:在词法分析中,识别输入流中的符号或关键字。
54. **标识符(Identifier)**:程序中用来命名变量、函数等的符号。
55. **分析(Analyses)**:编译过程中的各种检查和转换,如词法分析、语法分析和语义分析。
56. **化简(Predigest)**:简化复杂的语言结构,使其更易于处理。
57. **符号集(Symbol Set)**:在词法分析中,所有可能的输入符号的集合。
58. **执行(Performed)**:在编译器中,指对特定任务的处理。
59. **预测(Prediction)**:在预测解析中,预测下一个输入符号的能力。
60. **状态(State)**:在自动机中,表示当前解析过程的位置。
61. **产生式(Production)**:在上下文无关文法中,定义非终结符如何转化为终结符的规则。
62. **转换(Conversion)**:在编译过程中,源代码到中间代码或目标代码的转换。
63. **优先级(Precedence)**:运算符的优先级,决定哪个运算先进行。
64. **简单(Simple)**:在编译原理中,可能指简单的语法结构或无复杂性的特性。
65. **句柄(Handle)**:在编译器中,用于引用或管理特定对象的标识。
66. **终态(Terminal State)**:在有限状态自动机中,接收输入序列并结束的特殊状态。
67. **初态(First State)**:自动机开始运行时的状态。
68. **优化程序(Optimizer)**:在编译器中,用于改进目标代码性能的部分。
69. **连接(Concatenation)**:在字符串处理中,连接两个或更多字符串。
70. **单词(Word)**:在词法分析中,通常指一个完整的、有意义的词法单元。
71. **字母表(Alphabet)**:在语言理论中,字符的集合。
72. **词法(Lexical)**:与词法分析相关的,关注如何将输入分解为词法单元。
73. **扫描器(Scanner)**:也称为词法分析器,负责识别输入中的词法单元。
以上知识点构成了编译原理的基础框架,理解和掌握这些概念对于学习和实践编译技术至关重要。
2015-12-17 上传
2008-12-30 上传
2024-06-28 上传
2013-01-03 上传
2012-12-16 上传
2021-02-05 上传
2010-12-20 上传
2013-01-03 上传
2011-11-30 上传
graceandyy123
- 粉丝: 0
- 资源: 3
最新资源
- 模因生成
- s60-mymoney-2-feidee-money:将我的财务中导出的数据迁移到随手记
- webassembly.zip
- pglp_4.1
- XX公司人力资源薪酬专员行为标准
- asp+ACCESS酒店房间预约系统设计(源代码+论文).rar
- BuildingSoftwareSystemHomeWorks:CENG431初步选举课程作业
- web-development:该存储库包含自学习的全栈开发资料
- cordova-plugin-mediachooser
- danielreguero:我的个人博客文章网站
- MySVGs:只是我的svg文件
- heightEcharts资源.zip
- Ecasepaper:纸箱
- [论坛社区]IPB(Invision Power Board) v2.1.2 简体中文修正版_ipb.rar
- 支付app转账页面ui .sketch素材下载
- rubberduck