ใบงานที่5 ภาษาคอมพิวเตอร์



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

ภาษาคอมพิวเตอร์สามารถแบ่งออกเป็นสองกลุ่มคือ ภาษาระดับสูง (high level) และภาษาระดับต่ำ (low level) ภาษาระดับสูงถูกออกแบบมาเพื่อให้ใช้งานง่ายและสะดวกสบายมากกว่าภาษาระดับต่ำ โปรแกรมที่เขียนถูกต้องตามกฎเกณฑ์และไวยากรณ์ของภาษาจะถูกแปล (compile) ไปเป็นภาษาระดับต่ำเพื่อให้คอมพิวเตอร์สามารถนำไปใช้งานหรือปฏิบัติตามคำสั่งได้ต่อไป ซอฟต์แวร์สมัยใหม่ส่วนมากเขียนด้วยภาษาระดับสูง แปลไปเป็นออบเจกต์โค้ด (object code) แล้วเปลี่ยนให้เป็นชุดคำสั่งในภาษาเครื่อง

ภาษาคอมพิวเตอร์อาจแบ่งกลุ่มได้เป็นอีกสองประเภทคือ ภาษาที่มนุษย์อ่านออก (human-readable) และภาษาที่มนุษย์อ่านไม่ออก (non human-readable) ภาษาที่มนุษย์อ่านออกถูกออกแบบมาเพื่อให้มนุษย์สามารถเข้าใจและสื่อสารได้โดยตรงกับคอมพิวเตอร์ ส่วนใหญ่เป็นภาษาอังกฤษ) ส่วนภาษาที่มนุษย์อ่านไม่ออกจะมีโค้ดบางส่วนที่ไม่อาจอ่านเข้าใจได้

1. ภาษาระดับต่ำ (Low Level Language)

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

   ⬖ภาษาเครื่อง (Machine Language)




รหัสเครื่อง หรือ ภาษาเครื่อง
คือกลุ่มของคำสั่งเครื่องที่กระทำการโดยตรงโดยหน่วยประมวลผลกลาง (CPU) ของคอมพิวเตอร์ คำสั่งเครื่องแต่ละคำสั่งจะปฏิบัติงานเฉพาะกิจงานเดียวเท่านั้น เช่นการบรรจุ (load) การกระโดด (jump) หรือการดำเนินการผ่านหน่วยคำนวณและตรรกะ (ALU) บนหน่วยของข้อมูลในหน่วยความจำหรือเรจิสเตอร์ ทุก ๆ โปรแกรมที่กระทำการโดยหน่วยประมวลผลกลางสร้างขึ้นจากอนุกรมของคำสั่งเครื่องเช่นว่านั้น

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

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

⬖ภาษาแอสเซมบลี (Assembly Language)



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

การใช้ภาษาแอสเซมบลีจำเป็นต้องผ่านการแปลภาษาด้วยคอมไพเลอร์เฉพาะเรียกว่า แอสเซมเบลอร์ (assembler) ให้อยู่ในรูปของรหัสคำสั่งก่อน (เช่น .OBJ) โดยปกติ ภาษานี้ค่อนข้างมีความยุ่งยากในการใช้งาน และการเขียนโปรแกรมเป็นจำนวนบรรทัดมากมากกว่า เมื่อเปรียบเทียบกับการใช้ภาษาระดับสูง เช่น ภาษา C หรือภาษา BASIC แต่จะทำให้ได้ผลลัพธ์การทำงานของโปรแกรมเร็วกว่า และขนาดของตัวโปรแกรมมีขนาดเนื้อที่น้อยกว่าโปรแกรมที่สร้างจากภาษาอื่นมาก จึงนิยมใช้ภาษานี้เมื่อต้องการประหยัดเวลาทำงานของเครื่องคอมพิวเตอร์ และเพิ่มประสิทธิภาพของโปรแกรม

เนื่องจากตัวคำสั่งภายในภาษาอ้างอิงเฉพาะกับรุ่นของหน่วยประมวลผล ดังนั้นถ้ามีการเปลี่ยนแปลงไปใช้กับหน่วยประมวลผลอื่นหรือระบบอื่น (เช่น หน่วยประมวลผล x86 ไม่เหมือนกับ z80) จะต้องมีการปรับแก้ตัวคำสั่งภายในซึ่งบางครั้งอาจไม่สามารถปรับปรุงแก้ไขได้อย่างสมบูรณ์

2. ภาษาระดับกลาง (Medium Level Language)
 เป็นภาษาที่ทำความเข้าใจได้ไม่ยากนัก เพราะมีลักษณะ เป็นภาษาแบบโครงสร้าง ทำความเข้าใจได้เหมือนกับภาษาระดับสูงแต่ทำงานได้รวดเร็ว
เหมือนกับภาษาระดับต่ำ สามารถใช้บนเครื่องที่มีความเร็วต่างกันโดยไม่ต้องดัดแปลง ภาษาระดับกลางจึงเป็นที่นิยมใช้กันแพร่หลาย ตัวอย่างของภาษาระดับกลาง ได้แก่ ภาษาC เป็นต้น

⬖ภาษา C (C language)



ภาษาซี (C) เป็นภาษาโปรแกรมสำหรับวัตถุประสงค์ทั่วไป เริ่มพัฒนาขึ้นระหว่าง พ.ศ. 2512-2516 (ค.ศ. 1969-1973) โดยเดนนิส ริชชี่ (Denis Retchie) ที่เอทีแอนด์ทีเบลล์แล็บส์(AT&T Bell Labs)  ภาษาซีเป็นภาษาที่มีความยืดหยุ่นในการเขียนโปรแกรมและมีเครื่องมืออำนวยความสะดวกสำหรับการเขียนโปรแกรมเชิงโครงสร้างและอนุญาตให้มีขอบข่ายตัวแปร(scope) และการเรียกซ้ำ (recursion) ในขณะที่ระบบชนิดตัวแปรอพลวัตก็ช่วยป้องกันการดำเนินการที่ไม่ตั้งใจหลายอย่าง เหมือนกับภาษาโปรแกรมเชิงคำสั่งส่วนใหญ่ในแบบแผนของภาษาอัลกอล การออกแบบของภาษาซีมีคอนสตรักต์ (construct) ที่โยงกับชุดคำสั่งเครื่องทั่วไปได้อย่างพอเพียง จึงทำให้ยังมีการใช้ในโปรแกรมประยุกต์ซึ่งแต่ก่อนลงรหัสเป็นภาษาแอสเซมบลี คือซอฟต์แวร์ระบบอันโดดเด่นอย่างระบบปฏิบัติการคอมพิวเตอร์ ยูนิกซ์

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

⬖ภาษาJava (Java Language)



ภาษาจาวา (Java programming language) เป็นภาษาโปรแกรมเชิงวัตถุ (อังกฤษ: Object Oriented Programming) พัฒนาโดย เจมส์ กอสลิง และวิศวกรคนอื่นๆ ที่ ซัน ไมโครซิสเต็มส์ ภาษาจาวาถูกพัฒนาขึ้นในปี พ.ศ. 2534 (ค.ศ. 1991) โดยเป็นส่วนหนึ่งของ โครงการกรีน (the Green Project) และสำเร็จออกสู่สาธารณะในปี พ.ศ. 2538 (ค.ศ. 1995) ซึ่งภาษานี้มีจุดประสงค์เพื่อใช้แทนภาษาซีพลัสพลัส (C++) โดยรูปแบบที่เพิ่มเติมขึ้นคล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C) แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak) ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์ กอสลิง แต่ว่ามีปัญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใช้ชื่อ "จาวา" ซึ่งเป็นชื่อกาแฟแทน

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

 3.ภาษาระดับสูง (High Level Language)
เป็นภาษาที่ทำความเข้าใจได้ง่าย มีลักษณะของ
การใช้คำสั่งเป็นภาษาอังกฤษซึ่งใกล้เคียงกับภาษามนุษย์มากการสั่งให้คอมพิวเตอร์ทำงานจะต้องมีการแปลความหมายของคำสั่งโดยใช้ตัวแปลภาษาทีละชุดคำสั่งที่เรียกว่า Interpreterหรือแปลครั้งเดียวทั้งโปรแกรมที่เรียกว่า Compiler

⬖ภาษาRuby (Ruby Programming Language )
ภาษารูบี (Ruby) เป็นภาษาโปรแกรมเชิงวัตถุ ที่ได้รับอิทธิพลของโครงสร้างภาษามาจาก ภาษาเพิร์ลกับภาษาเอดา มีความสามารถในเชิงวัตถุแบบเดียวกับภาษาสมอลทอล์ค และมีความสามารถหลายอย่างจากภาษาไพทอน, ภาษาลิสป์, ภาษา Dylan และภาษา CLU ตัวแปลภาษารูบีตัวหลักเป็นซอฟต์แวร์เสรี และเป็นตัวแปลแบบอินเตอร์พรีเตอร์

⬖ภาษาPerl (Perl Language)

ภาษา Perl (Practical Extraction and Report Language) ถูกพัฒนาขึ้นโดยนายแลร์รี วอลล์ (Larry Wall) ในปี 1996 เพื่อใช้งานกับระบบปฏิบัติการ Unix ซึ่งในขณะนั้นการพัฒนาแอพพลิเคชันบนระบบ Unix เป็นเรื่องที่ยุ่งยากและต้องมีความรู้ความเข้าใจในภาษาโปรแกรมหลายภาษา เพราะในขณะนั้นภาษาโปรแกรมแต่ละภาษาจะทำงานในเครื่องใดเครื่องหนึ่งโดยเฉพาะ การจะทำงานออกมาสักงานหนึ่งจะต้องใช้โปรแกรมแทบทุกภาษาที่มีในขณะนั้น อย่างเช่น ในส่วนของการทำงานกับไฟลืต้องใช้ภาษา awk หรือ grep และแก้ไขไฟล์ด้วยภาษา ded เป็นต้น


ภาษา Perl ถูกสร้างขึ้นมาเพื่อทำงานทุกส่วนเสร็จสมบูรณ์ในตัวเองไม่ต้องไปเรียกใช้ภาษาอื่นอีก โดยที่ภาษา Perl ได้รวบรวมเอาข้อดีของภาษาต่างๆ ในขณะนั้นเข้ามาไว้ด้วยกัน อย่างเช่นภาษา grep/awk, sh, sed และ C ทำให้การสร้างแอพพลิเคชั่นบนระบบปฏิบัติการ Unix เป็นไปได้อย่างมีประสิทธิภาพมากขึ้น และที่สำคัญภาษา Perl ถูกออกแบบมาเพื่อให้ใช้งานง่าย


ในปัจจุบันภาษา Perl สามารถใช้งานกับระบบปฏิบัติการที่หลากหลายไม่ว่าจะเป็น Unix, Linux, MVS, VMS, OS/2, Amiga และ Windows นอกจากนี้ด้วยความสามารถที่สำคัญของภาษา Perl ที่สามารถทำงานได้หลายด้าน เป็นเหตุให้ตัวภาษา Perl ถูกนำมาใช้เขียนโปรแกรมบนอินเทอร์เน็ตประเภทต่างต่าง เช่น เว็บ E-Commerce


⭗refernces⭗


ความคิดเห็น

บทความที่ได้รับความนิยม