ความรู้เบื้องต้นเกี่ยวกับภาษา C
คอมพิวเตอร์เป็นเครื่องมืออิเล็กทรอนิกส์ชนิดหนึ่ง ใช้ในการประมวลผลข้อมูล สามารถทำงานตามคำสั่งได้รวดเร็ว แต่ไม่สามารถคิด ริเริ่มทำงานเองได้ ต้องอาศัยผู้ใช้งาน ควบคุม เปิด ปิด หรือสั่งให้คอมพิวเตอร์ทำงานตามต้องการ ด้วยชุดคำสั่งที่เขียนขึ้น ซึ่งเรียกว่าโปรแกรมหรือซอฟต์แวร์
คอมพิวเตอร์รับคำสั่งการทำงานเป็นสัญญาณไฟฟ้า เรียกว่า ภาษาเครื่อง (Machine Language) ซึ่งมนุษย์ทำความเข้าใจยาก เนื่องจากเป็นรหัสตัวเลขแบบต่าง ๆ ไม่สะดวกต่อการสั่งให้คอมพิวเตอร์ทำงาน จึงได้มีการพัฒนาภาษาที่ใช้กับคอมพิวเตอร์ขึ้นมาหลายภาษา แบ่งได้เป็น 2 ระดับ คือ ภาษาระดับต่ำ (Low-level Language) และภาษาระดับสูง (High-level Language) ภาษาคอมพิวเตอร์ ได้ถูกพัฒนามาหลายยุคหลายสมัยสามารถจำแนกยุคของภาษาคอมพิวเตอร์ได้ 5 ยุค ดังนี้
ภาษาคอมพิวเตอร์ยุคที่ 1 (First Generation Language) ในยุคนี้จะสั่งงานคอมพิวเตอร์ด้วยภาษาเครื่อง เป็นภาษาที่สื่อสารกับคอมพิวเตอร์ได้โดยตรง นั่นคือ 0 กับ 1
ภาษาคอมพิวเตอร์ยุคที่ 2 (Second Generation Language) พัฒนามาจากยุคที่ 1 เมื่อการเขียนคำสั่งภาษาเครื่องทำได้ยาก จึงได้พัฒนาโดยนำสัญลักษณ์มาใช้แทนรูปแบบตัวเลขในภาษาเครื่อง ภาษาในยุดนี้ได้แก่ ภาษาแอสเซมบลี
ภาษาคอมพิวเตอร์ยุคที่ 3 (Third Generation Language) ในยุคนี้ได้พัฒนารูปแบบภาษาให้มีความใกล้เคียงกับภาษาของมนุษย์ยิ่งขึ้น เรียกว่า ภาษาระดับสูงภาษาในยุคที่ 3 เช่น ภาษาซี ภาษาเบสิก ภาษาปาสกาล และภาษาฟอร์แทรน เป็นต้น ภาษาในยุคนี้จะมีตัวแปลภาษา 2 ประเภท คือ คอมไพเลอร์ (Compiler) และอินเทอร์พรีเตอร์ (Interpreter)
ภาษาคอมพิวเตอร์ยุคที่ 4 (Fourth Generation Language) ภาษาในยุคที่ 3 มีความยุ่งยาก ซับซ้อน ในการออกแบบโปรแกรม ภาษาคอมพิวเตอร์ในยุคที่ 4 นี้ ไม่ได้ถูกออกแบบมาเพื่อทำงานด้วยตนเอง แต่ได้ถูกออกแบบมาเพื่อนำไปใช้ทำงานร่วมกับภาษาอื่น เช่น นำภาษา SQL มาใช้ร่วมกับ ภาษา PHP เป็นต้น
ภาษาคอมพิวเตอร์ยุคที่ 5 (Fifth Generation Language) ภาษาคอมพิวเตอร์ในยุคที่ 5 นี้ มีความใกล้เคียงกับภาษามนุษย์มากยิ่งขึ้น เรียกว่า ภาษาธรรมชาติ (Natural Language) ผู้ใช้สามารถสั่งงานด้วยเสียง เป็นการนำระบบฐานความรู้มาช่วย ในยุคนี้สามารถพัฒนาหุ่นยนต์ให้มีความสามารถในการทำงานเหมือนมนุษย์ และสามารถสื่อสารกับมนุษย์ได้ การใช้เสียงเป็นรหัสผ่านในการสั่งให้โปรแกรมที่กำหนดไว้เริ่มทำงาน เป็นต้น
ตัวแปลภาษาคอมพิวเตอร์
การเขียนโปรแกรมด้วยภาษาใดก็ตาม จะต้องมีตัวแปลภาษาเพื่อแปลโปรแกรมที่เขียนขึ้น ให้เป็นภาษาเครื่อง จึงจะใช้งานได้ เพราะคอมพิวเตอร์รับรู้เฉพาะภาษาเครื่องได้เพียงภาษาเดียวเท่านั้น ตัวแปลภาษามี 2 ประเภท คือ คอมไพเลอร์ (Compiler) และอินเทอร์พรีเตอร์ (Interpreter)
1. คอมไพเลอร์ (Compiler) จะทำการแปลชุดคำสั่งทุกคำสั่งที่เขียนขึ้นจากโปรแกรมภาษาใด ๆ ทั้งหมด ให้เป็นแฟ้มชุดคำสั่งภาษาเครื่องก่อน แล้วจึงสามารถนำแฟ้มภาษาเครื่องนั้น ไปสั่งให้คอมพิวเตอร์ทำงาน โปรแกรมที่เขียนด้วยภาษาใด ๆ เรียกว่า โปรแกรมต้นฉบับ (Source Program) เมื่อแปลโดยตัวแปลภาษาแล้ว จะได้ผลเป็นโปรแกรมภาษาเครื่อง เรียกว่า โปรแกรมจุดหมาย (Object Program) ดังภาพ
ตัวแปลโปรแกรมภาษาต่าง ๆ มีจะมีชื่อเรียกตามภาษานั้น เช่น
Assembler ตัวแปลโปรแกรมภาษาแอสเซมบลี
C Compiler ตัวแปลโปรแกรมภาษาซี
COBOL Compiler ตัวแปลโปรแกรมภาษาโคบอล
2. อินเทอร์พรีเตอร์ (Interpreter) จะแปลโปรแกรมต้นทางทีละคำสั่ง ให้เป็นคำสั่งภาษาเครื่อง แล้วทำงานตามคำสั่งนั้นเลย เมื่อทำงานตามคำสั่งนั้นเสร็จแล้ว ก็จะทำการแปลคำสั่งต่อไปอีกเรื่อย ๆ จนจบโปรแกรม เหมาะสำหรับโปรแกรมที่ไม่ยาวมาก และต้องการผลลัพธฺ์ทันที ตัวแปลภาษาจะมีชื่อเรียกตามภาษานั้น ๆ เช่น ตัวแปลคำสั่งภาษาเบสิก (BASIC Interpreter)
ที่มาของภาพ :https://www.doesystem.com/62281f15b60d91d748d154fbe05362a7/Java-Compiler-%E0%B9%81%E0%B8%A5%E0%B8%B0-Java-Virtual-Machine.htm
ที่มา : http://wbi.ohonline.in.th/cp/unit1_1.html
ความรู้เบื้องต้นเกี่ยวกับภาษา
ชนิดข้อมูลและตัวดำเนินการ
การเขียนโปรแกรม
Workshop การเขียนโปรแกรม