หน่วยที่ 4 ซอฟต์แวร์(Software)
ความหมายของซอฟต์แวร์
การที่เครื่องคอมพิวเตอร์
หรือ
ฮาร์ดแวร์สามารถทำงานได้อย่างมีประสิทธิภาพนั้นเกิดจากคำสั่งหรือชุดคำสั่งหรือทีเรียกว่าโปรแกรมที่เขียนโดยนักเขียนโปรแกรม
คำสั่งที่มีลักษณะเป็นซอฟต์แวร์สามารถสั่งให้คอมพิวเตอร์อ่านข้อมูล แปลความหมาย
แล้วทำการประมวลผล และส่งผลลัพธ์ที่ได้ออกมาเป็นสารสนเทศตามที่ต้องการ
ซอฟต์แวร์
เป็นส่วนที่มนุษย์สัมผัสไม่ได้โดยตรงเพราะซอฟต์แวร์มีคุณลักษณะเป็นนามธรรมโดยทั่วไปเรียกว่าโปรแกรมหรือชุดคำสั่งที่ถูกเขียนขึ้นเพื่อสั่งการให้เครื่องคอมพิวเตอร์ทำงาน
ซอฟต์แวร์จึงทำหน้าที่เป็นตัวเชื่อมระหว่างผู้ใช้คอมพิวเตอร์และเครื่องคอมพิวเตอร์
ซอฟต์แวร์
คือ
การลำดับขั้นตอนการทำงานของคำสั่งที่จะทำหน้าที่สั่งคอมพิวเตอร์ว่า
ให้ทำอะไรเป็นชุดของโปรแกรมหลายๆ
โปรแกรมนำมารวมกันให้สามารถทำงานได้อย่างครบถ้วนสมบูรณ์ตามที่ต้องการ
เรามองไม่เห็นหรือสัมผัสไม่ได้แต่เราสามารถสร้าง จัดเก็บ
และนำมาใช้งานและเผยแพร่ได้ด้วย สื่อหลายชนิด เช่น แผ่นบันทึก แผ่นซีดี แฟล็ชไดร์ซ์ ฮาร์ดดิสก์ เป็นต้น
ชุดคำสั่งทีสั่งงานคอมพิวเตอร์อย่าเป็นลำดับขั้น
ชุดคำสั่งเหล่านี้ได้จัดเตรียมไว้ในหน่วยความจำ
คอมพิวเตอร์จะอ่านชุดคำสั่งแล้วทำงานตามโปรแกรมที่นักเขียนโปรแกรมได้เขียนไว้
ซอฟต์แวร์จึงเป็นสิ่งที่มนุษย์จัดทำขึ้นเพื่อให้คอมพิวเตอร์ทำงานตามลักษณะของซอฟต์แวร์ที่วางไว้แล้ว
เท่านั้น
ประเภทของซอฟต์แวร์
ในบรรดาซอฟต์แวร์หรือโปรแกรมคอมพิวเตอร์ทีมีผู้พัฒนาขึ้นเพื่อใช้งานกับคอมพิวเตอร์มีมากมาย
ซอฟต์แวร์เหล่านี้อาจได้รับการพัฒนาโดยผู้ใช้งานเอง หรือ ผู้พัฒนาระบบ
หรือผู้ผลิตจำหน่าย หากแบ่งแยกชนิดของซอฟต์แวร์สภาพการทำงาน
โดยทั่วไปแล้วซอฟต์แวร์แบ่งได้ 2 ชนิด
คือ
ซอฟต์แวร์ระบบ
ซอฟต์แวร์ประยุกต์
ซอฟต์แวร์ระบบ
ซอฟต์แวร์ระบบเป็นโปรแกรมที่บริษัทผู้ผลิตสร้างขึ้นมาเพื่อใช้จัดกับระบบ
หน้าที่การทำงานของซอฟต์แวร์ระบบ คือ ดำเนินงานพื้นฐานต่างๆ ของระบบคอมพิวเตอร์
เช่น รับข้อมูลจากแผงแป้นอักขระแล้วแปลความหมายให้คอมพิวเตอร์เข้าใจ นำข้อมูลไปแสดงผลบนจอภาพหรือนำออกไปยังเครื่องพิมพ์
จัดข้อมูลในระบบแฟ้มข้อมูลบนหน่วยความจำสำรอง
เมื่อเราปิดคอมพิวเตอร์
ทันทีที่มีการจ่ายกระแสไฟฟ้าให้กับคอมพิวเตอร์ คอมพิวเตอร์จะทำงานตามโปรแกรมทันที
โปรแกรมแรกที่สั่งคอมพิวเตอร์ทำงานนี้เป็นซอฟต์แวร์ระบบ
ซอฟต์แวร์ระบบอาจเก็บไว้ในรอม หรือในแผ่นจานแม่เหล็ก
หากไม่มีซอฟต์แวร์ระบบคอมพิวเตอร์จะทำงานไม่ได้ นอกจากนี้ยังเป็นซอฟต์แวร์ระบบยังใช้เป็นเครื่องมือในการพัฒนาซอฟต์แวร์อื่นๆ
และยังรวมไปถึงซอฟต์แวร์ที่ใช้ในการแปลภาษาต่างๆ
ระบบปฏิบัติการ
เป็นซอฟต์แวร์ที่ควบคุมกิจกรรมทั้งหมดของคอมพิวเตอร์
เพื่อให้มั่นใจว่าอุปกรณ์ที่เป็นฮาร์ดแวร์ทุกส่วนของระบบคอมพิวเตอร์ทำงานร่วมกันได้อย่างราบรื่นและมีประสิทธิภาพ
ซอฟต์แวร์ระบบปฏิบัติการใช้ในการบริหารจัดการข้อมูลและทำแฟ้มข้อมูลภายในเครื่องคอมพิวเตอร์
เช่นการสำเนาข้อมูล (Coppy) การเรียงลำดับ (Sort) การลบ (Delete)
ประเภทของระบบปฏิบัติการ
ระบบปฏิบัติการที่ใช้กันโดยทั่วไปในปัจจุบัน อาจนำเอาไปใช้ได้กับคอมพิวเตอร์หลากหลายชนิด ตั้งแต่เครื่องคอมพิวเตอร์ระดับใหญ่จนถึงอุปกรณ์คอมพิวเตอร์พกพาขนาดเล็ก ซึ่งอาจแบ่งออกได้เป็น 3 ประเภท คือ
ระบบปฏิบัติการแบบเดี่ยว ( stand – alone OS )
ระบบปฏิบัติการแบบเครือข่าย ( network OS )
ระบบปฏิบัติการแบบฝัง ( embedded OS )
ระบบปฏิบัติการแบบเดี่ยว ( stand – alone OS )
เป็นระบบปฏิบัติการที่มุ่งเน้นและให้บริการสำหรับผู้ใช้เพียงคนเดียว (เจ้าของเครื่องนั้น ๆ) นิยมใช้สำหรับเครื่องคอมพิวเตอร์ที่ประมวลผลและทำงานแบบทั่วไป เช่น เครื่องคอมพิวเตอร์ตามบ้านหรือสำนักงาน ซึ่งจะถูกติดตั้งระบบปฏิบัติการนี้รองรับการทำงานบางอย่าง เช่น พิมพ์รายงาน ดูหนัง ฟังเพลง หรือเชื่อมต่อเข้ากับอินเทอร์เน็ต เป็นต้น ปัจจุบันพัฒนาให้มีคุณสมบัติที่เป็นลูกข่ายเพื่อขอรับบริการจากเครื่องแม่ข่ายได้ด้วย
ระบบปฏิบัติการแบบเครือข่าย ( Network OS )
เป็นระบบปฏิบัติการที่มุ่งเน้นและให้บริการสำหรับผู้ใช้หลาย ๆ คน ( multi - user ) นิยมใช้สำหรับงานให้บริการและประมวลผลข้อมูลสำหรับเครือข่ายโดยเฉพาะ มักพบเห็นได้กับการนำไปใช้ในองค์กรธุรกิจทั่วไป เครื่องคอมพิวเตอร์ที่ติดตั้งระบบปฏิบัติการเหล่านี้เรียกว่า เครื่อง server ซึ่งเป็นเสมือนเครื่องแม่ข่ายที่ให้บริการข้อมูลต่าง ๆ ที่จำเป็นสำหรับผู้ใช้นั่นเอง
ระบบปฏิบัติการแบบฝัง ( embedded OS )
เป็นระบบปฏิบัติการที่พบเห็นได้ในอุปกรณ์คอมพิวเตอร์พกพาขนาดเล็ก เช่น พีดีเอหรือ Smart phone บางรุ่น สามารถช่วยในการทำงานของอุปกรณ์แบบไม่ประจำที่เหล่านี้ได้เป็นอย่างดี เกิดขึ้นมาหลังสุดพร้อม ๆ กับที่อุปกรณ์คอมพิวเตอร์พกพาเหล่านี้ได้รับความนิยมมากขึ้น บางระบบมีคุณสมบัติที่ใกล้เคียงกับระบบปฏิบัติการแบบเดี่ยวด้วย เช่น รองรับกับการทำงานทั่วไป ดูหนัง ฟังเพลงหรือเชื่อมต่ออินเทอร์เน็ตได้ รามักจะพบเห็นการใช้งานของระบบปฏิบัติการแบบฝังนี้กับอุปกรณ์คอมพิวเตอร์ขนาดพกพา เช่น Palm, pocket PC, Smart phone รวมถึงอุปกรณ์ขนาดเล็กอื่น ๆ
ระบบปฏิบัติการที่นิยมใช้มากที่สุด
1. ระบบปฏิบัติการดอส (Dos) เป็นปฏิบัติการที่ารับคำสั่งจากผู้ใช้งานเป็นข้อความ
2. ระบบปฏิบัติการแบบวินโดวส์ พัฒนาโดยบริษัทไมโครซอฟ เป็นระบบปฏิบัติการทำงานด้วยคำสั่งกราฟิกชนจอภาพโดยใช้เมาส์ในการควบคุมคำสั่งให้โปรแกรมทำงานผ่านภาพ กราฟิกที่เป็นสัญลักษณ์ต่างๆ ที่เรียกว่า สัญรูป หรือ ไอคอน
3. ระบบปฏิบัติการยูนิกส์ เป็็นระบบปฏิบัติการที่ได้่พัฒนามาเป็นเวลานานมากกว่าระบบดอส ระบบยูนิกส์มีประสิทธิภาพในการทำงานสูง จึงนิยมใช้กับเครื่องที่ต้องการประสิทธิภาพการทำงานสูง เช่น เครื่องที่เป็นแม่ข่ายของระบบอินเทอร์เน็ต
ซอฟต์แวร์สำเร็จ
ในบรรดาซอฟต์แวร์ประยุกต์ที่มีใช้กันทั่วไป ซอฟต์แวร์สำเร็จ ( Package ) เป็นซอฟต์แวร์ที่มีความนิยมใช้กันสูงมาก ซอฟต์แวร์สำเร็จเป็นซอฟต์แวร์ที่บริษัทพัฒนาขึ้นแล้วนำออกมาจำหน่าย เพื่อให้ผู้ใช้งานซื้อไปใช้ได้โดยตรง ไม่ต้องเสียเวลาในการพัฒนาซอฟต์แวร์อีก ซอฟต์แวร์สำเร็จที่มีจำหน่ายในท้องตลาดทั่วไป และเป็นที่นิยมของผู้ใช้มี 5 กลุ่มใหญ่ ได้แก่ ซอฟต์แวร์ประมวลคำ ( word processing software ) ซอฟต์แวร์ตารางทำงาน ( spread sheet software ) ซอฟต์แวร์จัดการฐานข้อมูล ( data base management software ) ซอฟต์แวร์นำเสนอ ( presentation software ) และซอฟต์แวร์สื่อสารข้อมูล ( data communication software )
ซอฟต์แวร์สำเร็จที่มีจำหน่ายในท้องตลาดทั่วไป และเป็นที่นิยมของผู้ใช้มี 5 กลุ่มใหญ่ ได้แก่
1). ซอฟต์แวร์ประมวลคำ 2). ซอฟต์แวร์ตารางทำงาน 3). ซอฟต์แวร์จัดการฐานข้อมูล 4). ซอฟต์แวร์นำเสนอ 5). ซอฟต์แวร์สื่อสารข้อมูล
ซอฟต์แวร์ประมวลคำ
เป็นซอฟต์แวร์ประยุกต์ใช้สำหรับการพิมพ์เอกสารสามารถแก้ไข เพิ่ม แทรก ลบ และจัดรูปแบบเอกสารได้อย่างดี เอกสารที่พิมพ์ไว้จัดเป็นแฟ้มข้อมูล เรียกมาพิมพ์หรือแก้ไขใหม่ได้ การพิมพ์ออกทางเครื่องพิมพ์ก็มีรูปแบบตัวอักษรให้เลือกหลายรูปแบบ เอกสารจึงดูเรียบร้อยสวยงาม ปัจจุบันมีการเพิ่มขีดความสามารถของซอฟต์แวร์ประมวลคำอีกมากมาย ซอฟต์แวร์ประมวลคำที่นิยมอยู่ในปัจจุบัน เช่น วินส์เวิร์ด จุฬาจารึก โลตัสเอมิโปร
ซอฟต์แวร์ตารางทำงาน
ซอฟต์แวร์ตารางทำงาน เป็นซอฟต์แวร์ที่ช่วยในการคิดคำนวณ การทำงานของซอฟต์แวร์ตารางทำงาน ใช้หลักการเสมือนมีโต๊ะทำงานที่มีกระดาษขนาดใหญ่วางไว้ มีเครื่องมือคล้ายปากกา ยางลบ และเครื่องคำนวณเตรียมไว้ให้เสร็จ บนกระดาษมีช่องให้ใส่ตัวเลข ข้อความ หรือสูตร สามารถสั่งให้คำนวณตามสูตรหรือเงื่อนไขที่กำหนดผู้ใช้ซอฟต์แวร์ตารางทำงานสามารถประยุกต์ใช้งานประมวลผลตัวเลขอื่น ๆ ได้กว้างขวางซอฟต์แวร์ตารางทำงานที่นิยมใช้ เช่น เอกเซล โลตัส
ซอฟต์แวร์จัดการฐานข้อมูล
การใช้งานคอมพิวเตอร์อย่างหนึ่งคือการใช้เก็บข้อมูล และจัดการกับข้อมูลที่จัดเก็บในคอมพิวเตอร์ จึงจำเป็นต้องมีซอฟต์แวร์จัดการข้อมูล การรวบรวมข้อมูลหลาย ๆ เรื่องที่เกี่ยวข้องกันไว้ในคอมพิวเตอร์ เราก็เรียกว่าฐานข้อมูล ซอฟต์แวร์จัดการฐานข้อมูลจึงหมายถึง ซอฟต์แวร์ที่ช่วยในการเก็บ การเรียกค้นมาใช้งาน การทำรายงาน การสรุปผลจากข้อมูล ซอฟต์แวร์จัดการฐานข้อมูลทีนิยมใช้ เช่น เอกเซส ดีเบส พาราด็อก ฟ๊อกเบส
ซอฟต์แวร์นำเสนอ
เป็นซอฟต์แวร์ที่ใช้สำหรับนำเสนอข้อมูล การแสดงผลต้องสามารถดึงดูดควาสนใจ ซอฟต์แวร์เหล่านี้จึงเป็นซอฟต์แวร์ที่นอกจากสามารถแสดงข้อความในลักษณะที่จะสื่อความหมายได้ง่ายแล้วจะต้องสร้างแผนภูมิ กราฟ และรูปภาพได้ ตัวอย่างของซอฟต์แวร์นำเสนอ เช่น เพาเวอร์พอยต์ โลตัสฟรีแลนซ์ ฮาร์วาร์ดกราฟิก
ซอฟต์แวร์สื่อสารข้อมูล
ซอฟต์แวร์สื่อสารข้อมูลนี้หมายถึง ซอฟต์แวร์ที่จะช่วยให้ไมโครคอมพิวเตอร์ติดต่อสื่อสารกับเครื่องคอมพิวเตอร์อื่นในที่ห่างไกลโดยผ่านทางสายโทรศัพท์ ซอฟต์แวร์สื่อสารใช้เชื่อมโยงต่อเข้ากับระบบเครือข่ายคอมพิวเตอร์ เช่น อินเทอร์เน็ต ทำให้สามารถใช้บริการอื่น ๆ เพิ่มเติมได้ สามารถใช้รับส่งไปรษณีย์อิเล็กทรอนิกส์ ใช้โอนย้ายแฟ้มข้อมูล ใช้แลกเปลี่ยนข้อมูล อ่านข่าวสาร นอกจากนี้ยังใช้ในการเชื่อมเข้าหามินิคอมพิวเตอร์หรือเมนเฟรม เพื่อเรียกใช้งานจากเครื่องเหล่านั้นได้ ซอฟต์แวร์สื่อสารข้อมูล ที่นิยมมีมากมายหลายซอฟต์แวร์ เช่น โปรคอม ครอสทอล์คเทลิก
ความจำเป็นของการใช้ซอฟต์แวร์
ซอฟต์แวร์ เป็นชุดคำสั่งหรือโปรแกรมที่ใช้สั่งงานให้คอมพิวเตอร์ทำงานตามต้องการ เป็นการสั่งงานตามลำดับขั้นตอนที่ผู้เขียนโปรแกรมเรียบเรียงไว้ในรูปของเลขฐานสองซึ่งใช้แทนข้อมูลที่เป็นตัวเลข ตัวอักษร รูปภาพ และเสียง
ภาษาหรือโปรแกรมที่ใช้สั่งงานคอมพิวเตอร์จึงเป็นซอฟต์แวร์สำคัญที่ทำให้คอมพิวเตอร์แต่ละเครื่องทำงานแตกต่างกันได้มากมาย เพราะคำสั่งหรือซอฟท์แวร์แต่ละโปรแกรมจะถูกออกแบบสำหรับใช้กับแต่ละงานแตกต่างกัน เช่น โปรแกรมสำหรับจัดทำเอกสาร โปรแกรมสำหรับจัดทำบัญชี โปรแกรมสำหรับจัดทำสื่อการนำเสนอ โปรแกรมที่เกี่ยวข้องกับการตกแต่งภาพนิ่ง โปรแกรมเกี่ยวกับการตัดต่อภาพเคลื่อนไหว ฯลฯ เป็นต้น ซึ่งบางโปรแกรมสามารถประยุกต์ใช้งานดีอีกหลายด้านตามความสามารถของผู้เขียนและผู้ใช้โปรแกรมนั้น ๆ จะเห็นได้ว่าปัจจุบันการที่คอมพิวเตอร์สามารถทำงานได้มากมาย เพราะว่ามีการพัฒนาโปรแกรมหรือซอฟท์แวร์เพื่อสั่งงานคอมพิวเตอร์ตามความต้องการของผู้ใช้งาน ดังที่พบเห็นในชีวิตประจำวัน เช่น ร้านค้าอาจใช้คอมพิวเตอร์ทำบัญชีที่ยุ่งยากซับซ้อน บริษัทขายตั๋วใช้คอมพิวเตอร์ช่วยในระบบการจองตั๋ว คอมพิวเตอร์ช่วยในเรื่องกิจการงานธนาคารที่มีข้อมูลต่าง ๆ มากมาย คอมพิวเตอร์ช่วยงานพิมพ์เอกสารให้สวยงาม คอมพิวเตอร์ช่วยในการตัดต่อบันทึกเสียง เป็นต้น การที่คอมพิวเตอร์ดำเนินการให้ประโยชน์ได้มากมายมหาศาลจะขึ้นอยู่กับซอฟต์แวร์ ซอฟต์แวร์จึงเป็นส่วนสำคัญและจำเป็นของระบบคอมพิวเตอร์ หากขาดซอฟต์แวร์คอมพิวเตอร์ก็ไม่สามารถทำงานได้ และเป็นส่วนประกอบหนึ่งที่ทำให้ระบบสารสนเทศเป็นไปได้ตามที่ต้องการ
ซอฟต์แวร์ และ ภาษาคอมพิวเตอร์

ซอฟต์แวร์ (Software) คือ โปรแกรมคำสั่งที่สั่งให้เครื่องคอมพิวเตอร์ทำงาน โดยโปรแกรมจะถูกเก็บไว้ในหน่วยความจำ หลังจากนั้นเครื่องจะทำงานด้วยตนเองตามโปรแกรมภายใต้การควบคุมของหน่วยควบคุม (Control Unit)
ซอฟต์แวร์แบ่งเป็น 2 ประเภทคือ
1. โปรแกรมระบบ (System Program หรือ System Software)2. โปรแกรมประยุกต์ (Application Program หรือ Application Software)
โปรแกรมระบบ คือ
โปรแกรมที่ทำหน้าที่ควบคุมการทำงานของคอมพิวเตอร์ ฮาร์ดแวร์ให้ทำงานได้อย่างมีประสิทธิภาพ ทำหน้าที่จัดระบบการเก็บข้อมูล การรับส่งข้อมูลเก็บข้อมูลลงในหน่วยความจำ โดยบริษัทผู้ผลิตเครื่องจำให้โปรแกรมระบบมาพร้อมกับเครื่องส่วนสำคัญที่เป็นแกนหลักของโปรแกรมระบบ คือ ระบบปฏิบัติการ (OS : Operating System)
ระบบปฏิบัติการ คือ กลุ่มโปรแกรมซึ่งได้รับการจัดระเบียบให้เป็นส่วนเชื่อมโยงระหว่างเครื่องและผู้ใชเครื่อง โดยจะเอื้ออำนวยการใช้โปรแกรมต่าง ๆ รวมถึงการจัดสรรทรัพยากร (resource) ต่าง ๆ ให้มีประสิทธิภาพ
หน้าที่ของระบบปฏิบัติการ สามารถแบ่งได้เป็น 2 ส่วนใหญ่ ๆ คือ
1. ควบคุมการทำงานของโปรแกรมและอุปกรณ์ต่าง ๆ โดยเฉพาะอุปกรณ์รับข้อมูล และแสดงผลลัพธ์ (Input/Output Device) และ ให้ผู้ใช้สามารถใช้อุปกรณ์ต่าง ๆ ได้อย่างสะดวกสำหรับเครื่องไมโครคอมพิวเตอร์ ระบบปฏิบัติการจะเป็นแบบง่าย ๆ และทำหน้าที่ควบคุมและให้ความสะดวกแก่ผู้ใช้เครื่อง2. จัดสรรทรัพยากรซึ่งใช่ร่วมกัน (Shared Resource) หน้าที่นี้จะเห็นได้ชัดในเครื่องเมนเฟรม (Mainframe) ซึ่งจะมีอุปกรณ์ต่าง ๆ เช่น หน่วยประมวลผลกลาง หน่วยความจำ เป็นต้น มีการใช้ทรัพยากรเหล่านี้ร่วมกัน ในลักษณะของระบบมัลติโปรแกรมมิ่ง (Multiprogramming) ดังนั้นหน้าที่ของระบบปฏิบัติการ จึงต้องครอบคลุมถึงการจัดสรรทรัพยากรเหล่านี้ โดยคำนึงถึงความยุติธรรมต่อผู้ใช้แต่ละคน และประสิทธิผลของเครื่องเป็นหลักสำคัญ
ภาษาคอมพิวเตอร์ (Computer Languages)
ภาษาคอมพิวเตอร์ คือภาษที่ใช้ในการติดต่อกับคอมพิวเตอร์โดยถูกนำมาเขียนเป็นชุดคำสั่ง (Program) ให้เครื่องทำงานตามคำสั่งของภาษานั้น ในปัจจุบันภาษาคอมพิวเตอร์ที่ใช้สำหรับเขียนโปรแกรมมีมากมายหลายภาษา ซึ่งแต่ละภาษาจะมีกฎเกณฑ์และวิธีการเขียนโปรแกรมแต่ต่างกัน ภาษาคอมพิวเตอร์แบ่งออกเป็น 2 ระดับ คือ
1. ภาษาระดับต่ำ (Low Level Language)2. ภาษาระดับสูง (High Level Language)
ภาษาระดับต่ำ (Low Level Language)
1. ภาษาระดับต่ำ (Low Level Language)
เป็นภาษาที่ใช้ในยุคแรก ๆ จะมีความยุ่งยากในการเขียนมากแบ่งออกเป็น 2 ประเภทคือ 1.1 ภาษาเครื่อง (Machine Language)1.2 ภาษาแอสแซมบลี (Assembly Language)
เป็นภาษาหรือคำสั่งที่ใช้ในการสั่งงานหรือติดต่อกับเครื่องโดยตรงลักษณะสำคัญ
ของภาษาเครื่องจะประกอบด้วยรหัสของเลขฐานสองซึ่งเทียบได้กับลักษณะของสัญญาณทางไฟฟ้าเข้ากับหลักการทำงานของเครื่องซึ่งเครื่องสามารถเข้าใจและพร้อมที่จะทำงานตามคำสั่งได้ทันทีภาษาเครื่องจะมีกฏเกณฑ์ทางไวยากรณ์ค่อนข้างจำกัด โปรแกรมมีลักษณะค่อนข้างยุ่งยากซับซ้อน รหัสโครงสร้างของแต่ละคำสั่งของภาษาเครื่องจะประกอบด้วยส่วนสำคัญ 2 ส่วน คือ
ก. รหัสบอกประเภทของคำสั่ง (Operation Code หรือ Op-Code) เป็นส่วนที่บอกคำสั่งให้เครื่องทำการประมวลผล เช่นให้ทำการบวก ลบ คูณ หาร หรือเปรียบเทียบ
ข. รหัสบอกตำแหน่งข้อมูล (Operand) เป็นส่วนที่บอกว่าข้อมูลที่จะนำมาประมวลผลนั้นเก็บอยู่ในตำแหน่ง (Address) ใดของหน่วยความจำ
ลักษณะของโปรแกรมจะประกอบด้วยกลุ่มของรหัสคำสั่ง ซึ่งประกอบด้วยเลข
ฐานสองเรียงต่อกัน ซึ่งผู้เขียนโปรแกรมจะต้องทราบถึงเทคนิคการใช้รหัสคำสั่งและจะต้องจำตำแหน่งของคำสั่งของข้อมูลที่ถูกเก็บไว้ เพราะเนื่องจากเครื่องคอมพิวเตอร์แต่ละบริษัทจะใช้ภาษาเครื่องของตนเอง และผู้เขียนโปรแกรมจะต้องเข้าใจระบบการทำงานของเครื่องเป็นอย่างดี ดังนั้นการเขียนโปรแกรมเป็นภาษาเครื่องจึงมีผู้เขียนอยู่ในวงจำกัด เพราะต้องมีความรู้ทางด้านเครื่องและรหัสของเครื่องด้วยจึงจะเขียนโปรแกรมได้ ภาษาเครื่องของคอมพิวเตอร์แต่ละระบบจะแตกต่างกัน ทำให้เกิดความไม่สะดวกเมื่อมีการเปลี่ยนเครื่องคอมพิวเตอร์ระบบใหม่ก็จะต้องเขียนโปรแกรมใหม่
ข้อดี ของภาษาเครื่อง
1. เมื่อคำสั่งเข้าสู่เครื่องจะสามารถทำงานได้ทันที
2. สามารถสร้างคำสั่งใหม่ ๆ ได้ โดยที่ภาษาอื่นทำไม่ได้
3. ต้องการหน่วยความจำเพียงเล็กน้อย
ข้อเสีย ของภาษาเครื่อง
1. ต้องเขียนโปรแกรมคำสั่งยาวทำให้ผิดพลาดได้ง่าย
2. ผู้เขียนโปรแกรมจะต้องรู้ระบบการทำงานของเครื่องเป็นอย่างดีจึงสามารถเขียนโปรแกรมได้ และถ้าเครื่องที่มีฮาร์ดแวร์ต่างกัน จะใช้โปรแกรมร่วมกันได้
จัดเป็นภาษาสัญลักษณ์ (Symbolic Language) เป็นภาษาที่พัฒนามาจาก
ภาษาเครื่องโดยใช้สัญลักษณ์ข้อความแทนกลุ่มของเลขฐานสอง ทำให้การเขียนโปรแกรมสะดวกขึ้นแต่ผู้เขียนโปรแกรมยังคงต้องจำความหมายสัญลักษณ์ที่ใช้แทนคำสั่งต่าง ๆ การเขียนโปรแกรมภาษาแอสแซมบลี มีลักษณะที่ต้องขึ้นอยู่กับเครื่องเราไม่สามารถนำโปรแกรมภาษาแอสแซมบลีไปใช้กับเครื่องต่างชนิดกันได้ ดังนั้น ผู้เขียนโปรแกรมจะต้องเข้าใจระบบการทำงานของเครื่องเป็นอย่างดี การเขียนโปรแกรมด้วยภาษานี้ วิธีการก็คล้ายกับการเขียนโปรแกรมภาษาเครื่องแต่อย่างไรก็ตามคอมพิวเตอร์จะรู้จักแต่เฉพาะภาษาเครื่องเท่านั้น ดังนั้นจึงต้องมีการแปลภาษาแอสแซมบลีให้เป็นภาษาเครื่องเสียก่อน เครื่องจึงจะสามารถทำงานตามโปรแกรมคำสั่งได้โปรแกรมที่ทำหน้าที่แปลภาษานี้เรียกว่าแอสแซมเบลอร์ (Assembler)
ข้อดี ของภาษาแอสแซมบลี
- การเขียนโปรแกรมเขียนง่ายกว่าภาษาเครื่อง
- ขั้นตอนการเขียนโปรแกรมมีลักษณะคล้ายภาษาเครื่องทำให้โปรแกรมคำสั่งต้องเขียนยาวเช่นเดิม
ภาษาระดับสูง (High Level Language)
เป็นภาษาคอมพิวเตอร์ที่ได้รับการพัฒนา ให้สามารถใช้ได้ง่ายและสะดวกยิ่งขึ้น การเขียน
ภาษาไม่ขึ้นกับฮาร์ดแวร์หรือลักษณะการทำงานภายในของเครื่อง ผู้เขียนโปรแกรมไม่จำเป็นต้องเข้าใจระบบการทำงานภายในเครื่องมากนัก เพียงแต่เข้าใจกฎเกณฑ์ในกาเขียนแต่ละภาษาให้ดี ซึ่งลักษณะคำสั่งจะคล้ายกับภาษาอังกฤษ ดังนั้นภาษาระดับสูงจึงเป็นที่นิยมใช้กันแพร่หลายในปัจจุบัน
แต่อย่างไรก็ตามภาษาระดับสูงเครื่องจะยังไม่เข้าใจ จึงต้องมีการแปลให้เป็นภาษาเครื่องเสียก่อน โปรแกรมที่ใช้แปลภาษาระดับสูง แบ่งออกเป็น 2 ประเภท คือ อินเทอพรีทเตอร์ (Interpreter) และคอมไพเลอร์ (Compiler)
อินเทอพรีทเตอร์ (Interpreter)
เป็นโปรแกรมที่ใช้ในการแปลภาษาระดับสูงให้เป็นภาษาเครื่อง การแปลจะแปลที
และคำสั่งและทำงานตามคำสั่งทันที แล้วจึงไปอ่านคำสั่งต่อไป ในกรณีที่โปรแกรมมีลักษณะการทำงานแบบวนซ้ำ (Loop) อินเทอพรีทเตอร์จะต้องแปลคำสั่งนั้นซ้ำแล้วซ้ำอีก จึงทำให้การแปลแบบอินเทอพรีทเตอร์ทำงานซ้ำ อินเทคพรีทเตอร์จะไม่สร้างออฟเจ๊ทโปรแกรม (Object Program) ซึ่งเป็นโปรแกรมที่แปลเป็นภาษาเครื่องเก็บไว้ ฉะนั้นทุกครั้งที่สั่งให้โปรแกรมทำงานอินเทอพรีทเตอร์ก็จะเริ่มแปลใหม่ทุกครั้ง เครื่องจะเริ่มทำงานทันทีเมื่ออินเทอพรีทเตอร์แปลคำสั่งเสร็จและจะหยุดทำงานเมื่อดินเทอพรีทเตอร์พบข้อผิดพลาดในคำสั่งที่แปล และจะรายงานความผิดพลาดทันที ผู้เขียนโปรแกรมจะต้องแก้ไขโปรแกรมคำสั่งให้ถูกแล้วสั่งให้โปรแกรมเริ่มทำงานใหม่ อินเทอพรีทเตอร์ก็จะเริ่มแปลคำสั่งนั้นใหม่ภาษาที่ใช้อินเทคพรีทเตอร์แปล เช่น ภาษาBASICA และGWBASIC เป็นต้น
คอมไพเลอร์ (Compiler)
เป็นโปรแกรมที่ใช้แปลภาษาระดับสูงให้เป็นภาษาเครื่อง คอมไฟเลอร์จะทำการแปลทั้งโปรแกรม แล้วเก็บโปรแกรมที่แปลได้ในรูปของภาษาเครื่องเก็บไว้ในลักษณะของออฟเจ็ทโปรแกรม (Object Program) ถ้าโปรแกรมที่แปลไม่มีข้อผิดพลาดก็จะปฏิบัติงานตามคำสั่งนั้น ๆ ทันทีแต่ถ้าโปรแกรมมีข้อผิดพลาด คอมไพเลอร์ก็จะบอกข้อผิดพลาดทั้งหมดที่มีในโปรแกรมออกมาให้ทราบ และจะยอมให้ออฟเจ็ทโปรแกรมทำงานต่อเมื่อโปรแกรมได้รับการแก้ไขจนไม่มีข้อผิดพลาดแล้ว โปรแกรมที่ถูกแปลจะเก็บไว้เป็นออฟเจ็ทโปรแกรมในหน่วยความจำ จึงทำให้ต้องใช้เนื้อที่ในหน่วยความจำมากกว่าอินเทอพรีทเตอร์ เพราะต้องเก็บตัวโปรแกรมภาษา (Source Program) ออฟเจ็ท โปรแกรม (Object Program) และคอมไฟเลอร์ (Program)เมื่อแก้ไขข้อผิดพลาดแล้ว คอมไพเลอร์จะทำการแปลทั้งโปรแกรมใหม่เพื่อเก็บเป็นออฟเจ็ทโปรแกรมอีกครั้งหนึ่งในกรณีที่มีการทำงานแบบวนซ้ำ (Loop) เครื่องจะนำเอาออฟเจ็ทโปรแกรมที่แปลเก็บไว้ไปใช้ทำงาน โดยไม่ต้องมีการแปลซ้ำอีก ทำให้การทำงานเร็วกว่าการแปลแบบอินเทอพรีทเตอร์ ภาษาที่ใช้คอมไพเลอร์แปล ได้แก่ ภาษา C, COBOL, FORTRAN,PL/1, TURBO BASIC,PASCAL เป็นต้น
ไม่มีความคิดเห็น:
แสดงความคิดเห็น