首先,将语言划分为N个部分:
L
=
L
1
+
L
2
+
…
+
L
n
L = L_1+ L_2+…+ L_n
L=L1?+L2?+…+Ln?
L
1
L_1
L1? ——核心部分
L
2
~
L
n
L_2~ L_n
L2?~Ln?——扩充部分 用自展方式进行编译,可提高生产率。因核心语言小,可用汇编实现。其余部分高级语言编写。比全用低级语言效率高。
先用A机上的汇编编写L1的编译程序,L1.Aa
L
1
.
A
a
→
A
s
s
e
m
b
e
r
→
L
1
.
A
o
L_1.Aa→Assember→L_1.A o
L1?.Aa→Assember→L1?.Ao
用
L
1
L1
L1编写
L
1
+
L
2
L1+L2
L1+L2的编译程序
用
(
L
1
+
L
2
)
(L1+L2)
(L1+L2)编写
L
1
+
L
2
+
L
3
L1+L2+L3
L1+L2+L3的编译程序