content1
- 1. ใบความรู้ที่ 1
เรื่อง เรียนรู้เกี่ยวกับภาษาคอมพิวเตอร์
รายวิชา ง 31101 เทคโนโลยีสารสนเทศและการสื่อสาร ระดับชั้นมัธยมศึกษาปีที่ 3ผู้สอน นางสาวมณฑกานต์ ภักดีศรี ภาคเรียนที่ 1 ปีการศึกษา 2557
ภาษาคอมพิวเตอร์ (Computer Language) หมายถึง ภาษาที่ใช้ในการติดต่อกับคอมพิวเตอร์ โดยถูกนำมา เขียนเป็นชุดคำสั่ง (Program) ให้เครื่องทำงานตามคำสั่งของภาษานั้น ในปัจจุบันภาษาคอมพิวเตอร์ที่ใช้สำหรับเขียนโปรแกรม มีมากมายหลายภาษา ซึ่งการจัดแบ่งภาษาคอมพิวเตอร์ ส่วนมากในปัจจุบันนิยมแบ่งภาษาคอมพิวเตอร์เป็นยุค ดังนี้
1. ภาษาเครื่อง (Machine Language)
2. ภาษาแอสเซมบลี (Assembly Language)
3. ภาษาชั้นสูง (High - level Language)
4. ภาษาชั้นสูงมาก (Very High - level Language)
5. ภาษาธรรมชาติ (Natural Language)
1. ภาษาเครื่อง (Machine Language)
ในยุคแรกๆ การใช้คอมพิวเตอร์ให้ทำงานตามต้องการนั้น ผู้เขียนโปรแกรมจะต้องเขียนคำสั่งด้วยภาษาของเครื่อง คอมพิวเตอร์ซึ่งเรียกว่า ภาษาเครื่อง คำสั่งของภาษาเครื่องนั้นจะประกอบด้วยกลุ่มของตัวเลขในระบบเลขฐานสอง เป็นภาษา เดียวเท่านั้นที่เครื่องคอมพิวเตอร์เข้าใจได้โดยตรง ลักษณะของภาษาเป็นภาษาที่ขึ้นอยู่กับฮาร์ดแวร์ของคอมพิวเตอร์แต่ละระบบ โดยเขียนอยู่ในรูปของรหัสของระบบเลขฐานสอง ประกอบด้วย เลข 0 และเลข 1 ที่นำมาเขียนเรียงติดต่อกัน ประโยคคำสั่งของ ภาษาเครื่องจะประกอบด้วยส่วนที่ระบุให้คอมพิวเตอร์ทำงานอะไร เช่น สั่งให้ทำการบวกเลข สั่งให้ทำการเคลื่อนย้ายข้อมูล เป็นต้น และอีกส่วนเพื่อ บอกแหล่งข้อมูลที่จะนำมาทางานตามที่ระบุในตอนแรก
• โครงสร้างของคำสั่งในภาษาเครื่อง คำสั่งในภาษาเครื่องจะประกอบด้วย 2 ส่วนคือ
o โอเปอเรชันโคด (Operation Code) เป็นคำสั่งที่สั่งให้เครื่องคอมพิวเตอร์ปฏิบัติการ เช่น การบวก (Addition) การลบ (Subtraction) เป็นต้น
o โอเปอแรนด์ (Operands)เป็นตัวที่ระบุตำแหน่งที่เก็บของข้อมูลที่จะเข้าคอมพิวเตอร์เพื่อนำไป ปฏิบัติการตาม คำสั่งในโอเปอเรชันโคด
- 2. 2. ภาษาแอสเซมบลี (Assembly Language)
เป็นภาษาที่มีการใช้สัญลักษณ์ข้อความ (mnemonic codes) แทนกลุ่มของเลขฐานสอง เพื่อให้ง่ายต่อการเขียนและ การจดจำมากกว่าภาษาเครื่อง ตัวอย่างเช่นมีการใช้สัญลักษณ์ต่อไปนี้
A ย่อมาจาก ADD หมายถึงการบวก C ย่อมาจาก COMPLARE หมายถึงการเปรียบเทียบ
S ย่อมาจาก SUBTRACT หมายถึงการลบ MP ย่อมาจาก MULTIPLY หมายถึงการคูณ
ลักษณะของภาษานี้จะเป็นการใช้ตัวอักษรมาเรียงกันเป็นคำ แทนเลขฐานสอง โดยคำที่กำหนดขึ้นจะมีความหมายที่ สามารถเข้าใจและจำได้ง่าย เช่น จะใช้คำสั่ง ADD แทนการบวก คำสั่ง SUB แทนการลบ เป็นต้น ขณะเดียวกัน ส่วนที่ใช้บอก แหล่งข้อมูลก็จะแทนด้วยชุดของตัวอักษรที่เรียกว่าตัวแปร เช่น คำสั่ง ADD A,B จะหมายถึงให้นำข้อมูลที่ตำแหน่ง A และ ตำแหน่ง B มาบวกรวมกันแล้วนำผลลัพธ์ไปเก็บที่ตำแหน่ง A เป็นต้น อย่างไรก็ตามถึงแม้ว่าภาษานี้จะง่ายกว่าการเขียนด้วย ภาษาเครื่อง แต่ก็ยังถือว่าเป็นภาษาชั้นต่ำที่ยังยากต่อการเขียนและการเรียนรู้มากสำหรับผู้ที่ไม่มีความรู้เกี่ยวกับฮาร์ดแวร์
3. ภาษาชั้นสูง (High - level Language)
สามารถเรียกได้อีกอย่างว่าเป็นภาษารุ่นที่ 3 (3rd Generation Languages หรือ 3GLs) เป็นภาษาที่ถูกสร้างขึ้นมา เพื่อให้สามารถเขียนและอ่านโปรแกรมได้ง่ายขึ้น เนื่องจากมีลักษณะเหมือนภาษาอังกฤษทั่วๆ ไป และที่สำคัญคือผู้เขียน โปรแกรมไม่จำเป็นต้องมีความรู้เกี่ยวกับระบบฮาร์ดแวร์แต่อย่างใด ตัวอย่างของภาษาประเภทนี้ได้แก่
• ภาษาฟอร์แทรน (FORTRAN- FORmula TRANslator) เป็นภาษาที่เก่าแก่ของโลกเหมาะกับงานด้านวิทยาศาสตร์ คณิตศาสตร์ ใช้ในงานค้นคว้าวิจัยและวิเคราะห์ปัญหาต่างทางวิทยาศาสตร์
• ภาษาโคบอล (COBOL-Common Business Oriented Language) เป็นภาษาที่เหมาะสำหรับงานด้านธุรกิจ ที่มี ข้อมูลจำนวนมากๆ หรืองานด้านการจัดการฐานข้อมูล แต่ไม่เหมาะสำหรับงานด้านคำนวณ
• ภาษาเบสิก (BASIC- Beginner's All-purpose Symbolic Instruction) เป็นภาที่พัฒนาขึ้นมา โดยที่ผู้ใช้ไม่ จำเป็นต้องมีความรู้เรื่องระบบการทำงานของคอมพิวเตอร์ เหมาะสำหรับการเขียนโปรแกรมคอมพิวเตอร์และผู้เริ่ม ศึกษาภาษาคอมพิวเตอร์
• ภาษาปาสคาล (PASCAL) เป็นภาษาที่ใช้สอนหลักการเขียนโปรแกรมได้ดีที่สุด เหมาะสำหรับการเขียนโปรแกรมต่างๆ เพื่อการเรียนการสอน
• ภาษาซี (C) เป็นภาษาที่ได้รับความนิยมในการเขียนโปรแกรมการทำงานขนาดใหญ่ และใช้ในการเขียน โปรแกรมควบคุมการทำงานของฮาร์ดแวร์ด้วย
- 3. อย่างไรก็ตามโปรแกรมที่ถูกเขียนด้วยภาษาประเภทนี้จะทำงานได้ ก็ต่อเมื่อมีการแปลงให้เป็นภาษาเครื่องเสียก่อน ซึ่ง วิธีการแปลงจากภาษาชั้นสูงให้เป็นภาษาเครื่องนั้น จะทำได้โดยใช้โปรแกรมที่เรียกว่า คอมไพเลอร์ (Compiler) หรือ อินเตอร์พรีเตอร์ (Interpreter) อย่างใดอย่างหนึ่ง โดยภาษาชั้นสูงแต่ภาษาจะมีตัวแปลภาษาเฉพาะเป็นของตัวเอง
o คอมไพเลอร์ (Compiler) จะทำการแปลโปรแกรมทั้งโปรแกรมให้เป็นภาษาเครื่องทีเดียว การแปลนี้จะเป็นการ ตรวจสอบไวยากรณ์ของภาษา ถ้ามีข้อผิดพลาดทางไวยากรณ์ของภาษาเกิดขึ้นก็จะแจ้งให้ทราบ
o อินเตอร์พรีเตอร์ (Interpreter) เป็นตัวแปลภาษาอีกตัวหนึ่งที่จะทำการแปลโปรแกรมภาษาชั้นสูงทีละคำสั่งให้เป็น ภาษาเครื่องและทำการเอ็กซ์วีคิวท์หรือทำงานคำสั่งนั้นทันทีทันใดเลยก่อนที่จะไปทำการแปลต่อในบรรทัดถัดไป ถ้าในระหว่างการแปลเกิดพบข้อผิดพลาดที่บรรทัดใดก็จะฟ้องให้ทำการแก้ไขทีละบรรทัดนั้นทันที
4. ภาษาระดับสูงมาก (Very high - Level Language)
สามารถเรียกได้อีกอย่างว่าภาษาในรุ่นที่ 4 (4GLs: Fourth Generation Languages) ภาษานี้เป็นภาษาที่อยู่ในระดับ ที่สูงกว่าภาษารุ่นที่ 3 มีลักษณะของภาษาในรุ่นที่เป็นธรรมชาติคล้ายๆ กับภาษาพูดของมนุษย์จะช่วยในเรื่องของการสร้าง แบบฟอร์มบนหน้าจอเพื่อจัดการเกี่ยวกับข้อมูล รวมไปถึงการออกรายงานซึ่งจะมีการจัดการที่ง่ายมากไม่ยุ่งยากเหมือนภาษารุ่น ที่ 3 ตัวอย่างของภาษาในรุ่นที่ 4 ได้แก่ Informix-4GL, Focus, Sybase, InGres , SQL, QBE เป็นต้น
5. ภาษาธรรมชาติ
เป็นภาษาในยุคที่ 5 ที่มีรูปแบบเป็นแบบ Nonprocedural เช่นเดียวกับภาษารุ่นที่ 4 การที่เรียกว่า ภาษาธรรมชาติ เพราะจะสามารถสั่งงานคอมพิวเตอร์ได้โดยใช้ภาษามนุษย์โดยตรง ซึ่งโดยทั่วไปคำสั่งที่มนุษย์ป้อนเข้าไปในคอมพิวเตอร์จะอยู่ใน รูปของภาษาพูดมนุษย์ ซึ่งอาจมีรูปแบบที่ไม่แน่นอนตายตัว แต่คอมพิวเตอร์ก็สามารถแปลคำสั่ง เหล่านั้นให้อยู่ในรูปแบบที่ คอมพิวเตอร์เข้าใจได้ ถ้าตั้งคำถามใดไม่กระจ่างก็จะมีการถามกลับเพื่อให้เข้าใจคำถามได้อย่างถูกต้อง ภาษาธรรมชาตินี้ถูกสร้าง ขึ้นมาจากเทคโนโลยีทางด้านระบบผู้เชี่ยวชาญ (Expert System) ซึ่งเป็นงานที่อยู่ในสาขาปัญญาประดิษฐ์(Artificial Intelligence) ในการที่พยายามทำให้คอมพิวเตอร์เปรียบเสมือนกับเป็นผู้เชี่ยวชาญคนหนึ่งที่สามารถคิดและตัดสินใจได้ เช่นเดียวกับมนุษย์ แต่ระบบผู้เชี่ยวชาญไม่สามารถนำมาแทนที่การทำงานของผู้เชี่ยวชาญที่เป็นมนุษย์ได้ เนื่องจากทั้งระบบ ผู้เชี่ยวชาญและมนุษย์จะต้องทำงานร่วมกัน จึงทำให้ระบบผู้เชี่ยวชาญนี้เป็นเพียงคลื่นแห่งอนาคตที่จะใช้เป็นเครื่องมือช่วย ตัดสินใจการทำงานของมนุษย์เท่านั้น