1. Trang chủ
  2. » Giáo Dục - Đào Tạo

CHƯƠNG TRÌNH DỊCH - CHƯƠNG 3 pot

45 172 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Giáo trình Kiến trúc máy tính và Hệ điều hành 52 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP - Mộtsố vấn đề về ngôn ngữ - Vănphạm phi ngữ cảnh - Đạicương về phân tích cú pháp - Các phương pháp phân tích cú pháp Giáo trình Kiến trúc máy tính và Hệ điều hành 53 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.1. Xâu - Bộ chữ (bảng chữ) là tậphợphữuhạncác ký hiệu Ví dụ:{0,1} bộ chữ gồm 2 ký hiệu0 và1 {a,b,c,…,z} bộ chữ gồmcáckýhiệua Æz Tậpcácchữ cái tiếng việt Giáo trình Kiến trúc máy tính và Hệ điều hành 54 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.1. Xâu - Xâu trên bộ chữ V là 1 dãy các ký hiệucủaV Ví dụ: 0110 là xâu trên bộ chữ {0,1} a, ab, giathanh là xâu trên bộ chữ {a,b,…,z} - Độ dài xâu là số các ký hiệutrongxâu Ký hiệu: độ dài xâu x là |x| Ví dụ: |01110|=5 Giáo trình Kiến trúc máy tính và Hệ điều hành 55 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.1. Xâu - Xâu rỗng là xâu có độ dài bằng 0 Ký hiệu: ε, |ε|=0 - Tậptấtcả các xâu trên V là V * , {ε}⊆V * V + = V * -{ε} V *: tậpvôhạn đếm được Ví dụ:V={a,b}ÆV *={ ε,a,b,aa,bb,ab,ba,…} Giáo trình Kiến trúc máy tính và Hệ điều hành 56 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.1. Xâu - Các phép toán trên xâu • Ghép tiếp: cho 2 xâu x,y. Ghép tiếpcủax, y là x.y hay xy là 1 xâu viếtx trước, rồi đếny sau chứ không có dấucách. Ví dụ:x=01 y=0110 xy=010110 Giáo trình Kiến trúc máy tính và Hệ điều hành 57 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.1. Xâu • Đảongượcxâux (x r ): xâu đượcviếttheothứ tự ngượclạicủaxâux Ví dụ: x=0101 Æx r =1010 Chú ý: ε r = ε, 1 r =1 - Xâu x mà x=x r thìx làxâuhìnhtháp(xâu đốixứng) Ví dụ: x=0110 Æx r =0110, x: xâu hình tháp Giáo trình Kiến trúc máy tính và Hệ điều hành 58 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.2. Ngôn ngữ - Ngôn ngữ L trên bộ chữ V là tậphợpcác xâu trên V, L⊆V * - Các phép toán trên ngôn ngữ • Vì ngôn ngữ là tậphợp nên có các phép toán tậphợp: ∩(giao), ∪(hợp), -(hiệu, bù) Giáo trình Kiến trúc máy tính và Hệ điều hành 59 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.2. Ngôn ngữ • Ghép tiếp 2 ngôn ngữ Cho 2 ngôn ngữ L1, L2. Ta gọighéptiếp L1.L2 (L1L2) của L1 và L2 là mộttậphợp L1L2={xy/(x∈L1) và (y∈L2)} x.x=x 2 ; x.x.x=x 3 ; x 0 =ε; x i =x i-1 x L 0 ={ε}; L i =L i-1 .L - L*=L0∪L 1 ∪L 2 ∪…∪; L + =L 1 ∪L 2 ∪…∪ Giáo trình Kiến trúc máy tính và Hệ điều hành 60 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.3. Biểudiễn ngôn ngữ  Ngôn ngữđơngiản - Phương pháp liệt kê: ngôn ngữ có số xâu là hữuhạnvàcóthể xác định được. Ví dụ: ngôn ngữ là các số tự nhiên nhỏ hơn 20 và lớnhơn12 L={13, 14, 15, 16, 17, 18, 19} Giáo trình Kiến trúc máy tính và Hệ điều hành 61 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 1. Mộtsố vấn đề về ngôn ngữ 1.3. Biểudiễn ngôn ngữ  Ngôn ngữđơngiản - Phương pháp sử dụng tân từ P(x): ngôn ngữ mà các xâu có cùng các đặc điểm. Ví dụ: ngôn ngữ là các số thựcnhỏ hơn5. L={x/ (x∈ R) và (x<5)}  Ngôn ngữ phứctạp Vănphạm: cơ chếđểsảnsinhrangônngữ [...]... KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 3 Sơ đồ chung giải thuật PTCP từ dưới lên Thuật toán: Sử dụng: 1 stack và 1 Buffer Khởi tạo: - stack: $ - Buffer: x$ Lặp: If (Stack là $S) và (Buffer là $) Then - x đúng cú pháp của vp G Giáo trình Kiến trúc máy tính và Hệ điều hành - Dừng vòng lặp 85 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ... Với α, β ∈ (Σ∪∆)* - Nếu α=ε: đệ qui trái - Nếu β=ε: đệ qui phải Giáo trình Kiến trúc máy tính và Hệ điều hành 73 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2 Văn phạm phi ngữ cảnh 2 .3 Các khái niệm Văn phạm đệ qui (1) (2) (3) (4) Ví dụ: S S0 | S1 | 0 | 1 Giáo trình Kiến trúc máy tính và Hệ điều hành 74 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN... BẢN VỀ PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 3 Sơ đồ chung giải thuật PTCP từ dưới lên Thuật toán: Else If (cán β xuất hiện ở đỉnh stack) Then - Lấy cán β ra khỏi stack - Đẩy A vào stack với A β Giáo trình Kiến trúc máy tính và Hệ điều hành 86 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 3 Sơ đồ chung giải thuật PTCP... HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2 Văn phạm phi ngữ cảnh 2 .3 Các khái niệm Xâu (câu) và dạng câu: - α gọi là xâu khi α ∈ Σ* - α gọi là dạng câu khi α∈(Σ∪∆)* Giáo trình Kiến trúc máy tính và Hệ điều hành 65 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2 Văn phạm phi ngữ cảnh 2 .3 Các khái niệm Quan hệ suy dẫn: - A có quan hệ suy dẫn... Giáo trình Kiến trúc máy tính và Hệ S điều hành Vậy xâu x viết đúng cú pháp của G E=E R (B) B 83 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 3 Sơ đồ chung giải thuật PTCP từ dưới lên Biết αi tìm αi-1 α0 αi = γiui γi∈(Σ∪∆)*; ui∈Σ* αi-1 γi =γi’β αi αk = x=uk; γk=ε αk=x S A γi β A β γi’ α0 = S=γ0; u0=εKiến trúc máy tính và Hệ Giáo trình. .. KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2 Văn phạm phi ngữ cảnh 2 .3 Các khái niệm Cây suy dẫn: cây thoả mãn các điều kiện: - Mỗi nút có 1 nhãn: ký hiệu kết thúc hoặc chưa kết thúc - Nhãn của nút gốc: ký hiệu bắt đầu - Nhãn của nút lá: ký hiệu kết thúc - Nếu một nút có nhãn A có các nút con của nó từ tráitrình Kiến trúc máy tính và Hệ Giáo sang phải có nhãn x1, x2, x3, …xn 69 điều... x3, …xn 69 điều hành thì A x1x2x3…xn ∈ p TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2 Văn phạm phi ngữ cảnh 2 .3 Các khái niệm Cây suy dẫn - Suy dẫn trái tạo cây suy dẫn trái - Suy dẫn phải tạo cây suy dẫn phải - Ví dụ: cho văn phạm phi ngữ cảnh sau: (1) (2) (3) (4) E E+E | E*E | (E) | a Vẽ cây suy dẫn trái, phải sinh xâu: a+a*a Giáo trình Kiến trúc máy tính và Hệ... KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 2 Phương pháp giải quyết Ví dụ: Phương pháp từ trên xuống (1) (3) (2) (4) S => B => (B) => (R) => (E=E) (7) (5) => (E=(E+E)) => (E=(E+a)) (6) (5) => (E=(b+a)) => (a=(b+a)) :xâu x Giáo trình Kiến đúng và pháp của G Vậy xâu x viết trúc máy tínhcúHệ điều hành 81 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN... PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 2 Phương pháp giải quyết Ví dụ: Phương pháp từ dưới lên Stt Dạng câu Cán Sx dùng (0) (a=(b+a)) a E a (1) (E=(b+a)) b E b (2) (E=(E+a)) a E a 82 (3) Giáo trình Kiến trúc máy tính và Hệ (E+E) E (E+E) (E=(E+E)) điều hành TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 3 Đại cương về phân tích cú pháp 3. 2 Phương pháp giải... {S} s: S p: S 0S | 1S | 0 | 1 Giáo trình Kiến trúc máy tính và Hệ điều hành 63 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG CHƯƠNG 3 CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2 Văn phạm phi ngữ cảnh Qui ước: - Ký hiệu kết thúc được viết bằng chữ thường - Ký hiệu chưa kết thúc được viết bằng chữ in - Ký hiệu chưa kết thúc nằm bên trái của sản xuất đầu tiên là ký hiệu bắt đầu Giáo trình Kiến trúc máy tính và Hệ điều . x.x.x=x 3 ; x 0 =ε; x i =x i-1 x L 0 ={ε}; L i =L i-1 .L - L*=L0∪L 1 ∪L 2 ∪…∪; L + =L 1 ∪L 2 ∪…∪ Giáo trình Kiến trúc máy tính và Hệ điều hành 60 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC. Giáo trình Kiến trúc máy tính và Hệ điều hành 52 TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP - Mộtsố vấn đề về ngôn ngữ - Vănphạm phi ngữ cảnh - Đạicương. ĐÀNẴNG CHƯƠNG 3. CÁC VẤN ĐỀ CƠ BẢN VỀ PHÂN TÍCH CÚ PHÁP 2. Vănphạm phi ngữ cảnh 2 .3. Các khái niệm ¾ Xâu (câu) và dạng câu: - α gọi là xâu khi α∈Σ* - α gọilàdạng câu khi α∈(Σ∪∆) * Giáo trình

Ngày đăng: 24/07/2014, 16:21