ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
ได้พิมพ์โดยSavit Kulawanit ได้เปลี่ยน 10 ปีที่แล้ว
1
เอาไว้ใช้ในการอธิบายกระบวนการแปลภาษาให้เข้าใจได้ง่ายขึ้น
Tombstone Diagrams เอาไว้ใช้ในการอธิบายกระบวนการแปลภาษาให้เข้าใจได้ง่ายขึ้น Program P implemented in L L P S --> T L Translator implemented in L M Machine implemented in hardware M L Language interpreter in L
2
Tombstone diagrams: Combination rules
P S P T S --> T M OK! OK! OK! OK! M L P L P S --> T M WRONG! WRONG!
3
Compilation ตัวอย่าง คอมไพล์โปรแกรมภาษาซีเพื่อให้รันบน CPU ตระกูล X86 ได้ C Tetris Tetris x86 x86 Tetris C --> x86 x86 x86
4
Cross compilation Cross compiler เป็นคอมไพเลอร์ที่ผลิต machine code ของ CPU ที่ไม่ใช่ของเครื่องที่เป็น host C Tetris Tetris PPC PPC Tetris download C --> PPC x86 Host ≠ Target x86
5
Compiling a Compiler ตัวอย่าง: เขียนคอมไพเลอร์เพื่อแปลงจาก Java ให้เป็น X86 machine code โดยใช้ภาษา C++ Java-->x86 C++ x86 C++-->x86 x86 Java-->x86
6
Interpreters Interpreter เป็นโปรแกรมที่ประมวลผลชุดคำสั่ง จำลองการทำงานของการประมวลชุดคำสั่งโดย CPU ตัวอย่างของ interpreter เช่น Java Virtual Machine (JVM) JVM Tetris JVM x86 x86
7
Full Bootstrap เริ่มต้นสร้างคอมไพเลอร์อย่างไร
สมมุติว่าเราต้องการสร้าง Ada compiler สำหรับ CPU M ใช้กระบวนการที่เรียกกันว่า bootstrapping เริ่มสร้าง compiler Ada แบบพื้นฐานที่สุดโดยใช้ machine code M เขียน optimized Ada compiler โดยใช้ Ada ใช้คอมไพเลอร์พื้นฐานที่อยู่ในรูป machine code M คอมไพล์ optimized Ada compiler
8
ได้คอมไพเลอร์ที่คอมไพล์ได้เร็วและผลิด machine code ที่รันได้เร็ว!
Bootstrapping ต้องการเขียน optimized Ada compiler โดยใช้ Ada เริ่มต้นจาก: Ada-->Mslow Mslow Ada-->Mfast Ada Ada-->Mfast Ada M Mslow Step 1 Ada-->Mslow Step 2 Ada-->Mfast Ada M Mfast Mslow ได้คอมไพเลอร์ที่คอมไพล์ได้เร็วและผลิด machine code ที่รันได้เร็ว!
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.