前端与后端划分 — 计算机选择题
题目
某编译器开发商计划将同一语言 L 的编译器移植到 R1、R2、R3 三种不同处理器上。团队将现有编译器划分为前端和后端两部分,并决定:只重写后端以适配各处理器,前端完全复用。移植到第一种处理器 R1 时,团队甲认为还需重新编写与 L 的词法和语法相关的分析模块,团队乙认为只需为 R1 重写与目标机相关的代码生成与机器无关优化以外的部分。关于前端与后端的划分,下列说法正确的是:
A. 前端依赖目标机,每换一种处理器都应重写;后端与源语言相关,只写一次即可
B. 前端与源语言相关、与目标机无关,可复用;后端与目标机相关,移植时只需重写后端
C. 前端只做词法分析,后端完成从语法分析到代码生成的全部阶段
D. 中间代码生成属于后端,因此换目标机时中间代码生成也必须重写