在语法分析过程中,随着分析的步步进展,根据每个产生式所对应的语义子程序(或语义规则描述的语义动作)进行翻译的办法称作语法制导翻译。
假如我们要把中缀算术表达式翻译为后缀波兰表示形式(后缀波兰表示形式参见8.3.1),给出如下语义描述:
E→T + E1 { E.code=T.code|| E1.code||+
}
E→T { E.code=T.code }
T→F * T1 { T.code=F.code||T1.code||
* }
T→F { T.code =F.code }
F→(E) { F.code = E.code }
F→a { F.code = a }
其中使用E.code,T.code和F.code分别表示相应的后缀式,"||"表示后缀式的连接。如果对于输入串a+a*a采用最左分析,其形成的推导过程为:
E T+E F+E a+E a+T a+T*
F a+F*F a+a*F a+a*a
(α,β),α是输入句子和句型,β是翻译的输出形式,则有:
(E,E.code) 
(T+E, T.code||E.code||+) T (F+E, F.code||E.code||+)

(a+E, a||E.code||+)

(a+T, a||T.code||+)

(a+F*, a||F.code||T.code||*+)

(a+a*, a||a||T.code||*+)

(a+a*F, a||a||F.code||*+)

(a+a*a, a||a||a||*+)去掉a||a||a||*+中的连结符,得到中缀表达式a+a*a的后缀式aaa*+
|