วันพุธที่ 1 เมษายน พ.ศ. 2558

ใบงานที่ 6

หลักการเขียนภาษาคอมพิวเตอร์



    ในการเขียนโปรแกรมคอมพิวเตอร์ไม่ว่าจะเขียนด้วยภาษาระดับสูงหรือภาษาระดับต่ำ เราจะต้องแปลงภาษาเหล่านั้นให้เป็นรหัสภาษาเครื่องที่คอมพิวเตอร์เข้าใจเสียก่อน คอมพิวเตอร์จึงจะทำงานได้ การเขียนคำสั่งนี้ไม่ว่าจะเขียนด้วยภาษาอะไรจะเรียกว่า โปรแกรมต้นฉบับ
การเขียนโปรแกรมด้วยภาษาแอสเซมบลีจะต้องใช้ตัวแปลภาษาให้เป็นภาษาเครื่อง ตัวแปลนี้เรียกว่า แอสเซมเบอร์
ภาษาระดับสูงเป็นภาษาที่สร้างขึ้นเพื่อช่วยอำนวยความสะดวกในการเขียนโปรแกรม กล่าวคือ ลักษณะของคำสั่งจะประกอบด้วยคำต่างๆ ในภาษาอังกฤษ ซึ่งผู้อ่านสามารถเข้าใจความหมายได้ทันที ผู้เขียนโปรแกรมจึงเขียนโปรแกรมด้วยภาษาระดับสูงได้ง่ายกว่าเขียนด้วยภาษาแอสแซมบลี หรือภาษาเครื่อง ภาษาระดับสูงมีมากมายหลายภาษา อาทิเช่น ภาษาฟอร์แทรน (FORTRAN) ภาษาโคบอล ภาษาปาสคาล (Pascal) ภาษาเบสิก (BASIC) ภาษาวิชวลเบสิก (Visual Basic) ภาษาซี (C) และภาษาจาวา (Java) เป็นต้น โปรแกรมที่เขียนด้วยภาษาระดับสูงแต่ละภาษาจะต้องมีโปรแกรมที่ทำหน้าที่แปลภาษาระดับสูงให้เป็นภาษาเครื่อง เช่น โปรแกรมแปลภาษาฟอร์แทรนเป็นภาษาเครื่อง โปรแกรมแปลภาษาปาสคาลเป็นภาษาเครื่อง คำสั่งหนึ่งคำสั่งในภาษาระดับสูงจะถูกแปลเป็นภาษาเครื่องหลายคำสั่ง


โปรแกรมแปลภาษา(Translator)


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

2.1 ตัวแปลภาษาระดับต่ำ ภาษาระดับต่ำแม้ว่าจะเป็นภาษาที่ใกล้เคียงกับภาษาเครื่องแต่ลักษณะของภาษานี้ใช้ตัวอักษรแทนชุดคำสั่งของเลขฐานสอง (0,1) ในภาษาเครื่อง จึงจำเป็นชุดคำสั่งที่ใช้แปลภาษาระดับต่ำให้เป็นภาษาเครื่อง ซึ่งชุดคำสั่งที่ใช้แปลภาษาระดับนี้ ได้แก่ โปรแกรมภาษาแอสเซมเบลอร์ ( Assembler ) ที่ใช้ตัวแปลที่มีชื่อว่า แอสเซทบลี (Assembly)

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

2.2.1 คอมไพเลอร์ (Compiler) เป็นโปรแกรมที่ใช้แปลภาษาระดับสูงให้เป็นภาษาเครื่องลักษณะการแปลภาษาระดับสูงของคอมไพเลอร์นั้น เป็นลักษณะการตรวจสอบคำสั่งที่ได้รับเข้ามาว่าการเขียนคำสั่งนั้นถูกต้องตามหลักไวยากรณ์ของภาษาหรือไม่ถ้ายังไม่ถูกต้องก็จะแจ้งข้อผิดพลาดให้ผู้ใช้ทราบเพื่อจะทำการแก้ไขให้ถูกต้อง ถ้าหากตรวจสอบแล้วถูกต้องจะแปลจาก Source Program ให้เป็น Object program เก็บไว้ในหน่วยความจำ และถ้ามีการแก้ไขเปลี่ยนแปลงชุดคำสั่งใหม่ จะต้องมีการแปลชุดคำสั่งใหม่ทั้งโปรแกรม เพื่อเก็บ Object program อีกครั้งนี้ การใช้คอมไพเลอร์ถ้าเป็นชุดคำสั่งที่ต้องการทำการประมวลผลต่อเนื่องกันหลายๆ ครั้งจะทำให้การประมวลผลเร็ว เพราะไม่ต้องแปลใหม่อีกสามารถเรียกใช้ Object program ได้เลย ภาษาที่ใช้ตัวแปลประเภทนี้ เช่น Fortran,Cobol เป็นต้น

2.2.2 อินเตอร์พรีตเตอร์ (Interpreter) เป็นโปรแกรมที่ใช้แปลภาษาระดับสูงให้เป็นภาษาเครื่อง โดยการแปลชุดคำสั่งที่นำเข้าสู่เครื่องคอมพิวเตอร์ทีละคำสั่ง และทำการประมวลผลทันทีโดยไม่ต้องทำให้เป็น Object program ถ้าหากพบข้อความผิดพลาดโปรแกรมจะหยุดทำงานทันที เมื่อทำการแก้ไขชุดคำสั่งก็ต้องแปลค่าคำสั่งที่แก้ไขเพิ่มเติมอีกครั้งหนึ่ง จึงจะทำงานการประมวลผลโดยไม่ต้องแปลใหม่หมดทั้งโปรแกรม ครั้งจะทำการประมวลผลช้าลง เพราะต้องแปลใหม่ทุกครั้งที่มีการประมวลผล ภาษาที่ใช้ตัวแปลประเภทนี้ เช่น pascal, Basic เป็นต้น


ตัวอย่างโปรแกรมที่เขียนโดยภาษาคอมพิวเตอร์

Java script



















ไม่มีความคิดเห็น:

แสดงความคิดเห็น