เครื่องวิเคราะห์คำศัพท์ทำงานอย่างไร
เครื่องวิเคราะห์คำศัพท์ทำงานอย่างไร

วีดีโอ: เครื่องวิเคราะห์คำศัพท์ทำงานอย่างไร

วีดีโอ: เครื่องวิเคราะห์คำศัพท์ทำงานอย่างไร
วีดีโอ: เรียนภาษาอังกฤษ(รวมศัพท์อุปกรณ์เครื่องช่าง) 2024, พฤศจิกายน
Anonim

การวิเคราะห์ศัพท์คือ เฟสแรกของคอมไพเลอร์ NS เครื่องวิเคราะห์คำศัพท์ แบ่งไวยากรณ์เหล่านี้เป็นชุดของโทเค็น โดยลบช่องว่างหรือความคิดเห็นในซอร์สโค้ด ถ้า เครื่องวิเคราะห์คำศัพท์ พบโทเค็นที่ไม่ถูกต้อง ทำให้เกิดข้อผิดพลาด NS การทำงานของเครื่องวิเคราะห์คำศัพท์ อย่างใกล้ชิดกับไวยากรณ์ เครื่องวิเคราะห์.

ตามลําดับแล้ว lexical analyzer ทำหน้าที่อะไร?

lexer หรือเรียกอีกอย่างว่า lexical analyzer หรือ tokenizer เป็นโปรแกรมที่แบ่ง ป้อนข้อมูล ซอร์สโค้ดเป็นลำดับ lexemes มันอ่านว่า ป้อนข้อมูล อักขระซอร์สโค้ดทีละอักขระ รับรู้ lexemes และส่งออกลำดับของโทเค็นที่อธิบาย lexemes

ในทำนองเดียวกัน ความแตกต่างระหว่าง lexical และ syntax analyzer คืออะไร? หลัก ความแตกต่างระหว่างการวิเคราะห์ศัพท์ และ การวิเคราะห์ไวยากรณ์ คือว่า การวิเคราะห์คำศัพท์ อ่านซอร์สโค้ดทีละอักขระและแปลงเป็น lexemes ที่มีความหมาย (โทเค็น) ในขณะที่ การวิเคราะห์ไวยากรณ์ ใช้โทเค็นเหล่านั้นและผลิตต้นไม้แยกวิเคราะห์เป็นผลลัพธ์

ต่อมา คำถามคือ ผลลัพธ์ของ lexical analyzer คืออะไร ?

(I) ดิ ผลผลิต ของ เครื่องวิเคราะห์คำศัพท์ คือโทเค็น (II) จำนวนโทเค็นทั้งหมดใน printf("i=%d, &i=%x", i, &i); คือ 10 (III) ตารางสัญลักษณ์สามารถนำไปใช้ได้โดยใช้อาร์เรย์ ตารางแฮช ต้นไม้ และรายการที่เชื่อมโยง

เล็กเซอร์ทำงานอย่างไร?

NS เล็กเซอร์ เพียงแค่เปลี่ยนสตริงที่ไม่มีความหมายให้เป็นรายการแบบเรียบๆ เช่น "number literal", "string literal", "identifier" หรือ "operator" และสามารถ ทำ สิ่งต่างๆ เช่น การจดจำตัวระบุที่สงวนไว้ ("คำหลัก") และการละเว้นช่องว่าง อย่างเป็นทางการ a เล็กเซอร์ รู้จักชุดภาษาปกติบางชุด