
Nội dung
Cú pháp đi u khi nề ể
Các lo i thu c tínhạ ộ
Đ th ph thu cồ ị ụ ộ
L c đ d chượ ồ ị
Cú pháp đi u khi n trong phân tích LLề ể

Cú pháp điều khiển
Cú pháp đi u khi n (syntax-directed definition): là m t ề ể ộ
d ng t ng quát hoá c a văn ph m phi ng c nh, trong ạ ổ ủ ạ ữ ả
đó m i ký hi u văn ph m có m t t p thu c tính đi kèm, ỗ ệ ạ ộ ậ ộ
đc chia thành 2 t p con là thu c tính t ng h p ượ ậ ộ ổ ợ
(synthesized attribute) và thu c tính k th a (inherited ộ ế ừ
attribute) c a ký hi u văn ph m đó.ủ ệ ạ
M t cây phân tích cú pháp có trình bày các giá tr c a các ộ ị ủ
thu c tính t i m i nút đc g i là cây phân tích cú pháp ộ ạ ỗ ượ ọ
có chú gi i (ng nghĩa) (annotated parse tree).ả ữ

Cú pháp điều khiển (tiếp)
Đnh nghĩaị:
Trong m i cú pháp đi u khi n, m i s n xu t A->ỗ ề ể ỗ ả ấ có th ể
đc liên k t v i m t t p các qui t c ng nghĩa có d ng ượ ế ớ ộ ậ ắ ữ ạ
b=f(c1, . . .,ck) v i f là m t hàm vàớ ộ
b là m t thu c tính t ng h p c a A, còn cộ ộ ổ ợ ủ 1, . . .,ck là các
thu c tính c a các ký hi u trong s n xu t đó. ộ ủ ệ ả ấ Ho cặ
b là m t thu c tính k th a c a m t trong nh ng ký hi u ộ ộ ế ừ ủ ộ ữ ệ
v ph i c a s n xu t, còn cở ế ả ủ ả ấ 1, . . . ,ck là thu c tính c a ộ ủ
các ký hi u văn ph m.ệ ạ

Ví dụ về thuộc tính tổng hợp
S n xu tả ấ Lu t ng nghĩaậ ữ
L -> E nPrint(E.val)
E -> E1 + T E.val = E1.val + T.val
E -> T E.val = T.val
T -> T1 * F T.val = T1.val * F.val
T -> F T.val = F.val
F -> ( E ) F.val = E.val
F -> digit F.val = digit.lexval