软件设计师 知识点拾遗 程序语言基础知识
软件设计师 知识点拾遗 程序语言基础知识
- 2016年上半年第20题

题目中出现的几个概念的具体内涵如下所示:
- 编译程序:将整个源代码一次性翻译成目标代码的程序,可以生成一个独立的执行文件,在执行时无需源代码。
- 解释程序:逐行读取源代码,实时翻译并控制执行,不生成独立的目标文件。
- 编译方式:指通过编译程序处理代码的完整流程,即编译->链接->运行。其特点是效率高,因为运行时没有翻译的开销,但是跨平台需要重新编译。
- 解释方式:指通过解释程序直接执行源代码的流程,即逐行翻译+执行。和编译方式相对,解释方式的跨平台性能很好。
此外,需要了解的是,编译过程即词法分析(生成2元组)->语法分析(生成语法树)->语义分析(判断代码有无逻辑谬误)->中间代码生成(生成不依靠特定机器的中间表示)->代码优化->目标代码(针对于特定机器)生成6个阶段。
- 2016年上半年第21题

脚本语言是一类语言的统称,这种语言具有以下特点:
特性 | 说明 | 示例(Python) |
---|---|---|
解释执行 | 通过解释器实时运行,不生成独立可执行文件 | python script.py |
动态类型 | 变量类型在运行时自动推断 | x = 10 (无需声明int x ) |
胶水语言 | 可轻松调用其他程序或库(如Shell调用系统命令) | os.system("ls") |
快速开发 | 语法简洁,适合小型项目或快速验证想法 | 用5行代码实现文件处理 |
跨平台性 | 依赖解释器而非硬件,同一脚本可在不同系统运行 | Python脚本在Windows/Linux通用 |
- 2015年上半年第22题

- 代码区:存放函数体的二进制代码。
- 栈区:由编译器自动分配释放,存放函数的参数值、局部变量的值等。
- 堆区:一般由程序员分配释放,若程序员不释放,程序结束时可能由操作系统回收。
- 静态数据区:内存在程序启动的时候才被分配,而且可能直到程序开始执行的时候才被初始化,所分配的内存在程序的整个运行期间都存在,如全局变量、static变量等。

目标代码生成阶段应考虑直接影响目标代码速度的三个问题:一是如何生成较短的目标代码;二是如何充分利用计算机中的寄存器,以减少目标代码访问存储单元的次数;三是如何充分利用计算机指令系统的特点,以提高目标代码的质量。
软件设计师 知识点拾遗 程序语言基础知识
http://example.com/2025/05/14/note40/