1
Bài gi ng 4 - Phân tích cú pháp
và các ph ng pháp phân tích c ươ ơ
b n
Nguy n Ph ng Thái ươ
B môn Khoa h c Máy tính
http://www.coltech.vnu.vn/~thainp/
2
Bài toán
Đu vào: câu vào ch a toàn các t t
Phân tách câu vào thành các ph n theo
văn ph m và bi u di n c u trúc này
b ng m t cây (g i là cây phân tích)
ho c theo m t c u trúc nào đó t ng ươ
đng v i cây.ươ
3
Bài toán (ti p)ế
Phán têch
tæì væûng Phán têch
cuï phaïp
cáy
phán
têch Phán têch
ngæî
nghéa
Baíng kyï
hûu
yãu cáöu
úy tæì täú
tæì täú
Chæång
trçnh
nguäön
4
Văn ph m
M i ngôn ng l p trình đu có các lu t mô t các
c u trúc cú pháp.
M t ch ng trình ngu n vi t đúng ph i tuân theo các ươ ế
lu t mô t này - t c là vi t đúng văn ph m (hay đúng ế
ng pháp).
Văn ph m c a m t ngôn ng l p trình có c u trúc có
th mô t b ng văn ph m phi ng c nh và bi u
di n theo ký pháp BNF ho c đ th chuy n.
5
Các ph ng pháp phân tíchươ
C s c a phân tích cú pháp đi v i l p ơ
VPPNC là đnh lý Bài toán thành viên v i
ngôn ng phi ng c nh. Ng i ta đã ch ng ườ
minh đc đnh lý này b ng cách đa ra các ượ ư
gi i thu t cài đt trên th c t , ví d nh : ế ư
Thu t toán phân tích Top-Down.
Thu t toán phân tích Bottom - Up.
Thu t toán phân tích CYK (Coke-Younger-
Kasami).
Thu t toán phân tích Earley.