软件设计师备考笔记【day5】-程序设计语言与语言处理程序

一,编译程序

1,编译程序结构图
2,编译与解释的区别
特性 编译方式 解释方式
处理流程 必须完整执行:词法分析 → 语法分析 → 语义分析 → 目标代码生成 也会做词法 / 语法 / 语义分析,但不生成目标代码,边分析边执行
目标代码 会生成机器可执行的目标代码(如.exe 不生成目标代码,执行时依赖解释器
中间代码 可选,不是必须的(有些简单编译器直接从语义分析生成目标代码) 一般不生成中间代码
执行效率 一次编译,多次执行,效率高 边解释边执行,效率低

二,各阶段具体作用

1,词法分析

把源代码拆成一个个 "单词"(标识符、关键字、运算符等)

2,语法分析

检查代码是否符合语法规则,生成语法树

3,语义分析

检查逻辑,类型、变量声明等语义错误,生成中间代码

4,中间代码生成

生成与机器无关的中间表示(如三地址码)

5,目标代码生成

把中间代码翻译成机器指令,寄存器分配(决定哪些变量放在寄存器里,提高访问速度)、指令选择、地址分配

三,其他考点

1,后缀式(逆波兰式)

后缀式 = 操作数在前,运算符在后

运算顺序:先算的,先放后面

括号优先、先乘除后加减,谁先算,谁先拼成后缀。

相关推荐
鹏北海-RemHusband8 小时前
Go 语言进阶笔记 — 面向 JS/TS 前端开发者
笔记·golang
nnsix10 小时前
Unity QFramework ResKit、UIKit 笔记
笔记
摇滚侠11 小时前
Java 零基础全套教程,反射机制,笔记 187-188
java·开发语言·笔记
【云轩】11 小时前
如何设计一台能模拟电机的电子负载:一个硬件工程师的实战笔记
笔记·嵌入式硬件
可信计算12 小时前
X司民用无人机运行安全与合规培训手册
笔记
李子琪。13 小时前
Web漏洞-CSRF-CSRF防御 实验步骤
经验分享·笔记
小碗羊肉14 小时前
【Agent笔记 | 第四篇】Agentic RAG
笔记
小雨xs14 小时前
Vulnhub靶场DC-9 渗透测试笔记
笔记
whyTeaFo14 小时前
MIT 6.1810: xv6 book Chapter3: Page tables 笔记
笔记
東雪木15 小时前
JVM 与 Java 内存模型 专属复习笔记
java·jvm·笔记·java面试