บ้าน พัฒนาการ คอมไพเลอร์คืออะไร? - คำจำกัดความจาก techopedia

คอมไพเลอร์คืออะไร? - คำจำกัดความจาก techopedia

สารบัญ:

Anonim

คำจำกัดความ - คอมไพเลอร์หมายถึงอะไร?

คอมไพเลอร์เป็นโปรแกรมซอฟต์แวร์ที่แปลงซอร์สโค้ดระดับสูงที่นักพัฒนาเขียนในภาษาโปรแกรมระดับสูงให้เป็นออบเจ็กต์ระดับต่ำ (รหัสไบนารี่) ในภาษาเครื่องซึ่งโปรเซสเซอร์สามารถเข้าใจได้ กระบวนการแปลงการโปรแกรมระดับสูงเป็นภาษาเครื่องเรียกว่าการรวบรวม

โปรเซสเซอร์ดำเนินการรหัสวัตถุซึ่งระบุว่าเมื่อใดจำเป็นต้องใช้สัญญาณสูงและต่ำไบนารีในหน่วยคำนวณเลขคณิตของโปรเซสเซอร์

Techopedia อธิบายคอมไพเลอร์

คอมไพเลอร์ที่แปลงภาษาของเครื่องเป็นภาษาธรรมชาติระดับสูงเรียกว่าตัวถอดรหัส คอมไพเลอร์ที่สร้างรหัสออบเจ็กต์ที่หมายถึงการทำงานบนระบบเรียกว่า cross-compilers ในที่สุดคอมไพเลอร์ที่แปลงภาษาโปรแกรมหนึ่งไปเป็นอีกภาษาหนึ่งเรียกว่าตัวแปลภาษา

คอมไพเลอร์รันสี่ขั้นตอนสำคัญ:

  • การสแกน : สแกนเนอร์จะอ่านอักขระครั้งละหนึ่งตัวจากซอร์สโค้ดและติดตามว่ามีตัวอักษรใดอยู่ในบรรทัดใด
  • การวิเคราะห์คำศัพท์ : คอมไพเลอร์แปลงลำดับของอักขระที่ปรากฏในซอร์สโค้ดเป็นชุดของสตริงอักขระ (รู้จักกันในชื่อโทเค็น) ซึ่งเกี่ยวข้องกับกฎเฉพาะโดยโปรแกรมที่เรียกว่า lexical analyzer ตารางสัญลักษณ์ถูกใช้โดยตัววิเคราะห์คำเพื่อจัดเก็บคำต่าง ๆ ในซอร์สโค้ดที่สอดคล้องกับโทเค็นที่สร้างขึ้น
  • การวิเคราะห์วากยสัมพันธ์ : ในขั้นตอนนี้การวิเคราะห์ไวยากรณ์จะดำเนินการซึ่งเกี่ยวข้องกับการประมวลผลล่วงหน้าเพื่อตรวจสอบว่าโทเค็นที่สร้างขึ้นในระหว่างการวิเคราะห์คำศัพท์อยู่ในลำดับที่เหมาะสมตามการใช้งานของพวกเขา ลำดับที่ถูกต้องของชุดคำหลักซึ่งสามารถให้ผลลัพธ์ที่ต้องการเรียกว่าไวยากรณ์ คอมไพเลอร์ต้องตรวจสอบซอร์สโค้ดเพื่อให้แน่ใจว่ามีความถูกต้องทางไวยากรณ์
  • การวิเคราะห์ความหมาย : ขั้นตอนนี้ประกอบด้วยหลายขั้นตอนกลาง ขั้นแรกให้ตรวจสอบโครงสร้างของโทเค็นพร้อมกับเรียงลำดับตามไวยากรณ์ในภาษาที่กำหนด ความหมายของโครงสร้างโทเค็นถูกตีความโดยตัวแยกวิเคราะห์และตัววิเคราะห์เพื่อสร้างรหัสกลางที่เรียกว่ารหัสวัตถุในที่สุด รหัสวัตถุรวมถึงคำแนะนำที่แสดงถึงการดำเนินการประมวลผลสำหรับโทเค็นที่สอดคล้องกันเมื่อพบในโปรแกรม ในที่สุดโค้ดทั้งหมดจะถูกวิเคราะห์และตีความเพื่อตรวจสอบว่ามีการปรับให้เหมาะสมที่สุดหรือไม่ เมื่อสามารถทำการปรับให้เหมาะสมโทเค็นที่เหมาะสมจะถูกแทรกในรหัสวัตถุเพื่อสร้างรหัสสุดท้ายซึ่งจะถูกบันทึกไว้ในไฟล์
คอมไพเลอร์คืออะไร? - คำจำกัดความจาก techopedia