งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

 Warattapop Chainate.  LR(1) parsing มีองค์ประกอบและขั้นตอนวิธีเหมือนกับ SLR(1) parsing ต่างกันเพียงวิธีการสร้าง action และ goto tables เท่านั้น  แต่...

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: " Warattapop Chainate.  LR(1) parsing มีองค์ประกอบและขั้นตอนวิธีเหมือนกับ SLR(1) parsing ต่างกันเพียงวิธีการสร้าง action และ goto tables เท่านั้น  แต่..."— ใบสำเนางานนำเสนอ:

1  Warattapop Chainate

2  LR(1) parsing มีองค์ประกอบและขั้นตอนวิธีเหมือนกับ SLR(1) parsing ต่างกันเพียงวิธีการสร้าง action และ goto tables เท่านั้น  แต่... ก่อนจะไปสร้างตาราง เราต้องรู้จัก o item LR(1) o closure set o goto set และ o กลุ่มคาโนนิคอล LR(1)

3  ไอเท็ม LR(1) ประกอบด้วยสองส่วน ส่วนแรกเหมือนกับไอเท็ม LR(0) และส่วนที่สองเป็น terminal sym หรือ $ โดยจะเขียนอยู่ ในรูป [ ส่วนแรก, ส่วนที่สอง ] o เช่น [X  , a]  Closure(I) สำหรับ LR(1) a) เพิ่มสมาชิกทุกตัวใน I เข้าไปเป็นสมาชิกของ closure(I) b) พิจารณาไอเท็ม LR(1) ที่เป็นสมาชิกใน closure(I) ถ้ามี  อยู่หน้า non- terminal sym สมมติว่าคือ [X   B , a] และ B มีกฎ B   ให้เพิ่มไอ เท็ม LR(1) คือ [B  , b] เมื่อ b  FIRST(  a) เข้าไปเป็นสมาชิกของ closure(I) ** หากมี $ ให้มอง $ เป็น terminal sym ตัวหนึ่ง FIRST($)={$} c) ทำข้อ b ซ้ำๆ จนกว่าจะไม่มีไอเท็ม LR(1) ใหม่เพิ่มเข้าไปใน closure(I)  จงหา closure({[S’   S, $]})

4  goto(I, X) เมื่อ I เป็นเซตของไอเท็ม LR(1) และ X เป็น non- terminal หรือ terminal sym จะมีวิธีการหาสมาชิกดังนี้ o นำไอเท็ม LR(1) ใน I ที่มี  ติดอยู่ข้างหน้า X มารวมกันเป็นเซต o เลื่อน  ไปไว้หลัง X แล้วหา closure ของเซตดังกล่าว  จาก กำหนดให้ I 3 ={[S  b  A, $], [S  b  da, $], [A   d, $], [A  , $]} จงหาเซตของ goto (0) S’  S (1-4) S  Aa | bA | bda |  (5-6) A  d | 

5  สำหรับไวยากรณ์ G=(N, T, S, P) และ Ag (N  {S’}, T, S’, P  {S’  S})  กำหนดให้ C เป็นเซตของ ไอเท็ม LR(1) ของ Ag G’ ซึ่งเรียกว่า “ กลุ่มคาโนนิคอล LR(0) ของ Ag G’” C := {closure({[S’   S, $]})}; ทำซ้ำๆ จนกว่าจะไม่มีสมาชิกใหม่เพิ่มเข้าไปใน C ดังนี้ สำหรับ ( สมาชิก I แต่ละตัวใน C) สำหรับ ( สัญลักษณ์สิ้นสุด และสัญลักษณ์ไม่สิ้นสุด X แต่ละตัว ) ถ้า (goto(I, X)  และ goto(I, X)  C) แล้ว เพิ่ม goto(I, X) เข้าไปในสมาชิกตัวใหม่ใน C;

6 I 0 ={[S’   S, $], [S   Aa, $], [S   bA, $], [S   bda, $], [S  , $], [A   d, a], [A  , a]}


ดาวน์โหลด ppt  Warattapop Chainate.  LR(1) parsing มีองค์ประกอบและขั้นตอนวิธีเหมือนกับ SLR(1) parsing ต่างกันเพียงวิธีการสร้าง action และ goto tables เท่านั้น  แต่...

งานนำเสนอที่คล้ายกัน


Ads by Google