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

一,编译程序

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

二,各阶段具体作用

1,词法分析

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

2,语法分析

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

3,语义分析

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

4,中间代码生成

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

5,目标代码生成

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

三,其他考点

1,后缀式(逆波兰式)

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

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

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

相关推荐
成都蜀味缘餐饮技术培训学校2 小时前
手撕烤兔技术培训实战指南,秘制腌料配方比例与调制手法
大数据·经验分享·笔记·其他·微信公众平台
希和20273 小时前
免费AI视频生成工具汇总(国内优先,适合做漫剧、短视频,Obsidian笔记版)
人工智能·笔记·音视频
蒸蒸yyyyzwd4 小时前
秋招学习笔记 day109
笔记·八股
只愿云淡风清7 小时前
正则表达式学习笔记 02:基础语法
笔记·学习·正则表达式
希和202717 小时前
考研英语阅读词汇笔记|城市野径、抄近道步道(非正式小路)
笔记·考研
一个人旅程~20 小时前
关于imac27inch因改短用户名导致混合硬盘和系统崩溃的问题分析与故障解决
经验分享·笔记·macos·新浪微博
心祭丫丫21 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
派大猩猩_1 天前
Obsidian 笔记怎么同步多端:Nutstore Sync 大笔记库同步测评
笔记·obsidian·obsidian插件·obsidian同步
叼烟扛炮1 天前
Linux 学习笔记(五十):网络层——IP 协议、子网划分与 NAT 魔法
linux·笔记·学习
叼烟扛炮1 天前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法