程序员用 C、C++、Python、Scratch 等编写的程序能在 CPU 上直接执行。
这道题考的是程序执行前的‘翻译’过程。拿到题先想:CPU 认不认 C/Python 这些文字?不认,它只认 0 和 1 的机器码,所以必须有个中间人先把代码翻译成机器码,CPU 才能跑。
很多同学一看到‘程序’就默认指写好的源代码,忽略了‘编译’或‘解释’这步翻译,直接选了 A。还有人会拿‘C++ 编译后生成的二进制’去套题干,觉得‘能执行’就对了,但题干强调的是‘源代码’能否‘直接’执行,关键词‘直接’是破题眼,必须死磕这个限定词。
【考点】机器码与源代码的区别、编译与解释的基本流程
CPU 是计算机的大脑,但它极其‘低智’,只能识别由 0 和 1 组成的二进制指令(机器码)。而程序员写的 C、C++、Python、Scratch 等代码,全是人类可读的高级语言,CPU 完全看不懂。因此,程序在运行前必须经过‘翻译’:要么由编译器把整个源代码转换成机器码生成可执行文件,要么由解释器逐行翻译并执行。题干问的是‘用高级语言编写的程序’(即源代码)能否‘直接’在 CPU 上执行,答案显然是不能,必须选 B。命题人专门挖这个坑,就是卡住那些只背结论不追本质的考生——以为‘程序=代码=CPU 能懂的’,完全没意识到中间还有道翻译工序。
思考心法:看到‘CPU 直接执行’这种绝对化表述,立刻警觉。先定位关键词:CPU 只认机器码;再看主语:C/Python 等是高级语言;最后判断:高级语言≠机器码,中间缺翻译。所以‘直接执行’这四个字就是死穴,答案必错。
避坑提醒:别被‘C++ 编译后能跑’带偏。题干没提‘编译后’,说的是源代码本身。也别纠结‘解释执行’和‘编译执行’的区别,无论哪种,源代码都不能直接上 CPU。正确理解是:源代码→(编译/解释)→机器码→CPU 执行。考频趋势:编译与解释相关题目在题库共考过 15 题,覆盖 7 个级别,2023 年考了 1 题,2024 年 1 题,2025 年 1 题,2026 年 3 题,说明这类‘翻译’概念是高频考点,尤其 GESP 一级和 CSP 入门级常考。未来预测:基于近年数据,命题人仍可能继续用‘直接执行’‘源代码 vs 可执行文件’这类对比挖坑,但会结合具体语言特性(如 Python 解释器、C++ 编译器)增加干扰项,考验考生对‘翻译’必要性的本质理解。暂无足够依据预测具体题型变化,但核心考点不会变。