วันศุกร์ที่ 26 มิถุนายน พ.ศ. 2558

ภาษาคอมพิวเตอร์ (Computer Languages)

          สวัสดีและยินดีต้อนรับทุกๆท่านที่เข้ามาอ่านและเยี่ยมชมบล๊อกของเรา ไม่มีอะไรมาก วันนี้ก็จะนำเรื่องน่าสนใจ 1 เรื่องมานำเสนอ นั่นก็คือ...

ภาษาคอมพิวเตอร์ (Computer Languages)

สำหรับใครที่ยังไม่รู้จักภาษาคอมพิวเตอร์ ก็มาทำความรู้จักกับมันพร้อมๆกันเลยนะคะ

     ภาษาคอมพิวเตอร์ (Computer Languages)  คือภาษาที่ใช้ในการติดต่อกับคอมพิวเตอร์โดยถูกนำมาเขียนเป็นชุดคำสั่ง (Program) ให้เครื่องทำงานตามคำสั่งของภาษานั้น ในปัจจุบันภาษาคอมพิวเตอร์ที่ใช้สำหรับเขียนโปรแกรมมีมากมายหลายภาษา ซึ่งแต่ละภาษาจะมีกฎเกณฑ์และวิธีการเขียนโปรแกรมแตกต่างกัน

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




ประเภทของภาษาคอมพิวเตอร์ แบ่งได้ดังนี้
1. ภาษาในยุคที่ 1 (First Generation Language : 1GL) 
คือ ภาษาเครื่อง (Machine Language) เป็นภาษาแรกเริ่มที่คอมพิวเตอร์รู้จักและเข้าใจ และสามารถสั่งการด้วยสัญญาณไฟฟ้า ซึ่งประกอบด้วยเลขฐาน 2 คือ 0 และ 1
2. ภาษาในยุคที่ 2 (Second Generation Language : 2GL) 
คือภาษา ที่พัฒนา ขึ้นมาโดยใช้สัญลักษณ์ก็คือ ตัวภาษาอังกฤษเพื่อให้โปรแกรมเมอร์เข้าใจง่ายยิ่งขึ้น ซึ่งอาจจะเป็นตัวอักษร 1 หรือเป็นกลุ่มอักษร ภาษาที่เกิดขึ้นในยุคนี้คือภาษา Assembly ที่ใช้อักษร A แทนการ Add เป็นต้นโดยคำสั่งที่ถูกเขียนขึ้นมาจะถูกแปลภาษาให้เป็นภาษาเครื่อง
ที่ชื่อว่า Assembler ที่คอมพิวเตอร์สามารถเข้าใจได้
3. ภาษาในยุคที่ 3 (Third Generation Language : 3GL) คือ ภาษาระดับสูง เนื่องจากมีการวิวัฒนาการจากภาษาอังกฤษที่นอกจากจะเขียนเป็นคำสั่งได้แล้ว ยังเขียนเป็นประโยค และใกล้เคียงกับ ภาษามนุษย์มากขึ้น และภาษาในยุคนี้ก็จะเป็นแบบ Procedural Language  เนื่องจากต้องมีการระบุรายละเอียดของคำสั่งและการทำงานต่าง ๆ ต้องเป็นไปตามลำดับขั้นตอนเป็นบรรทัด ๆ ไป และต้องมีตัวแปลภาษาเพื่อแปลคำสั่งจาก Source Code ให้เป็น Object Code ที่เครื่องสามารถเข้าใจได้ ตัวอย่างภาษาในยุคนี้ เช่น BASIC, PASCAL, FORTRAN, COBOL, C เป็นต้น
4. ภาษาในยุคที่ 4 (Fourth Generation Language : 4GL)คือ ภาษาในยุคนี้ เป็นภาษาระดับสูงเช่นเดียวกันและมีความโดดเด่นคือการใช้คำสั่งจะมีความคล้ายคลึงกับประโยคภาษาอังกฤษมากขึ้นและ สามารถนำมาใช้เขียนคำสั่งเพื่อเชื่อมต่อกับฐานข้อมูล ความสามารถด้านกราฟฟิก การติดต่อกับผู้ใช้ (GUI) และความสามารถในการสร้างโค้ด ตัวอย่างภาษาในยุคนี้ได้แก่ SQL (Structured Query Language),C#, Java, ซอฟต์แวร์ในตระกูล Visual ต่างๆ เช่น Visual Basic เป็นต้น
5. ภาษาในยุคที่ 5 (Fifth Generation Language : 5GL) เรียกได้ว่าเป็น ภาษา ธรรมชาติ (Natural Language) เนื่องจากมีความใกล้เคียงกับภาษามนุษย์มากที่สุด ภาษาในยุคนี้สามารถรองรับเทคโนโลยีปัญญาประดิษฐ์ (Artificial Intelligence : AI) เช่น การทำให้เครื่องคอมพิวเตอร์สามารถที่จะเข้าใจคำสั่งจากเสียงพูดและโต้ตอบได้



ภาษาคอมพิวเตอร์ที่ใช้ในการพัฒนาโปรแกรม
ภาษา BASIC    เป็นภาษาที่ใช้ง่าย และติดตั้งอยู่บนเครื่องไมโครคอมพิวเตอร์ส่วนมาก ใช้สำหรับผู้เริ่มต้นศึกษาการเขียนโปรแกรมและผู้ที่เขียนโปรแกรมเป็นงานอดิเรก นิยมใช้ในการเขียนโปรแกรมสั้น ๆ ภาษา BASIC รุ่นแรกใช้ interpreter เป็นตัวแปลภาษา ทำให้เขียนโปรแกรม ทดสอบ และแก้ไขโปรแกรมได้ง่าย
ภาษา Pascal    เป็นภาษาระดับสูงที่เอื้ออำนวยให้ผู้เขียนโปรแกรมเขียนโปรแกรมได้อย่างมีโครงสร้าง และเขียนโปรแกรมได้ง่ายกว่าภาษาอื่น นิยมใช้บนเครื่องไมโครคอมพิวเตอร์ เป็นภาษาสำหรับการเรียนการสอน และการเขียนโปรแกรมประยุกต์ต่าง ๆ
ภาษา C และ C++  ภาษา C ถูกพัฒนาขึ้นโดย ในปีค.ศ. 1972 ที่ห้องปฏิบัติการเบลล์ของบริษัท AT&T เป็นภาษาที่ใช้เขียนระบบปฏิบัติการ UNIX ซึ่งเป็นระบบปฏิบัติการที่ได้รับความนิยมคู่กับภาษาซี และมีการใช้งานอยู่ในเครื่องทุกระดับ ภาษา เป็นภาษาระดับสูงที่ได้รับความนิยมในหมู่นักเขียนโปรแกรมเป็นอย่างมาก เนื่องจากภาษา จะเป็นภาษาที่รวมเอกข้อดีของภาษาระดับสูงในเรื่องของความยืดหยุ่นและไวยากรณ์ที่ง่ายต่อการเข้าใจ
JAVA    ภาษาใหม่ที่มาแรงที่สุดในปัจจุบัน คงจะไม่มีภาษาไหนที่เทียบได้รับภาษาจาวาซึ่งได้รับการพัฒนาขึ้นโดยบริษัทซันไมโครซิสเตมส์ ในปี 1991 โดยมีเป้าหมายที่จะสร้างผลิตภัณฑ์อิเล็คทรอนิกส์สำหรับผู้บริโภคที่ง่ายต่อการใช้ง่าย มีค่าใช้จ่ายต่ำ ไม่มีข้อผิดพลาด และสามารถใช้กับเครื่องใด ๆ ก็ได้ ซึ่งสิ่งเหล่านี้ก็ได้กลายเป็นข้อดีของจาวาที่เหนื่อกว่าภาษาอื่น ๆ โดยเฉพาะอย่างยิ่ง
การที่โปรแกรมซึ่งเขียนขึ้นด้วยจาวาสามารถนำไปใช้กับเครื่องต่าง ๆ โดยไม่ต้องทำการคอมไพล์โปรแกรมใหม่ ทำให้ไม่จำกัดอยู่กับเครื่องหรือโอเอสตัวใดตัวหนึ่ง แม้ว่าการใช้งานจาวาในช่วงแรกจะจำกัดอยู่กับ World Wide Web (WWW) และ Internet แต่ในปัจจุบันได้มีการนำจาวาไปประยุกต์ใช้กับงานด้านซอฟต์แวร์ต่าง ๆ อย่างมากมาย
  
ในวันนี้เราจะมาทำความรู้จักกับภาษาซีกันนะคะ
      ภาษาซีพัฒนาขึ้นมาในปี ค.ศ. 1970 โดย เดนนิส ริชชี ( Dennis Ritchie ) แห่ง Bell Telephone Laboratories, Inc. (ปัจจุบันคือ AT&T Bell Laboratories ) ซึ่งภาษาซีนั้นมีต้นกำเนิดมาจากภาษา 2 ภาษาคือ ภาษา BCPL คิดค้นโดย มาร์ติน ริชาร์ด (Martin Richard) และภาษา B คิดค้นโดย เคน ทอมป์สัน (Ken Thompson) ซึ่งภาษาทั้งสองต่างก็เป็นภาษาที่พัฒนาขึ้นมาใน Bell Laboratories เช่นกัน เมื่อมีการศึกษาภาษาบีอย่างละเอียดได้พบข้อบกพร่องต่างๆ ของภาษาบี จึงได้มีการพัฒนารูปแบบภาษาบีขึ้นใหม่ให้มีหลักการทำงานที่ดีกว่าเดิม และใช้ชื่อใหม่ว่า ภาษาซี (C language)

         ภาษาซีนั้นถูกใช้งานอยู่เพียงใน Bell Laboratories จนกระทั่งปี ค.ศ. 1978 ไบรอัน เคอร์นิแฮม ( Brian Kernigham ) และริชชี ( Ritchie ) ได้จัดพิมพ์หนังสือชื่อว่า “C Programming Language” ทำให้เป็นที่รู้จักกันในชื่อของ “K&R C” หลังจากที่ตีพิมพ์ข้อกำหนดของ K&R นักคอมพิวเตอร์มืออาชีพรู้สึกประทับใจกับคุณสมบัติที่สนใจของภาษาซี และเริ่มส่งเสริมการใช้งานภาษาซีมากขึ้นในกลางปี ค.ศ. 1980 ภาษาซีก็กลายเป็นภาษาที่ได้รับความนิยมโดยทั่วไปมีการพัฒนาตัวแปลโปรแกรมพัฒนาโปรแกรมเชิงพาณิชย์เป็นจำนวนมาก ยิ่งไปกว่านั้นโปรแกรมเชิงพาณิชย์ที่เคยพัฒนาขึ้นมาโดยใช้ภาษาอื่น ก็ถูกเขียนขึ้นใหม่โดยใช้ภาษาซี เนื่องจากความต้องการใช้ ความได้เปรียบทางด้านประสิทธิภาพและความสามารถในการเคลื่อนย้ายได้ของภาษาซี ตัวแปลโปรแกรมภาษาซีที่ได้รับการพัฒนาขึ้นมาในเชิงพาณิชย์นั้น จะมีความแตกต่างกับข้อกำหนดของ Kernigham และ Ritchie อยู่บ้าง จากจุดนี้เองทำให้เกิดความไม่เข้ากันระหว่างตัวแปลโปรแกรมภาษาซีซึ่งก็ทำให้สูญเสียคุณสมบัติการเคลื่อนย้ายได้ซึ่งเป็นคุณสมบัติที่สำคัญของภาษา
โครงสร้างภาษาซี

         การเขียนโปรแกรมภาษาซีจะต้องเขียนด้วยอักษรภาษาอังกฤษตัวพิพม์เล็กเสมอ และเมื่อจบประโยคคำสั่งแต่ละคำสั่ง จะใช้เครื่องหมายเซมิโคลอน ( ; ) ในการคั่นคำสั่งแต่ละคำสั่ง มีโครงสร้าง

ส่วนประกอบของโปรแกรมภาษาซีอาจแบ่งออกได้ดังต่อไปนี้

         1.ส่วนหัวโปรแกรม (Head File ) หรือคอมไพเลอร์ไดเรกทีฟ ( Compiler Directive) เป็นส่วนของโปรแกรมที่ใช้สำหรับเป็นตัวบอกคอมไพเลอร์ว่าให้รวมไฟล์ต่างๆ ที่กำหนดไว้ในส่วนนี้กับตัวโปรแกรมที่เขียนขึ้น โดยต้องเขียนตามรูปแบบที่กำหนดไว้ดังนี้

#include <library>

         เช่น

#include <stdio.h>

#include <conio.h>

เป็นต้น

       ซึ่งถ้าผู้เขียนโปรแกรมอยากรู้ว่าไลบรารี่ที่เรียกให้ใช้งานมีฟังก์ชั่นหรือโพซีเยอร์ใดๆ ให้ใช้งานใดบ้าง เพียงแค่นำเคอร์เซอร์ไปกระพริบให้ตรงกับชื่อของไลบรารี่นั่นแล้ว กด ctrl+f1 ก็จะสามารถดู Help ทั้งหมดไลบรารี่นั้นๆ ได้

        2.ฟังก์ชั่นหลัก ( main Function ) หรือโปรแกรมหลัก ( Main Program ) เป็นส่วนที่ผู้เขียนต้องเขียนขึ้นเองโดยนำเอาคำสั่งหรือฟังก์ชันมาตรฐานต่างๆ มาเรียบเรียงกันขึ้นเป็นโปรแกรมเพื่อสั่งให้คอมพิวเตอร์ประมวลผล โดยมรโครงสร้างดังนี้

Main()

{


}

Main เป็นฟังก์ชันหลักของโปรแกรม

() ภายในวงเล็บจะเป็นการกำหนดค่าพารามิเตอร์ที่ต้องส่งผ่านไปทำงานยังฟังก์ชันอื่นๆ ถ้าไม่มีการใส่ค่าแสดงว่าไม่ต้องการมีค่าพารามิเตอร์

{ - } ซึ่งภายในเครื่องหมายปีกกาประกอบด้วยคำสั่งต่างๆ ดังนี้

•  ส่วนของการประกาศตัวแปร (Declaration)

•  ส่วนนำข้อมูล (Input)]

•  ส่วนกำหนดค่า / หรือคำนวณ (Assignment or Computation)

•  ส่วนแสดงผลลัพธ์ (Output)

        การหมายเหตุ หรือ Comment เพื่อใช้หมายเหตุหรืออธิบายรายละเอียดของโปรแกรมสามารถเขียนได้ดังนี้

/*ข้อความ*/ คำอธิบายโปรแกรม ใช้ในการอธิบายความหมายของคำสั่งหรือสิ่งที่ต้องการเขียนไว้กันลืมจะไม่มีผลใดๆ กับโปรแกรม แต่การเขียนจะต้องเริ่มต้นด้วยเครื่องหมาย /* และจบด้วยด้วยเครื่องหมาย */

        3. ฟังก์ชันย่อย (Sub Function) หรือโปรแกรมย่อย (Sub Program) เป็นส่วนที่ผู้เขียนต้องเขียนขึ้นเอง โดยเอาคำสั่งหรือฟังก์ชันมาตรฐานต่างๆ มาเรียบเรียงกันเพื่อให้โปรแกรมหลักหรือฟังก์ชันอื่นๆ สามารถเรียกเพื่อประมวลผลโดยสามารถส่งผ่านค่าพารามอเตอร์ (Pass by Parameter) หรือไม่ผ่านค่าพารามิเตอร์ (Non-Parameter) โดยมีโครงสร้างดังนี้

ชื่อฟังก์ชัน()

{


}
คุณสมบัติของภาษาซี

         - เป็นภาษาที่มีลักษณะเป็นโครสร้างจึงเขียนโปรแกรมง่าย โปรแกรมที่เขียนขึ้นจะทำงานได้อย่างมีประสิทธิภาพสูง สั่งงานคอมพิวเตอร์ได้รวดเร็วกว่าภาษาระดับสูงอื่นๆ

         - สั่งงานอุปกรณ์ในระดับคอมพิวเตอร์ได้เกือบทุกส่วนของฮาร์ดแวร์ซึ่งภาษาระดับสูงภาษาอื่นทำงานดังกล่าวได้น้อยกว่า

         - คอมไพเลอร์ภาษาซีทุกโปรแกรมในท้องตลาดจะทำงานอ้างอิง มาตรฐาน (ANSI = Ameri-can National Standard's Institute) เกือบทั้งหมด จึงทำให้โปรแกรมที่เขียนขึ้นด้วยภาษาซีสามารถนำไปใช้กับคอมพิวเตอร์ได้ทุกรุ่นที่มาตรฐาน ANSI รับรอง

         -โปรแกรมที่เขียนขึ้นด้วยภาษาซีสามารถนำไปใช้กับเครื่องคอมพิวเตอร์ที่ใช้ซีพียูต่างต่างเบอร์กันได้หรือกล่าวได้ว่าโปรแกรมมีความยืดหยุด (Provability) สูง

         - สามารถนำภาษาซีไปใช้ในการเขียนโปรแกรมประยุกต์ได้หลายระดับ เช่น เขียนโปรแกรมจัดระบบงาน (OS) คอมไพเลอร์ของภาษาอื่น โปรแกรมสื่อสารข้อมูล โปรแกรมจัดฐานข้อมูลโปรแกรมปัญญาประดิษฐ์ (AI = Artificial Intelligent) รวมทั้งโปรแกรมคำนวณงานทางด้านวิทยาศาสตร์และวิศวกรรมศาสตร์ เป็นต้น

         - มีโปรแกรมช่วย (Tool Box) ที่ช่วยในการเขียนโปรแกรมมาก และราคาไม่แพงหาซื้อได้ง่าย เช่น Turbo C, Borland C เป็นต้น

         - สามารถประกาศข้อมูลได้หลายชนิดและหลายรูปแบบ ทำให้สะดวกรวดเร็วต่อการพัฒนาโปรแกรมตามวัตถุประสงค์ของผู้ใช้

         - ประยุกต์ใช้ในงานสื่อสารข้อมูลและงานควบคุมที่ต้องการความแม่นยำในเรื่องเวลา (Real Time Application) ได้กล่าวว่าภาษาระดับสูงอื่นๆ หลายๆ ภาษา

         - สามารถเขียนโปรแกรมเชิงวัตถุ (OOP = Object Oriented Programming) ได้ หากใช้ภาษาซีรุ่น Turbo C++ ขึ้นไป ทำให้สามารถพัฒนาโปรแกรมประยุกต์เพื่อใช้งานได้กว้างขวางมากยิ่งขึ้นกว่าเดิม

ขอขอบคุณข้อมูลจาก
ขอขอบคุณรูปภาพจาก

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

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