白沙黎族自治县网站建设_网站建设公司_全栈开发者_seo优化
2026/1/9 15:51:28 网站建设 项目流程

对上层用户/开发人员

对硬件的性能影响

提前声明:以下内容来自AI,不一定符合实际。

一、C++ 编译--执行流程:

源代码(.cpp) ↓ 预处理器 → 处理#include, #define等宏 ↓ 编译前端 → 词法分析、语法分析、语义分析 ↓ (生成抽象语法树AST) 编译中端 → 中间代码生成(LLVM IR) ↓ (平台无关优化) 编译后端 → 目标代码生成(x86/ARM等) ↓ 汇编器 → 生成目标文件(.obj/.o) ↓ 链接器 → 合并多个目标文件+库文件 ↓ 可执行文件(.exe/.elf) ↓ 操作系统加载器 → 分配内存,创建进程 ---- 开始执行 ↓ CPU直接执行 → 机器指令在CPU流水线中运行

二、Python 执行流程:

注意,python语言没有编译流程,C++是编译+执行性语言,python是解释执行性语言。

源代码(.py) ↓ 词法分析器 → 生成Token流 ↓ 语法分析器 → 生成抽象语法树(AST) ↓ 编译为字节码 → 生成.pyc文件(可选) ↓ Python虚拟机 → 解释执行字节码 ↓ Python运行时 → 管理对象、内存、异常等 ↓ C API层 → Python对象到C结构的转换 ↓ 操作系统调用 → 通过libc等C库 ↓ 硬件执行

可见,C++的类型检查,词法和语法分析等在编译阶段就已经由编译器完成,无需在执行阶段耗费时间;但是python没有编译阶段,所有工作需要再执行阶段进行,而且python是C语言的转换,运行是需要转到C语言,又耗费时间。

--python解释器(对于官方Cpython版本),主要基于C语言实现。

python虚拟机的作用

python解释器是一个"软件实现的CPU”,专门用来执行python代码。

python解释器是一个"软件实现的CPU”,专门用来执行python代码,python代码由python解释器执行,再由python解释器调用C接口实现和硬件的交互执行。

层级结构:

你的Python代码 ↓ Python解释器(软件实现的虚拟机) ↓ 1. 解释执行字节码(纯软件,Python实现) ↓ 2. 调用C实现的内部函数(性能关键部分) ↓ C标准库和系统调用接口(libc等) ↓ 操作系统内核 ↓ 硬件

总结对比

层面C++Python
编译/执行编译为机器码解释字节码
类型检查编译时(零运行时开销)运行时(每次操作都检查)
内存访问直接、连续间接、通过PyObject
函数调用直接跳转/内联字典查找+动态解析
硬件交互直接内存操作必须通过C扩展
优化时机编译时深度优化运行时有限优化
确定性执行时间可预测GC等导致非确定性延迟

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询