ภาษาคอมพิวเตอร์ หมายถึง ภาษาใดๆ ที่ผู้ใช้งานใช้สื่อสารกับคอมพิวเตอร์ หรือคอมพิวเตอร์ด้วยกัน แล้วคอมพิวเตอร์สามารถทำงานตามคำสั่งนั้นได้ คำนี้มักใช้เรียกแทนภาษาโปรแกรม แต่ความเป็นจริงภาษาโปรแกรมคือส่วนหนึ่งของภาษาคอมพิวเตอร์เท่านั้น และมีภาษาอื่นๆ ที่เป็นภาษาคอมพิวเตอร์เช่นกัน ยกตัวอย่างเช่น HTML เป็นทั้งภาษามาร์กอัปและภาษาคอมพิวเตอร์ด้วย แม้ว่ามันจะไม่ใช่ภาษาโปรแกรม หรือภาษาเครื่องนั้นก็นับเป็นภาษาคอมพิวเตอร์ ซึ่งโดยทางเทคนิคสามารถใช้ในการเขียนโปรแกรมได้ แต่ก็ไม่จัดว่าเป็นภาษาโปรแกรม ภาษาคอมพิวเตอร์สามารถแบ่งออกเป็นสองกลุ่มคือ
   1) ภาษาระดับสูง (high level)
   2) ภาษาระดับต่ำ (low level)
         ภาษาระดับสูงถูกออกแบบมาเพื่อให้ใช้งานง่ายและสะดวกสบายมากกว่าภาษาระดับต่ำ โปรแกรมที่เขียนถูกต้องตามกฎเกณฑ์และไวยากรณ์ของภาษาจะถูกแปล (compile) ไปเป็นภาษาระดับต่ำเพื่อให้คอมพิวเตอร์สามารถนำไปใช้งานหรือปฏิบัติตามคำสั่งได้ต่อไป ซอฟต์แวร์สมัยใหม่ส่วนมากเขียนด้วยภาษาระดับสูง แปลไปเป็นออบเจกต์โค้ด (object code) แล้วเปลี่ยนให้เป็นชุดคำสั่งในภาษาเครื่อง ภาษาคอมพิวเตอร์อาจแบ่งกลุ่มได้เป็นอีกสองประเภทคือ ภาษาที่มนุษย์อ่านออก (human-readable) และภาษาที่มนุษย์อ่านไม่ออก (non human-readable) ภาษาที่มนุษย์อ่านออกถูกออกแบบมาเพื่อให้มนุษย์สามารถเข้าใจและสื่อสารได้โดยตรงกับคอมพิวเตอร์ ส่วนใหญ่เป็นภาษาอังกฤษ) ส่วนภาษาที่มนุษย์อ่านไม่ออกจะมีโค้ดบางส่วนที่ไม่อาจอ่านเข้าใจได้ เด้าหมาสี้หมา [แก้] ตัวอย่างภาษาคอมพิวเตอร์ ภาษาโปรแกรม ภาษาสคริปต์ ภาษามาร์กอัป ภาษาสอบถาม Transformation language
   ภาษาคอมพิวเตอร์ คืออะไร
ภาษาคอมพิวเตอร์ (Computer Language) คือภาษาที่ใช้ หรือเกี่ยวข้องกับคอมพิวเตอร์ ซึ่งมักใช้ร่วมกับภาษาโปรแกรม แต่ภาษาคอมพิวเตอร์นั้นมีความหมายที่กว้างกว่า โดยไม่จำเป็นที่จะต้องเป็นภาษาโปรแกรม ซึ่งเป็นที่รู้กันว่าภาษาอย่าง HTML หรือ SQL ไม่ใช่ภาษาโปรแกรม แต่ถือว่าเป็นภาษาคอมพิวเตอร์ ภาษาโปรแกรม (Program Language) คือ วิธีการมาตรฐานในการสื่อสารสำหรับแสดงคำสั่งไปยังคอมพิวเตอร์ ภาษาโปรแกรมกำหนดไวยากรณ์และการตีความหมายจากโปรแกรมคอมพิวเตอร์ที่เขียนขึ้น ภาษาโปรแกรมทำให้โปรแกรมเมอร์สามารถระบุอย่างชัดเจนถึงข้อมูลที่คอมพิวเตอร์จะทำงาน และวิธีการที่คอมพิวเตอร์จะประมวลผลข้อมูลเหล่านั้น ภาษาคอมพิวเตอร์มีการพัฒนาหรือมีวิวัฒนาการมาโดยลำดับเช่นเดียวกับคอมพิวเตอร์ โดยจะสามารถแบ่งออกเป็นยุคหรือเป็นรุ่นของภาษา (Generation) ซึ่งในยุคหลังๆ จะมีการพัฒนาภาษาให้มีความสะดวกในการอ่านและเขียนง่ายขึ้นกว่าภาษาในยุคแรกๆ เนื่องจากจะมีโครงสร้างภาษาใกล้เคียงกับภาษาอังกฤษ เราสามารถแบ่งภาษาคอมพิวเตอร์ออกได้เป็น 5 ยุคดังนี้
1. ภาษาเครื่อง (Machine Language) เป็นภาษาที่เกิดขึ้นในยุคแรกสุด และเป็นภาษาเดียวที่เครื่องคอมพิวเตอร์จะสามารถเข้าใจคำสั่งได้ ภาษาเครื่องจะแทนข้อมูลหรือคำสั่งในโปรแกรมด้วยกลุ่มของตัวเลข 0 และ 1 หรือที่เรียกว่าเลขฐานสอง ซึ่งจะสัมพันธ์กับการเปิด (On) และการปิด (Off) ของสัญญาณไฟฟ้าภายในเครื่องคอมพิวเตอร์
 2. ภาษาแอสแซมบลี (Assembly Language) เป็นภาษาที่มีการใช้สัญลักษณ์ข้อความ (Mnemonic codes) แทนกลุ่มของเลขฐานสอง เพื่อให้ง่ายต่อการเขียนและการจดจำมากกว่าภาษาเครื่อง แต่เนื่องจากคอมพิวเตอร์รู้จักเฉพาะภาษาเครื่องเท่านั้น ดังนั้นภาษาแอสแซมบลี จึงต้องใช้ตัวแปลภาษาที่เรียกว่า “แอสแซมเบลอร์ (Assembler)” เพื่อแปลคำสั่งภาษาแอสแซมบลีให้เป็นภาษาเครื่อง นอกจากนี้ผู้ที่จะเขียนโปรแกรมภาษาแอสแซมบลี ได้จะต้องมีความรู้ความเข้าใจในเรื่องของฮาร์ดแวร์เป็นอย่างดีเนื่องจากต้องยุ่งเกี่ยวกับการใช้งานหน่วยความจำที่เป็นรีจิสเตอร์ภายในตลอด ดังนั้นจึงเหมาะกับงานที่ต้องการความเร็วในการทำงานสูง ถึงแม้ว่าภาษานี้จะง่ายกว่าการเขียนภาษาเครื่อง แต่ก็ยังถือว่าเป็นภาษาชั้นต่ำที่ยังยากต่อการเขียนและการเรียนรู้มากสำหรับผู้ที่ไม่มีความรู้ด้านฮาร์ดแวร์นัก
3. ภาษาชั้นสูง (High-level Language) เรียกอีกอย่างว่าภาษารุ่นที่ 3 (3rd Generation Languages หรือ 3GLs) เป็นภาษาที่ถูกสร้างขึ้นมาเพื่อให้สามารถเขียนและอ่านโปรแกรมได้ง่ายขึ้น เนื่องจากมีลักษณะเหมือนภาษาอังกฤษทั่วๆ ไป และที่สำคัญคือ ผู้เขียนโปรแกรมไม่จำเป็นต้องมีความรู้เกี่ยวกับระบบฮาร์ดแวร์ ตัวอย่างของภาษาประเภทนี้ ได้แก่ ภาษาฟอร์แทน (FORTRAN) โคบอล (COBOL) เบสิก (BASIC) ปาสคาล (PASCAL) ซี (C) เอดา (ADA) เป็นต้น อย่างไรก็ตามโปรแกรมที่ถูกเขียนด้วยภาษาประเภทนี้จะทำงานได้ก็ต่อเมื่อมีการแปลงให้เป็นภาษาเครื่องเสียก่อน ซึ่งวิธีการแปลงภาษาชั้นสูงให้เป็นภาษาเครื่องนั้น จะทำได้โดยใช้โปรแกรมที่เรียกว่า “คอมไพล์เลอร์ (Compiler)” หรือ “อินเตอร์พรีเตอร์ (Interpreter)” อย่างใดอย่างหนึ่ง โดยภาษาชั้นสูงแต่ละภาษาจะมีตัวแปลภาษาเฉพาะเป็นของตนเองใช้แทนกันไม่ได้
   3.1 คอมไพเลอร์ จะทำการแปลโปรแกรมทั้งโปรแกรมให้เป็นภาษาเครื่องทีเดียวการแปลนี้จะเป็นการตรวจสอบไวยากรณ์ของภาษา ถ้ามีข้อผิดพลาดทางไวยากรณ์ของภาษาเกิดขึ้น (Syntax error) ก็จะแจ้งให้ทราบ เป็นข้อความไดแอคนอสติค (Diagnostic Message) เพื่อให้ผู้เขียนโปรแกรมแก้ไขให้ถูกต้อง แล้วจึงค่อยแปลคำสั่งใหม่ โปรแกรมที่ยังไม่ผ่านการแปลจะเรียกว่า Source Program หรือ Source module แต่ถ้าผ่านการแปลเรียบร้อยแล้วและไม่มีข้อผิดพลาดใดๆ จะเรียกโปรแกรมส่วนนี้ว่า Object Program หรือ Object module ออปเจกต์โปรแกรมนี้จะยังไม่สามารถทำงานได้ จะต้องผ่านลิงค์ (Link) หรือรวมเข้ากับไลบรารี่ (Library) ของระบบก่อนจึงจะเป็นโปรแกรมที่สามารถทำงานได้หรือเป็นภาษาเครื่องที่เรียกว่า เอ็กซ์ซีคิวท์โปรแกรม (Execute Program) หรือ โหลดโมดูล (Load module) ซึ่งโดยทั่วไปแล้วจะเป็นไฟล์ที่มีนามสกุลเป็น .exe หรือ .com และสามารถนำโปรแกรมนี้ไปใช้งานได้ตลอดโดยไม่ต้องแปลใหม่อีก แต่ถ้ามีการแก้ไขโปรแกรมแม้เพียงเล็กน้อยก็จะต้องทำการแปลใหม่ตั้งแต่ต้น
  3.2 อินเตอร์พรีเตอร์ เป็นตัวแปลภาษาที่จะทำการแปลโปรแกรมภาษาชั้นสูงทีละคำสั่งให้เป็นภาษาเครื่องและทำการ Execute หรือทำงานคำสั่งนั้นทันทีทันใดก่อนที่จะทำการแปลในบรรทัดถัดไป ถ้าในระหว่างการแปลเกิดพบข้อผิดพลาดที่บรรทัดใดก็จะฟ้อง ให้ทำการแก้ไขทีละบรรทัดนั้นทันที อินเตอร์พรีเตอร์นี้เมื่อโปรแกรมเสร็จแล้วจะไม่สามารถเก็บเป็น Execute Program ได้ซึ่งต่างกับคอมไพเลอร์ ดังนั้นเมื่อจะเรียกใช้งานหรือรันโปรแกรมก็จะต้องทำการแปลโปรแกรมใหม่ทุกครั้ง ดังนั้นเมื่อจะเรียกใช้งาน Execute Program คอมไพเลอร์ ย่อมจะทำงานได้เร็วกว่าการเรียกใช้งานโปรแกรมที่ต้องผ่านการแปลด้วยอินเตอร์พรีเตอร์แต่ประโยชน์ของภาษาที่ถูกแปลด้วย อินเตอร์พรีเตอร์คือโปรแกรมจะมีโครงสร้างที่ง่ายต่อการพัฒนาตัวอย่างของภาษาโปรแกรมที่มีการใช้อินเตอร์พรีเตอร์ เป็นตัวแปลภาษาได้แก่ ภาษาเบสิก ภาษาเพิร์ล เป็นต้น การเขียนโปรแกรมด้วยภาษาชั้นสูงนอกจากจะให้ความสะดวกแล้ว ผู้เขียนแทบจะไม่ต้องมีความรู้เกี่ยวกับการทำงานของฮาร์ดแวร์ก็สามารถเขียนโปรแกรมสั่งให้เครื่องคอมพิวเตอร์ทำงานได้ ข้อดีอีกอย่างคือสามารถนำโปรแกรมที่เขียนขึ้นไปใช้งานบนเครื่องใดก็ได้ คือมีลักษณะที่ไม่ขึ้นอยู่กับกับเครื่อง (Hardware Independent) เพียงแต่ต้องทำการการแปลโปรแกรมใหม่เท่านั้น แต่ภาษาเครื่องที่ได้จากการแปลภาษาชั้นสูงนี้อาจเยิ่นเย้อ และไม่มีประสิทธิภาพเท่ากับการเขียนด้วยภาษาเครื่องหรือแอสเซมบลีโดยตรง ภาษารุ่นที่ 3 นี้ส่วนใหญ่จะจัดอยู่ในกลุ่มของภาษาที่มีแบบแผน (Procedural language) เนื่องจากลักษณะการเขียนโปรแกรมจะมีโครงสร้างแบบแผนที่เป็นระเบียบ คือ งานทุกอย่างผู้เขียนโปรแกรมต้องเขียนโปรแกรมควบคุมการทำงานเองทั้งหมด และต้องเขียนคำสั่งการทำงานที่เป็นขั้นตอนทุกอย่าง ไม่ว่าจะเป็นการสร้างแบบฟอร์มกรอกข้อมูล การประมวลผล หรือการสร้างรายงาน ซึ่งโปรแกรมที่เขียนจะค่อนข้างซับซ้อนและใช้เวลาในการพัฒนาค่อนข้างยาก
 4. ภาษาชั้นสูงมาก (Very high-level Language) เรียกได้อีกอย่างว่าภาษาในรุ่นที่ 4 (4GLs: Fourth Generation Languages) ภาษานี้เป็นภาษาที่อยู่ในระดับที่สูงกว่าภาษารุ่นที่ 3 มีลักษณะของภาษาในรุ่นที่เป็นธรรมชาติคล้ายๆ กับภาษาพูดของมนุษย์จะช่วย ในเรื่องของการสร้างแบบฟอร์มบนหน้าจอเพื่อจัดการเกี่ยวกับข้อมูล รวมไปถึงการออกรายงาน ซึ่งจะมีการจัดการที่ง่ายมากไม่ยุ่งยากเหมือนภาษารุ่นที่ 3 ตัวอย่างของภาษาในรุ่นที่ 4 ได้แก่ Informix-4GL, Focus, Sybase, InGres เป็นต้น
5. ภาษาธรรมชาติ (Natural Language) เป็นภาษาในยุคที่ 5 ที่มีรูปแบบเป็นแบบ Nonprocedural เช่นเดียวกับภาษารุ่นที่ 4 ภาษา ธรรมชาตินี้ ถูกสร้างขึ้นมาจากเทคโนโลยีทางด้านระบบผู้เชี่ยวชาญ (Expert System) ซึ่งเป็นงานที่อยู่ในสาขาปัญญาประดิษฐ์ (Artificial Intelligence) ในการที่พยายามทำให้คอมพิวเตอร์เปรียบเสมือนกับเป็นผู้เชี่ยวชาญคนหนึ่ง ที่สามารถคิดและตัดสินใจได้เช่นเดียวกับมนุษย์ การที่เรียกว่าภาษาธรรมชาติ เพราะมนุษย์สามารถใช้ภาษาพูดป้อนเข้าไปในคอมพิวเตอร์ได้โดยตรง ซึ่งอาจมีรูปแบบที่ไม่แน่นอนตายตัว แล้วคอมพิวเตอร์ก็จะแปลคำสั่งเหล่านั้น ให้อยู่ในรูปแบบที่คอมพิวเตอร์เข้าใจ ถ้าคำถามใดไม่กระจ่างก็จะมีการถามกลับเพื่อให้เข้าใจคำถาม เมื่อเข้าใจคำถามแล้วคอมพิวเตอร์ก็จะสามารถตอบคำถามของมนุษย์ได้อย่างถูกต้อง พร้อมทั้งมีข้อแนะนำต่างๆ เพื่อช่วยในการตัดสินใจของมนุษย์ได้อีกด้วย

edit @ 10 Jul 2011 16:00:02 by soratorn

Comment

Comment:

Tweet

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:47

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:47

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:47

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:47

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:47

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:47

เป็ด

#472 By PED (122.154.73.242) on 2016-05-30 12:46

วัดๆๆ ลีๆๆๆๆ

#471 By วัดๆๆๆๆ (122.154.73.242) on 2016-05-30 12:38

วัดๆๆ ลีๆๆๆๆ

#471 By วัดๆๆๆๆ (122.154.73.242) on 2016-05-30 12:37

วัดๆๆ ลีๆๆๆๆ

#471 By วัดๆๆๆๆ (122.154.73.242) on 2016-05-30 12:37

เเมวดอสั้น

#470 By เเมว (122.154.73.242) on 2016-05-30 12:37

เเมวดอสั้น

#470 By เเมว (122.154.73.242) on 2016-05-30 12:37

เเมวดอสั้น

#470 By เเมว (122.154.73.242) on 2016-05-30 12:37

เเมวดอสั้น

#470 By เเมว (122.154.73.242) on 2016-05-30 12:37

เเมวดอสั้น

#470 By เเมว (122.154.73.242) on 2016-05-30 12:37

เจ๊ลี

#469 By กุวัด (122.154.73.242) on 2016-05-30 12:36

เจ๊ลี

#470 By กุวัด (122.154.73.242) on 2016-05-30 12:36

เหี้ย

#470 By ควย (122.154.73.242) on 2016-05-30 12:36

เจ๊ลี

#470 By กุวัด (122.154.73.242) on 2016-05-30 12:36

เหัี้ยเเมว

cool

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#469 By กูเบส (122.154.73.242) on 2016-05-30 12:36

เหัี้ยเเมว

cool

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#469 By กูเบส (122.154.73.242) on 2016-05-30 12:36

เหัี้ยเเมว

cool

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#469 By กูเบส (122.154.73.242) on 2016-05-30 12:36

เหัี้ยเเมว

cool

#469 By กูเบส (122.154.73.242) on 2016-05-30 12:36

เหัี้ยเเมว

 

#468 By กูเบส (122.154.73.242) on 2016-05-30 12:36

เหี้ย

#468 By ควย (122.154.73.242) on 2016-05-30 12:36

เงี่ยน

#467 By อิอิ (122.154.73.242) on 2016-05-30 12:35

#ระดับ

#466 By ชัยชิมิ (110.77.234.242) on 2016-05-27 13:54

รับดับภาษากับยุคภาษาคอมพิวเตอร์เนี่ยอย่างเดียวกันหรือครับ ขอ สาระๆๆๆ

#465 By ชัยชิมิ (110.77.234.242) on 2016-05-27 13:51

ติ่งๆๆๆๆๆๆ

what the fuck

#464 By ติ่งติ่ง (110.77.234.242) on 2016-05-27 13:42

ประโยชน์อ้ะๆ.

#463 By สุดหล่อ (125.24.92.134|125.24.92.134) on 2015-09-15 14:28

confused smile open-mounthed smile big smile

#462 By (1.4.197.253|1.4.197.253) on 2015-08-27 09:15

จุ๊กกรู๊

#461 By (202.29.179.129|202.29.179.129) on 2015-08-20 11:27

ชอบจุง

#460 By แอม (202.29.33.202|202.29.33.202) on 2015-08-14 14:11

open-mounthed smile open-mounthed smile big smile

#459 By (49.230.121.216|49.230.121.216) on 2015-07-19 12:38

open-mounthed smile open-mounthed smile big smile

#458 By (49.230.121.216|49.230.121.216) on 2015-07-19 12:38

question surprised smile double wink embarrassed surprised smile surprised smile surprised smile surprised smile surprised smile tongue angry smile big smile open-mounthed smile confused smile sad smile angry smile tongue question embarrassed surprised smile wink double wink cry

#457 By (125.25.38.81|125.25.38.81) on 2015-07-08 13:39

sad smile

#456 By ... (122.154.73.242|10.6.16.55, 122.154.73.242) on 2015-06-30 08:49

sad smile

#455 By (122.154.73.242|10.6.16.145, 122.154.73.242) on 2015-06-29 11:38

ต้า อ.รbig smile open-mounthed smile confused smile sad smile angry smile tongue question embarrassed surprised smile wink double wink cry

#454 By ณัฐวุฒิ (116.58.247.4|116.58.247.4) on 2015-06-29 09:22

question question question question

#453 By (122.154.73.242|10.6.16.137, 122.154.73.242) on 2015-06-26 14:32

ซาไก

#452 By (122.154.73.242|10.6.16.137, 122.154.73.242) on 2015-06-26 14:32

  DJ SO DA ฯ๋ษณํฏ

#451 By (122.154.73.242|10.6.16.137, 122.154.73.242) on 2015-06-26 14:31

confused smile confused smile confused smile confused smile confused smile

#450 By (202.29.179.50|202.29.179.50) on 2015-06-22 11:53

angry smile surprised smile surprised smile surprised smile surprised smile big smile big smile

#449 By (202.29.179.148|202.29.179.148) on 2015-06-15 09:30

ควยยย

#448 By olo (118.173.254.143|10.10.0.127, 118.173.254.143) on 2015-06-08 13:20

big smile big smile big smile big smile big smile big smile big smile big smile

#447 By 22222222222222 (1.20.193.212|10.10.0.145, 1.20.193.212) on 2015-06-03 10:55

พเะพ้เพั้ะีั่ั่า่เ่ double wink เด้ืเ่เ่เัเwink surprised smile embarrassedำเะีเ้เภะพ

#446 By (203.114.105.242|203.114.105.242) on 2015-06-02 15:44

sad smile sad smile sad smile sad smile cry double wink wink surprised smile embarrassed question tongue big smile sad smile double wink cry

#445 By (203.114.105.242|203.114.105.242) on 2015-06-02 15:43

surprised smile surprised smile surprised smile surprised smile surprised smile surprised smile surprised smile

#444 By (61.19.43.178|61.19.43.178) on 2015-06-02 12:09

ดีมากคับdouble wink cry

#443 By ั้ี่รสัีนกยัว (125.25.35.64|10.10.0.165, 125.25.35.64) on 2015-05-27 10:46