ใบความรู้ ที่ 1.2 เรื่อง โปรแกรมแปลภาษาคอมพิวเตอร์
ตัวแปลภาษาคอมพิวเตอร์ (Translator)
|
การพัฒนาโปรแกรมคอมพิวเตอร์
ผู้เขียนโปรแกรมหรือที่เรียกว่าโปรแกรมเมอร์นั้น
จะเลือกใช้ภาษาให้เหมาะสมกับลักษณะงานและความถนัด ของผู้เขียนโปรแกรม โปรแกรมที่เขียนขึ้นหรือที่เรียกว่าโปรแกรมต้นฉบับ
จึงมีลักษณะโครงสร้างของภาษาที่แตกต่างกันออกไป ในการทำงานของคอมพิวเตอร์นั้น
คอมพิวเตอร์จะไม่สามารถเข้าใจภาษาที่ใก้ลเคียงกับภาษามนุษย์ที่เรียกว่า
ภาษาระดับสูง เนื่องจากคอมพิวเตอร์จะรับข้อมูลที่เป็นสัญญาณไฟฟ้าซึ่งแทนด้วยเลขฐานสอง
(0 หรือ 1) หรือที่เรียกว่า
ภาษาเครื่อง เท่านั้น ดังนั้นในการสั่งให้คอมพิวเตอร์ทำงาน
จึงจำเป็นจะต้องมีตัวกลางที่ทำหน้าที่เสมือนเป็นนักแปลภาษา
โปรแกรมที่นำมาใช้เรียกว่าโปรแกรมแปลภาษาคอมพิวเตอร์
ซึ่งจะทำหน้าที่แปลภาษาระดับสูงที่เป็นโปรแกรมต้นฉบับ ให้อยู่ในรูปของโปรแกรมเรียกใช้งานที่เครื่องคอมพิวเตอร์เข้าใจและสามารถทำงานได้
ตัวแปลภาษาสามารถแบ่งตามลักษณะการทำงานได้เป็น 3 ประเภท
1. คอมไพเลอร์ (Compiler)
เป็นตัวแปลภาษาระดับสูง
เช่น ภาษาปาสคาล ภาษาโคบอลและภาษาฟอร์แทรกให้เป็นภาษาเครื่อง
การทำงานจะใช้หลักการแปลโปรแกรมต้นฉบับ ทั้งโปรแกรมเรียกใช้งาน
ซึ่งจะถูกบันทึกไว้ในลักษณะของแฟ้มข้อมูลหรือไฟล์
เมื่อต้องการเรียกใช้งานโปรแกรมก็สามารถเรียกจากไฟล์เรียกใช้งาน
โดยไม่ต้องทำการแปลหรือคอมไพล์อีก ทำให้การทำงานเป็นไปอย่างรวดเร็ว
ขณะที่คอมไพล์โปรแกรมต้นฉบับที่เขียนขึ้นด้วยภาษาระดับสูง
คอมไพเลอร์จะตรวจสอบโครงสร้างไวยากรณ์ของคำสั่งและข้อมูลที่จะใช้ในการคำนวณ
และเปรียบเทียบต่อจากนั้นคอมไพเลอร์จะสร้างรายการข้อผิดพลาดของโปรแกรม (Program
listing) เพื่อใช้เก็บโปรแกรมต้นฉบับและคำสั่งที่เขียนไม่ถูกต้องตามกฏ
หรือโครงสร้างของภาษานั้น ๆ ไฟล์นั้นมีประโยชน์ในการช่วยโปรแกรมเมอร์ในการแก้ไขโปรแกรม
(debug)
2. อินเตอร์พรีเตอร์ (interpreter)
เป็นตัวแปลระดับสูงเช่นเดียวกับคอมไพเลอร์แต่จะแปลพร้อมกับทำงานตามคำสั่งทีละคำสั่งตลอดไปทั้งโปรแกรม
ทำให้การแก้ไขโปรแกรมกระทำได้ง่าย และรวดเร็ว การแปลโดยใช้อินเตอร์พรีเตอร์จะไม่สร้างโปรแกรมเรียกใช้งาน
ดังนั้นจะต้องทำการแลใหม่ทุกครั้งที่มีการเรียกใช้งาน
ตัวอย่างภาษาที่ใช้ตัวแปลอินเตอร์พรีเตอร์ เช่น ภาษาเบสิก (BASIC)
3. แอสเซมเบลอ (assembler)
เป็นตัวแปลภาษาแอสเซมบลี
(assembly) ซึ่งเป็นภาษาระดับต่ำให้เป็นภาษาเครื่อง
|
|
ไม่มีความคิดเห็น:
แสดงความคิดเห็น