ซอฟต์แวร์ (software)
ซอฟต์แวร์ หมายถึง การลำดับขั้นตอนการทำงานของคำสั่งที่จะนำหน้าที่สั่งคอมพิวเตอร์ว่าให้ทำอะไร เป้นชุดโปรแกรมหลายๆดปรแกรมให้สามารถทำงานได้อย่างครบถ้วนสมบูรณ์ตามที่ต้องการ เราไม่สามารถมองเห็นหรือสัมผัสไม่ได้แต่เราสามารถสร้างได้ จัดเก็บ และนำมาใช้งานหรือเผยแพร่ได้ด้วยสื่อหลายชนิดเช่น แผ่น บันทึก แผ่นซีดี แฟล็ชไดร์ฟ ฮาร์ดดิสก์ เป็นต้น
หน้าที่ของซอฟต์แวร์
ซอฟต์แวร์ทำหน้าที่เป็นตัวเชื่อมระหว่างผู้ใช้คอมพิวเตอร์และเครื่องคอมพิวเตอร์ ถ้าไม่มีซอฟต์แวร์เราไม่สามารถใช้เครื่องคอมพิวเตอร์ทำอะไรได้เลย ซอฟต์แวร์สำหรับเครื่องคอมพิวเตอร์สามารถแบ่งออกได้เป็นหลายประเภท
ประเภทของซอฟต์แวร์
ซอฟต์แวร์แบ่งออกเป็น 3 ประเภทใหญ่ๆ คือ ซอฟแวร์ระบบ (system software)
ซอฟต์แวร์ประยุกย์ (appication software) และ ซอฟต์แวร์ใช้งานเฉพาะ
1.ซอฟแวร์ระบบ (system software)
ซอฟแวร์ระบบ (system software) เป็นโปรแกรมที่บริษัทผู้ผลิตสร้างขึ้นมาเพื่อใช้จัดการระบบ หน้าที่การทำงานของซอฟต์แวรืระบบ คือ ดำเนินงานพื้นฐานต่างๆของระบบคอมพิวเตอร์ เช่น รับข้อมูลจากแผงแป้นอักขระแล้วแปลความหมายให้คอมพิวเตอร์เข้าใจ นำข้อมูลไปแสดงผลบนจอหรือนำออกไปยังเครื่องพิมพ์ จัดการข้อมูลในระบบแฟ้มข้อมูลบนหน่วยความจำสำรอง
ซอฟแวร์ระบบ (system software) หรือโปรแกรมที่รู้จักกันดีคือ Dos, windows, unix, linux รวมทั้งโปรแกรมแปลคำสั่งที่เขียนในภาษาระดับสูง เช่า ภาษา basic, fortran, pascal, coboi, c เป็นต้น
นอกจากนี้โปรแกรมที่ใช้ในการตรวจสอบระบบเช่น norton's uilities ก็นับเป็นโปรแกรมสำหรับระบบด้วยเช่นกัน
หน้าที่ของซอฟแวร์ระบบ (system software)
1.ใช้ในการจัดการหน่วยรับเข้าและหน่วยส่งออก เช่น รับรู้การกดแป้นพิมพ์ต่างๆบนแผงแป้นอักขระ ส่งรหัสตัวอัการออกทางจอภาพหรือเครื่องพิมพ์ ติดต่ออุปกรณ์รับเข้าแล้วส่งออกอื่นๆเช่น เมาส์ ลำโพง เป็นต้น
2.ใชในการจัดการหน่วยความจำเพื่อนำข้อมูลจากแผ่นบันทึกมาบรรจุยังหน่วยความจำหลัก หรือในทำนองกลับกัน คือนำข้อมูลจากหน่วยความจำหลักมาเก็บไว้ในแผ่นบันทึก
3. ใช้เป็นตัวเชื่อมต่อระหว่างผู้ใช้กับเครื่องคอมพิวเตอร์ เพื่อให้สามารถใช้งานได้ง่ายขึ้น เช่น การขอดูรายการในสาระบบ (directory) ในแผ่นบันทึก การทำสำเนาแฟ้มข้อมูล
ซอฟต์แวร์ระบบพื้นฐาน ที่เห็นทั่วไป แบ่งออกเป็น ระบบปฏิบัติการและตัวแปลภาษา
ประเภทของซอฟต์แวร์ระบบ แบ่งเป็น 2 ประเภทคือ
1.ระบบปฏิบัติการ (operratting system ; os)
2.ตัวแปลภาษา
1.ระบบปฏิบัติการ (operratting system ; os) เป็นซอฟต์แวร์ที่ใช้มนการดูแลระบบคอมพิวเตอร์ เครื่องคอมพิวเตอร์ทุกเครื่องจะต้องมีซอฟต์แวร์ระบบปฏิบัติการนี้ ระบบปฏิบัติการที่นิยมใช้กันมากและเป็นที่รู้จักดีเช่น ดอส วินโดว์ ยูนิกส์ ลีนุกซ์ และแมคอินทอช เป็นต้น
1.1 ดอส (disk operrating system ; dos) เป็นซอฟต์แวร์จัดระบบงานที่พัฒนามานานแล้ว การใช้งานจึงใช้คำสั่ง ดอสเป็นซอฟต์แวร์ที่รู้จักกันดีในหมู่ผู้ใช้ไมโครคอมพิวเตอร์ในอดีต ปัจจุบันระบบปฏิบัติการดอสนั้นมีการใช้งานน้อยมาก
1.2 วินโดว์ (windows) เป็นระบบปฏิบัติการที่พัฒนาต่อจากดอส โดยให้ใช้สามารถสั่งงานได้จากเมาส์มากขึ้นแทนการใช้แผงแป้นพิมพ์อักขระเพียงอย่างเดียว นอกจากนี้ระบบปฏิบัติการวินโดว์ยังสามรถทำงานหลายงานพร้อมกันได้ ดดยแต่ละงานจะอยู่ในกรอบช่องหน้าต่างบนจอภาพ การใช้งานเน้นรูปแบบกราฟิก ผู้ใช้สามารถใช้เมาส์เลื่อนตัวชี้เพื่อเลือกตำแหน่งที่ปรากฏบนจอภาพ ทำให้คอมพิวเตอร์ได้ง่าย ระบบปฏิบัติการวินโดว์ได้รับความนิยมอย่างมากในปัจจุบัน
1.3 ยูนิกส์ (unix) เป็นระบบปฏิบัติการที่พัฒนามาตั้งแต่ครั้งใช้กับเครื่องมินิคอมพิวเตอร์ ระบบปฏิบัติการยูนิกส์เป็นระบบปฏิบัติการที่เป็นเทคโนโลยีแบบเปิด (open system) ซึ่งเป็นแนวคิดที่ผู้ใช้ไม่ต้องผูกติดกับระบบใดระบบหนึ่งหรือใช้อุปกรณ์ที่มียี่ห้อเดียวกัน ยูนิกส์ยังถูกออกบบมาเพื่อตอบสนองการใช้งานในลักษณะที่มีผู้ใช้ได้หลายคนในเวลาเดียวกันที่เรียกว่า ระบบหลายผู้ใช้ (muitiusers) ระบบปฏิบัติการยูนิกส์จึงนิยมใช้กับเครื่องที่เชื่อมโยงเป็นเครือข่าย เพื่อใช้งานร่วมกันหลายๆเครื่องพร้อมกัน
1.4 ลีนุกซ์ (linux) เป็นระบบปฏิบัติการที่พัฒนามาจากระบบยูนิกส์ เป็นระบบซึ่งมีการแจกจ่าย
โปรแกรมต้นฉบับให้นักพัฒนาช่วยพัฒนาคุณสมบัติของระบบปฏิบัติการ ระบบปฏิบัติการลีนุกส์เป็นที่นิยมกันมากขึ้นในปัจจุบัน เนื่องจากมีโปรแกรมประยุกต์ต่างๆที่ทำงานบนระบบลีนุกซ์จำนวนมาก โดยเฉพาะอย่างยิ่งโปรแกรมในกลุ่มของกูส์นิว (gnu) และสิ่งสำคัญที่สุดก็คือระบบของลีนุกซ์เป็นระบบปฏิบัติการประเภทแจกฟรี (free ware) ผู้ใช้สามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย
ระบบปฏิบัติการลีนุกซ์สามารถทำงานได้บน ซีพียู หลายตระกูล เช่น อินเทล (pc intel) ดิจิตอล (digital alpha computer) และ ซันสปาร์ค (sun sparc) ถึงแม้ว่าในขณะนี้ลีนุกซ์ยังไม่สามารถแทนที่ระบบปฏิบัติการวินโดว์บนพีซีได้หมดก็ตาม แต่ผู้ใช้จำนวนมากได้หันมาใว้และช่วยพัฒนาโปรแกรมประยุกต์บนลีนุกซ์กันมากขึ้น
1.5 แมคอินทอช (macintosh) เป็นระบบปฏิบัติการสำหรับเครื่องไมโครคอมพิวเตอร์ แมคอินทอช ส่วนมาก นำไปใช้งานด้านกราฟิก ออกแบบและจัดแต่งเอกสาร นิยมใช้ในสำนักพิมพ์ต่างๆ นอกจากระบบปฏิบัติการที่กล่าวมาแล้วยังมีระบบปฏิบัติการอีกมากมาย เช่น ระบบปฎิบัติการที่ใช้ในเครือข่ายคอมพิวเตอร์ เพื่อให้คอมพิวเตอร์ ทำงานร่วมกันเป็นระบบ เช่น ระบบปฏิบัติการเน็ตแวร์ นอกจากนี้ยังมีระบบปฏิบัติการที่ใช้งานเฉพาะกับเครื่องคอมพิวเตอร์ที่สร้างขึ้นมาเพื่องานใดงานหนึ่งโดยเฉพาะ ซึ่งส่วนใหญ่จะใช้ในห้องปฏิบัติการคอมพิวเตอร์ในสถาบันการศึกษา
ชนิดของระบบปฏิบัติการ จำแนกตามการใช้งานสามมารถจำแนกได้เป็น 3 ชนิด ด้วยกันคือ
1.ประเภทใช้งานเดียว ( single-tasking ) ระบบปฏิบัติการประเภทนี้จะกำหนดให้คอมพิวเตอร์ใช้งานได้ครั้งละหนึ่งงานเท่านั้น ใช้ในเครื่องขนาดเล็กอย่างไมโครคอมพิวเตอร์ เช่น ระบบปฏิบัติการดอส เป็นต้น
2. ประเภทใช้หลายงาน (multi- taking) ระบบปฏิบัติการประเภทนี้สามารถควบคุมการทำงานพร้อมกันหลายงานในขณะเดียวกัน ผู้ใช้สามารถทำงานกับซอฟต์แวร์ประยุกต์ได้หลายชนิดในเวลาเดียวกัน เช่น ระบบปฏิบัติการ windows 98 ขึ้นไป และ unix เป็นต้น
3.ประเภทใช้งานหลายคน (multi user) ในหน่วยงานบางแห่งอาจใช้คอมพิวเตอร์ขนาดใหญ่ทำหน้าที่ประมวลผล ทำให้ในขณะใดขณะหนึ่งที่มีผู้ใช้คอมพิวเตอร์พร้อมกันหลายคน แต่ละคนจะมีสถานีงานของตนเองเชื่อมต่อกับคอมพิวเตอร์ จึงต้องใรบบปฎิบัติการที่มีความสามารถสูง เพื่อให้ผู้ใช้ทุกคนสามารถทำงานเสร็จในเวลา เช่น ระบบปฏิบัติการ windows nt และ unix เป็นต้น
2.ตัวแปลภาษา
การพัฒนาซอฟแวร์ต้องอาศัยซอฟแวร์ที่ใช้ในการแปลภาษาระดับสูงให้เป็นภาเครือง
ภาษาระดับสูงมีหลายภาษาซึ่งสร้างขึ้นเพื่อให้ผู้เขียนโปรแกรมเขียนชุดคำสั่งได้ง่าย เข้าใจได้ และเพื่อให้สามารถปรับปรุงแก้ไขซอฟแวร์ในภายหลังได้
ภาษาระดับสูงที่พัฒนาขึ้นทุกภาษาต้องมีตัวแปลภาษา
ซึ่งภาษาระดับสูงได้แก่ basic,pascal,c และภาษาโลก เป็นต้น
นอกจากนี้ ยังมีภาษาคอมพิวเตอร์ที่ใช้กันอยู่ในปัจจุบันอีกมาก ได้แก่ fortran,cobol,และภาษาอาร์พีจี
ซอฟต์แวร์ประยุกต์ (applicafion software)
2.2 ซอฟต์แวร์ประยุกต์ (applicafion software)
ซอฟต์แวร์ที่ใช้ทำงานร่วมกับคอมพิวเตอร์ เพื่อใช้ทำงานเฉพาะด้าน เช่น การจัดพิมพ์รายงาน กานนำเสนองาน การจัดทำบัญชี การตกแต่งภาพ หรือการออกแบบเว็บไซต์ เป็นต้น
ประเภทของ ซอฟต์แวร์ประยุกต์ (applicafion software)
แบ่งตามลักษณะการผลิต จำแนกได้ 2 ประเภท คือ
1.ซอฟต์แวร์ที่พัฒนาขึ้นใช้เองโดยเฉพาะ (proprietary software)
2.ซอฟต์แวร์ที่หาซื้อได้ทั่วไป (customized package) และโปรแกรมมาตรฐาน (standard package)
ประเภทของ ซอฟต์แวร์ประยุกต์ (applicafion software)
แบ่งตามกลุ่มการใช้งาน จำแนกได้เป้น 3 กลุ่มใหญ่ๆ ดังนี้
1. กลุ่มการใช้งานทางด้านธุรกิจ (business)
2.กลุ่มการใช้งานด้านกราฟิกและมัลติมีเดีย (graphic and multimedia )
3.กลุ่มการใช้งานบนเว็บ (web and communications)
กลุ่มการใช้งานทางด้านกราฟิกและมัลติมีเดีย
ซอฟแวร์กลุ่มนี้ถูกพัฒนาขึ้นเพื่อช่วยจัดการด้านงานกราฟิกและมัลติมีเดีย เพื่อให้งานง่ายขึ้น เช่น ใช้ตกแต่ง วาดรูป ปรับเสียง ตัดต่อภาพเคลื่อนไหว และการสร้างและออกแบบเว็บไซต์ ตัวอย่างเช่น
โปรแกรมงานออกแบบ อาทิ Microsoft Visio Professional
โปรแกรมตกแต่งภาพ อาทิ CorelDRAW, Adobe Photoshop
โปรแกรมตัดต่อวิดิโอและเสียง อาทิ Adobe Premiere, Pinnacle Studio DV
โปรแกรมสร้างสื่อมัลติมีเดีย อาทิ Adobe Authorware, Toolbook Instructor, Adobe Director
โปรแกรมสร้างเว็บ อาทิ Adobe Flash, Adobe Dreamweaver
กลุ่มการใช้งานบนเว็บและการติดต่อสื่อสาร
กลุ่มการใช้งานบนเว็บและการติดต่อสื่อสาร
โปรแกรมส่งข้อความด่วน (Instant Messaging) อาทิ MSN Messenger/ Windows Messenger, ICQ
โปรแกรมสนทนาบนอินเทอร์เน็ต อาทิ PIRCH, MIRCH
ความจำเป็นของการใช้ซอฟต์แวร์
การใช้ภาษาเครื่องนี้ถึงแม้ว่าคอมพิวเตอร์จะ
เข้าใจได้ทันที แต่มนุษย์ผู้ใช้จะมีข้อยุ่งยากมากเพราะเข้าใจและจดจำได้ยาก จึงมีผู้สร้างภาษาคอมพิวเตอร์ในรูปแบบที่เป็นตัวอักษร เป็นประโยคข้อความ ภาษาในลักษณะดังกล่าวนี้เรียกว่าภาษาคอมพิวเตอร์ระดับสูง ภาษาระดับสูงมีอยู่มากมาย บางภาษามีความเหมาะสมกับการใช้สั่งงานการคำนวณทางคณิตศาสตร์ และวิทยาศาสตร์ บางภาษามีความเหมาะสมไว้ใช้สั่งงานทางด้านการจัดการข้อมูล
ซอฟต์แวร์และภาษาคอมพิวเตอร์
เมื่อมนุษย์ต้องการใช้คอมพิวเตอร์ช่วยในการทำงาน มนุษย์จะต้องบอกขั้นตอนวิธีการให้คอมพิวเตอร์ทราบการที่บอกสิ่งที่มนุษย์เข้าใจให้คอมพิวเตอร์รับรู้ และทำงานได้อย่างถูกต้อง จำเป็นต้องมีสื่อกลาง ถ้าเปรียบเทียบกับชีวิตประจำวันแล้ว เรามีภาษาที่ใช้ในการติดต่อซึ่งกันและกัน เช่นเดียวกันถ้ามนุษย์ต้องการจะถ่ายทอดความต้องการให้คอมพิวเตอร์รับรู้ และปฏิบัติตามจะต้องมีสื่อกลางสำหรับการติดต่อเพื่อให้คอมพิวเตอร์รับรู้ เราเรียกสื่อกลางนี้ว่า ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ในแต่ละยุคประกอบด้วย
ภาษาเครื่อง (Machine Languages)
เนื่องจากคอมพิวเตอร์ทำงานด้วยสัญญาณทางไฟฟ้า ใช้แทนด้วยตัวเลข 0 และ 1 ได้ ผู้ออกแบบคอมพิวเตอร์ใช้ตัวเลข 0 และ 1 นี้เป็นรหัสแทนคำสั่งในการสั่งงานคอมพิวเตอร์ รหัสแทนข้อมูลและคำสั่งโดยใช้ระบบเลขฐานสองนี้ คอมพิวเตอร์สามารถเข้าใจได้ เราเรียกเลขฐานสองที่ประกอบกันเป็นชุดคำสั่งและใช้สั่งงานคอมพิวเตอร์ว่าภาษาเครื่อง
การใช้ภาษาเครื่องนี้ถึงแม้คอมพิวเตอร์จะเข้าใจได้ทันทีแต่มนุษย์ผู้ใช้จะมีข้อยุ่งยากมาก เพราะเข้าใจและจดจำได้ยาก จึงมีผู้สร้างภาษาคอมพิวเตอร์ในรูปแบบอื่นที่เป็นตัวอักษร
ภาษาแอสเซมบลี (Assembly Languages)
เป็นภาษาคอมพิวเตอร์ในยุคที่ 2 ถัดจากภาษาเครื่อง ภาษาแอสเซมบลีช่วยลดความยุ่งยากลงในการเขียนโปรแกรมเพื่อติดต่อกับคอมพิวเตอร์
แต่อย่างไรก็ตามภาษาแอสเซมบลีก็ยังมีความใกล้เคียงภาษาเครื่องอยู่มาก และจำเป็นต้องใช้ตัวแปลภาษาที่เรียกว่าแอสเซมเบลอร์(Assembler) เพื่อแปลชุดภาษาแอสเซมบลีให้เป็นภาษาเครื่อง
ภาษาระดับสูง (High-Level Languages)
เป็นภาษาคอมพิวเตอร์ในยุคที่ 3 เริ่มมีการใช้ชุดคำสั่งที่เรียกว่า Statements ที่มีลักษณะเป็นประโยคภาษาอังกฤษ ทำให้ผู้ที่เขียนโปรแกรมสามารถเข้าใจชุดคำสั่งเพื่อสั่งให้คอมพิวเตอร์ทำงานง่ายขึ้น ผู้คนทั่วไปสามารถเรียนรู้และเขียนโปรแกรมได้ง่ายขึ้น เนื่องจากภาษาระดับสูงใกล้เคียงภาษามนุษย์ ตัวแปลภาษาระดับสูงเพื่อให้เป็นภาษาเครื่องนั้นมีอยู่ 2 ชนิด ด้วยกัน คือ คอมไพเลอร์ (Compiler) และ อินเทอร์พรีเตอร์ (Interpreter)
คอมไพเลอร์ จะทำการแปลโปรแกรมที่เขียนเป็นภาษาระดับสูงทั้งโปรแกรมให้เป็นภาษาเครื่องก่อน แล้วจึงให้คอมพิวเตอร์ทำงานตามภาษาเครื่องนั้น
อินเทอร์พรีเตอร์ จะทำการแปลทีละคำสั่ง แล้วให้คอมพิวเตอร์ทำตามคำสั่งนั้น เมื่อทำเสร็จแล้วจึงมาทำการแปลคำสั่งลำดับต่อไป ข้อแตกต่างระหว่างคอมไพเลอร์กับอินเทอร์พรี เตอร์จึงอยู่ที่การแปลทั้งโปรแกรมหรือแปลทีละคำสั่ง