หน่วยที่ 5 ซอฟแวร์
ความหมายของซอฟแวร์
ซอฟต์แวร์ (software) หรือ ส่วนชุดคำสั่งและยังมีการสะกด ซอฟต์แวร์ เป็นส่วนของระบบคอมพิวเตอร์ที่ใช้ในการจัดเก็บและประมวลผลข้อมูล ซอฟต์แวร์นั้น นอกจากจะสามารถใช้งานบนคอมพิวเตอร์ได้แล้ว ยังสามารถใช้งานบนเครื่องใช้ หรืออุปกรณ์อื่น เช่น โทรศัพท์มือถือ หรือ หุ่นยนต์ในโรงงาน หรือ เครื่องใช้ไฟฟ้าต่างๆคำว่า "ซอฟต์แวร์" ใช้ครั้งแรกโดย จอห์น ดับเบิลยู. เทอร์กีย์ (John W. Turkey) ในปี พ.ศ. 2500 (ค.ศ. 1957) โดยแนวคิดของซอฟต์แวร์ปรากฏ ครั้งแรกในเรียงความของแอลัน ทัวริง
การใช้งานระบบสารสนเทศด้วยคอมพิวเตอร์ จำเป็นต้องมีซอฟต์แวร์ควบคุมการทำงาน เช่น การซื้อของโดยใช้บัตรเครดิต ผู้ขายจะตรวจสอบบัตรเครดิตโดยใช้เครื่องอ่านบัตร แล้วส่งข้อมูลของบัตรเครดิตไปยังศูนย์ข้อมูลของบริษัทผู้ออกบัตร การตรวจสอบจะกระทำกับฐานข้อมูลกลาง โดยมีกลไกหรือเงื่อนไขของการตรวจสอบ จากนั้นจึงให้คำตอบว่าจะยอมรับหรือปฏิเสธบัตรเครดิตใบนั้น การดำเนินการเหล่านี้เป็นไปโดยอัตโนมัติตามคำสั่งซอฟต์แวร์
ทำนองเดียวกันเมื่อซื้อสินค้าในห้างสรรพสินค้า พนักงานเก็บเงินจะใช้เครื่องกราดตรวจอ่านรหัสแท่งบนสินค้าทำให้บนจอภาพปรากฏชื่อสินค้า รหัสสินค้า และราคา ในการดำเนินการนี้ต้องใช้ซอฟต์แวร์ ซอฟต์แวร์จึงเป็นสิ่งสำคัญที่ทำให้ระบบคอมพิวเตอร์ทำงานได้
ประเภทของซอฟแวร์
ซอฟต์แวร์หรือโปรแกรมคอมพิวเตอร์ที่มีผู้พัฒนาขึ้นเพื่อใช้งานกับคอมพิวเตอร์มีมากมาย ซอฟต์แวร์เหล่านี้อาจได้รับการพัฒนาโดยผู้ใช้งานเอง หรือผู้พัฒนาระบบ หรือผู้ผลิตจำหน่าย หากแบ่งแยกชนิดของซอฟต์แวร์ตามสภาพการทำงาน พอแบ่งแยกซอฟต์แวร์ได้เป็นสองประเภท คือ ซอฟต์แวร์ระบบ (system software) และซอฟต์แวร์ประยุกต์ (application software)
- ซอฟต์แวร์ระบบ คือซอฟต์แวร์ที่บริษัทผู้ผลิตสร้างขึ้นมาเพื่อใช้จัดการกับระบบ หน้าที่การทำงานของซอฟต์แวร์ระบบคือดำเนินงานพื้นฐานต่าง ๆ ของระบบคอมพิวเตอร์ เช่น รับข้อมูลจากแผงแป้นอักขระแล้วแปลความหมายให้คอมพิวเตอร์เข้าใจ นำข้อมูลไปแสดงผลบนจอภาพหรือนำออกไปยังเครื่องพิมพ์ จัดการข้อมูลในระบบแฟ้มข้อมูลบนหน่วยความจำรอง
ซอฟต์แวร์ระบบยังใช้เป็นเครื่องมือในการพัฒนาซอฟต์แวร์อื่น ๆ และยังรวมไปถึงซอฟต์แวร์ที่ใช้ในการแปลภาษาต่าง ๆ
- ซอฟต์แวร์ประยุกต์ เป็นซอฟต์แวร์ที่ใช้กับงานด้านต่าง ๆ ตามความต้องการของผู้ใช้ ที่สามารถนำมาใช้ประโยชน์ได้โดยตรง ปัจจุบันมีผู้พัฒนาซอฟต์แวร์ใช้งานทางด้านต่าง ๆ ออกจำหน่ายมาก การประยุกต์งานคอมพิวเตอร์จึงกว้างขวางและแพร่หลาย เราอาจแบ่งซอฟต์แวร์ประยุกต์ออกเป็นสองกลุ่มคือ ซอฟต์แวร์สำเร็จ และซอฟต์แวร์ที่พัฒนาขึ้นใช้งานเฉพาะ ซอฟต์แวร์สำเร็จในปัจจุบันมีมากมาย เช่น ซอฟต์แวร์ประมวลคำ ซอฟต์แวร์ตารางทำงาน ฯลฯ
ความจำเป็นของการใช้คอมพิวเตอร์
คอมพิวเตอร์เข้ามามีบทบาทมากในชีวิตประจำวันเรา เพราะเรานำคอมพวิเตอร์เข้ามาช่วยระบบการทำงานของเราให้มีความทันสมัย ช่วยควบคุมระบบต่างๆได้อย่างแม่นยำ ไม่ผิดพลาด เช่นการควบคุมการจ่ายพลังงานของโรงไฟฟ้า การควบคุมการเปิดปิดสัญญานไฟจราจร การควบคุมการเบิกจ่ายเงินทางตู้ ATM เป็นต้น
การจัดเก็บก็สามารถทำได้โดยไม่เปลืองเนื้อที่มากเท่ากับการจัดเก็บข้อมูลที่เป็นเอกสารกระดาษที่มีจำนวนมากๆ และข้อมูลเหล่านี้ก็สามารถจัดส่งให้เครือข่ายของบริษัทที่มีอยู่ทั่วโลกได้เพียงไม่กี่นาที ไม่เสียเวลาในการจัดส่งเอกสารข้อมูลเหมือนสมัยก่อนแล้ว
ความสำคัญของคอมพิวเตอร์
ปัจจุบันเทคโนโลยีและการสื่อสารได้เจริญก้าวหน้าอย่างรวดเร็ว ในการดำเนินชีวิตประจำวันของมนุษย์อุปกรณ์สื่อสารและคอมพิวเตอร์ได้เข้ามามีบทบาทสำคัญต่อการดำเนินกิจกรรมต่างๆ โดยเฉพาะอย่างยิ่งการศึกษาค้นคว้าและการทำธุรกิจ ด้วยความก้าวหน้าของเทคโนโลยีคอมพิวเตอร์ ทำให้องค์กรต่างๆ นำเทคโนโลยีเหล่านี้เข้ามาช่วยในการดำเนินงานขององค์กรให้มีประสิทธิภาพมากยิ่งขึ้น ไม่ว่าจะเป็นการรับ-ส่งข้อมูลข่าวสารอิเล็กทรอนิกส์ การทำธุรกิจและให้บริการบนอินเตอร์เน็ต ตลอดจนการใช้เป็นเครื่องมือช่วยในการทำงาน ไม่เพียงแต่ในองค์กรต่างๆ เท่านั้นที่นำคอมพิวเตอร์เข้ามาใช้งาน ผู้ใช้ตามบ้านโดยทั่วไป ก็ได้จัดหาคอมพิวเตอร์เข้ามาใช้ส่วนตัวกันมากขึ้น เนื่องจากคอมพิวเตอร์ในปัจจุบันมีราคาถูก แต่มีประสิทธิภาพสูง รวมทั้งสามารถใช้งานได้ง่ายกว่าในอดีตมาก จนมีการประมาณการกันว่า ในอนาคตคอมพิวเตอร์จะเป็นอุปกรณ์พื้นฐานในทุกๆ ครัวเรือนเหมือนกับเครื่องรับโทรทัศน์ ด้วยสถานการณ์ดังกล่าว การเรียนรู้การใช้งานคอมพิวเตอร์ในระดับเบื้องต้น จึงเป็นสิ่งที่มีความจำเป็นอย่างยิ่งในการดำเนินกิจกรรมต่างๆ ไม่ว่าจะเป็นในการทำงาน, การศึกษาหรือเพื่อความบันเทิง ให้มีประสิทธิภาพและความสะดวกเพิ่มมากขึ้น
ซอฟต์แวร์และภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์
เป็นภาษาที่ถูกสร้างขึ้นเพื่อใช้สื่อสารแทนผู้ใช้โปรแกรมกับเครื่องคอมพิวเตอร์ โดยภาษาคอมพิวเตอร์จะทำหน้าที่แปลความต้องการของผู้ใช้กับอุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์ ซึ่งมีรูปแบบ
แตกต่างกันออกไป
หลักการสร้างซอฟต์แวร์มีหลักการสร้างเหมือนหลักการทางอิเล็กทรอนิกส์ คือการเปิดและปิดกระแสไฟฟ้า โดยสามารถเรียกหลักการเบื้องต้นนี้ว่า “ระบบดิจิทัล” ซึ่งมีการทำงานโดยเมื่อเปิดกระแสไฟฟ้าจะแทนด้วยตัวเลข 1 และเมื่อปิดกระแสไฟฟ้าจะแทนด้วย 0 โดยระบบดิจิทัลนี้เป็นพื้นฐานของภาษาคอมพิวเตอร์ที่ใช้สำหรับสื่อสารหรือสั่งงานเครื่องคอมพิวเตอร์ซึ่งเรียกว่า ภาษาเครื่อง (Machine Language) ภาษาเครื่องที่เกิดจากการปิดและเปิดกระแสไฟฟ้าเพื่อสั่งงานหรือสื่อสารสิ่งใดสิ่งหนึ่ง เรียกว่า ชุดคำสั่ง และ ชุดคำสั่งหลายๆ ชุดประกอบกัน เรียกว่า ซอฟต์แวร์ โดยซอฟต์แวร์เหล่านั้นจะถูกบันทึกไว้ที่อุปกรณ์บันทึกข้อมูลเพื่อนำไปใช้งานต่อไป
แต่เนื่องจากการใช้ภาษาเครื่องเพื่อจัดทำชุดคำสั่งนั้น จะต้องประกอบไปด้วยเลข 0 และเลข 1 เป็นจำนวนมาก ทำให้เข้าใจและใช้งานยาก จึงมีการกำหนดภาษาต่างๆ ให้ผู้ใช้งานสามารถเข้าใจภาษาเครื่องเหล่านั้นได้สะดวกและง่ายยิ่งขึ้น
ภาษาคอมพิวเตอร์ : ภาษาระดับต่ำ (Low Level Language)
คือ ภาษาที่สร้างขึ้นเพื่อควบคุมอุปกรณ์คอมพิวเตอร์หรือฮาร์ดแวร์แต่ละส่วนเฉพาะเครื่องคอมพิวเตอร์นั้นๆ ไม่สามารถใช้กับเครื่องคอมพิวเตอร์ประเภทอื่นได้ ภาษาระดับต่ำสามารถแบ่งได้ 2 ประเภท ได้แก่
1. ภาษาเครื่อง (Machine Language) คือ ภาษาที่พัฒนามาพร้อมกับการสร้างเครื่องคอมพิวเตอร์ โดยเครื่องคอมพิวเตอร์สามารถเข้าใจได้โดยไม่ต้องใช้ตัวแปลภาษาต่างๆ ซึ่งประกอบไปด้วยตัวเลข 0 กับตัวเลข 1 หรือเลขฐานสองเท่านั้น เช่น 10100111 หมายถึง ตัวอักษร “ง” เป็นต้น
ผู้สร้างหรือผู้เขียนภาษาเครื่องประเภทนี้ จำเป็นต้องมีความรู้ด้านระบบการทำงานของเครื่องคอมพิวเตอร์เป็นอย่างดี จึงจะสามารถสร้างหรือเขียนภาษาเครื่องได้ เพราะภาษาเครื่องเป็นภาษาที่มนุษย์เข้าใจได้ยาก มีความสลับซับซ้อนมาก จึงทำให้ใช้เวลาในการสร้างมากที่สุดเมื่อเปรียบเทียบกับภาษาคอมพิวเตอร์ประเภทอื่นๆ
2. ภาษาสัญลักษณ์ (Symbolic Language) หรือ ภาษาแอสเซมบลี (Assembly) คือ ภาษาที่ใช้รหัส สัญลักษณ์ ตัวแปลทางคณิตศาสตร์ หรือคำย่อแทนคำสั่งการทำงาน ซึ่งพัฒนามาจากภาษาเครื่องในปี พ.ศ. 2495 ประกอบไปด้วยเลขฐานสอง เลขฐานแปด เลขฐานสิบหก และเลขฐานสิบ
ภาษาสัญลักษณ์สามารถสื่อความหมายกับมนุษย์ได้มากขึ้น แต่คงคุณสมบัติในการควบคุมอุปกรณ์คอมพิวเตอร์ได้เหมือนภาษาเครื่อง ทำให้เป็นภาษาที่ใช้เฉพาะหรือรู้จักกันในผู้สร้างหรือผู้ศึกษาเฉพาะด้านนี้เท่านั้น การเขียนหรือการสร้างภาษานี้ยังต้องมีขั้นตอนการทำงานอย่างละเอียด ต้องอาศัยผู้รู้และเข้าใจระบบการทำงานภายในเครื่องคอมพิวเตอร์หรืออุปกรณ์ชิ้นนั้นๆ เป็นอย่างดี
ภาษาคอมพิวเตอร์ : ภาษาระดับสูง (High Level Language)
คือ ภาษาที่ได้รับการพัฒนาให้มีลักษณะคล้ายกับภาษาที่มนุษย์ใช้ในชีวิตประจำวัน โดยผู้สร้างหรือผู้เขียนภาษาระดับสูงไม่จำเป็นต้องรู้ถึงระบบการทำงานภายในเครื่องคอมพิวเตอร์ จึงมีความง่ายและใช้เวลาในการสร้างหรือเขียนน้อยกว่าภาษาระดับต่ำ
ภาษาระดับสูงยังสามารถใช้ได้กับเครื่องคอมพิวเตอร์ทุกเครื่อง ไม่เฉพาะเจาะจงว่าจะเป็นเครื่องคอมพิวเตอร์แบบใดหรือเครื่องใด ซึ่งอาจมีการปรับปรุงหรือเปลี่ยนแปลงภาษาเพียงเล็กน้อยเท่านั้น
ตัวอย่างภาษาระดับสูง ได้แก่ ภาษาเบสิก (BASIC Language) ภาษาปาสคาล (Pascal Language) และ ภาษาโคบอล (COBOL Language) เป็นต้น
ภาษาคอมพิวเตอร์ : ภาษาระดับสูงมาก
เป็นภาษาที่ได้รับการพัฒนาให้มีความง่ายในการเขียนและการทำความเข้าใจต่อมนุษย์มากที่สุด ซึ่งสามารถเขียนหรือสั่งงานเครื่องคอมพิวเตอร์ด้วยภาษาที่สั้นกะทันรัด โดยผู้เขียนไม่จำเป็นต้องเรียนรู้หรือสนใจกระบวนการทำงานของเครื่องคอมพิวเตอร์นั้น เมื่อต้องการให้เครื่องคอมพิวเตอร์ทำงานอะไรก็สามารถสร้างหรือเขียนคำสั่งนั้นลงไปได้เลย
การสร้างหรือการเขียนภาษาระดับสูง มักสร้างหรือเขียนด้วยโปรแกรมที่มีลักษณะเป็นคำสั่ง
สำเร็จรูปต่างๆ ภายในโปรแกรมสำหรับสร้างภาษาอีกทีหนึ่ง
ตัวอย่างภาษาระดับสูง ได้แก่ ภาษาเอสคิวแอล (SQL = Structured Query Language)
ภาษาคิวบีอี (QBE = Query By Example)
นอกจากภาษาระดับสูงมากข้างต้นแล้ว ยังมีการพัฒนาและสร้างภาษาที่เป็นภาษาธรรมชาติ (Nature Language) ใช้กับเครื่องคอมพิวเตอร์ โดยสามารถพิมพ์คำสั่งที่ต้องการให้เครื่องคอมพิวเตอร์ทำงานได้ในโปรแกรมสร้างหรือเขียนภาษา จากนั้นโปรแกรมนั้นจะแปลเป็นภาษาเครื่องให้คอมพิวเตอร์
เข้าใจได้โดยตรง หากเครื่องคอมพิวเตอร์ไม่เข้าใจคำสั่งนั้นก็จะถามกลับมา ภาษาธรรมชาตินี้จะใช้ระบบฐานความรู้ (Knowledge Base System) ช่วยในการแปลความหมายของคำสั่งต่างๆ
Knowledge Base System
ตัวแปลภาษา
1. ภาษาเครื่อง (Machine Language) คือ ภาษาที่พัฒนามาพร้อมกับการสร้างเครื่องคอมพิวเตอร์ โดยเครื่องคอมพิวเตอร์สามารถเข้าใจได้โดยไม่ต้องใช้ตัวแปลภาษาต่างๆ ซึ่งประกอบไปด้วยตัวเลข 0 กับตัวเลข 1 หรือเลขฐานสองเท่านั้น เช่น 10100111 หมายถึง ตัวอักษร “ง” เป็นต้น
ผู้สร้างหรือผู้เขียนภาษาเครื่องประเภทนี้ จำเป็นต้องมีความรู้ด้านระบบการทำงานของเครื่องคอมพิวเตอร์เป็นอย่างดี จึงจะสามารถสร้างหรือเขียนภาษาเครื่องได้ เพราะภาษาเครื่องเป็นภาษาที่มนุษย์เข้าใจได้ยาก มีความสลับซับซ้อนมาก จึงทำให้ใช้เวลาในการสร้างมากที่สุดเมื่อเปรียบเทียบกับภาษาคอมพิวเตอร์ประเภทอื่นๆ
2. ภาษาสัญลักษณ์ (Symbolic Language) หรือ ภาษาแอสเซมบลี (Assembly) คือ ภาษาที่ใช้รหัส สัญลักษณ์ ตัวแปลทางคณิตศาสตร์ หรือคำย่อแทนคำสั่งการทำงาน ซึ่งพัฒนามาจากภาษาเครื่องในปี พ.ศ. 2495 ประกอบไปด้วยเลขฐานสอง เลขฐานแปด เลขฐานสิบหก และเลขฐานสิบ
ภาษาสัญลักษณ์สามารถสื่อความหมายกับมนุษย์ได้มากขึ้น แต่คงคุณสมบัติในการควบคุมอุปกรณ์คอมพิวเตอร์ได้เหมือนภาษาเครื่อง ทำให้เป็นภาษาที่ใช้เฉพาะหรือรู้จักกันในผู้สร้างหรือผู้ศึกษาเฉพาะด้านนี้เท่านั้น การเขียนหรือการสร้างภาษานี้ยังต้องมีขั้นตอนการทำงานอย่างละเอียด ต้องอาศัยผู้รู้และเข้าใจระบบการทำงานภายในเครื่องคอมพิวเตอร์หรืออุปกรณ์ชิ้นนั้นๆ เป็นอย่างดี
ภาษาคอมพิวเตอร์ : ภาษาระดับสูง (High Level Language)
คือ ภาษาที่ได้รับการพัฒนาให้มีลักษณะคล้ายกับภาษาที่มนุษย์ใช้ในชีวิตประจำวัน โดยผู้สร้างหรือผู้เขียนภาษาระดับสูงไม่จำเป็นต้องรู้ถึงระบบการทำงานภายในเครื่องคอมพิวเตอร์ จึงมีความง่ายและใช้เวลาในการสร้างหรือเขียนน้อยกว่าภาษาระดับต่ำ
ภาษาระดับสูงยังสามารถใช้ได้กับเครื่องคอมพิวเตอร์ทุกเครื่อง ไม่เฉพาะเจาะจงว่าจะเป็นเครื่องคอมพิวเตอร์แบบใดหรือเครื่องใด ซึ่งอาจมีการปรับปรุงหรือเปลี่ยนแปลงภาษาเพียงเล็กน้อยเท่านั้น
ตัวอย่างภาษาระดับสูง ได้แก่ ภาษาเบสิก (BASIC Language) ภาษาปาสคาล (Pascal Language) และ ภาษาโคบอล (COBOL Language) เป็นต้น
ภาษาคอมพิวเตอร์ : ภาษาระดับสูงมาก
เป็นภาษาที่ได้รับการพัฒนาให้มีความง่ายในการเขียนและการทำความเข้าใจต่อมนุษย์มากที่สุด ซึ่งสามารถเขียนหรือสั่งงานเครื่องคอมพิวเตอร์ด้วยภาษาที่สั้นกะทันรัด โดยผู้เขียนไม่จำเป็นต้องเรียนรู้หรือสนใจกระบวนการทำงานของเครื่องคอมพิวเตอร์นั้น เมื่อต้องการให้เครื่องคอมพิวเตอร์ทำงานอะไรก็สามารถสร้างหรือเขียนคำสั่งนั้นลงไปได้เลย
การสร้างหรือการเขียนภาษาระดับสูง มักสร้างหรือเขียนด้วยโปรแกรมที่มีลักษณะเป็นคำสั่ง
สำเร็จรูปต่างๆ ภายในโปรแกรมสำหรับสร้างภาษาอีกทีหนึ่ง
ตัวอย่างภาษาระดับสูง ได้แก่ ภาษาเอสคิวแอล (SQL = Structured Query Language)
ภาษาคิวบีอี (QBE = Query By Example)
นอกจากภาษาระดับสูงมากข้างต้นแล้ว ยังมีการพัฒนาและสร้างภาษาที่เป็นภาษาธรรมชาติ (Nature Language) ใช้กับเครื่องคอมพิวเตอร์ โดยสามารถพิมพ์คำสั่งที่ต้องการให้เครื่องคอมพิวเตอร์ทำงานได้ในโปรแกรมสร้างหรือเขียนภาษา จากนั้นโปรแกรมนั้นจะแปลเป็นภาษาเครื่องให้คอมพิวเตอร์
เข้าใจได้โดยตรง หากเครื่องคอมพิวเตอร์ไม่เข้าใจคำสั่งนั้นก็จะถามกลับมา ภาษาธรรมชาตินี้จะใช้ระบบฐานความรู้ (Knowledge Base System) ช่วยในการแปลความหมายของคำสั่งต่างๆ
Knowledge Base System
ตัวแปลภาษา
คือ ตัวแปลภาษาในระดับสูงและระดับสูงมาก มีหลักการทำงานโดยการแปลคำสั่งทั้งหมดเก็บไว้ในแฟ้มก่อน แล้วจึงสั่งให้เครื่องทำงานทีเดียวจนจบโปรแกรม ตัวแปลภาษาคอมไพเลอร์จึงมีการทำงานเร็วกว่าอินเทอร์พรีเตอร์ตัวแปลภาษาจะเปลี่ยนไปตามภาษาต่างๆ ที่ใช้ตามระดับของภาษาคอมพิวเตอร์ สามารถแบ่งได้เป็น 3 ประเภท คือ 1. แอสเซมเบลอร์ (Assembler) 2. อินเทอร์พรีเตอร์ (Interpreter) และ 3. คอมไพเลอร์ (Compiler)
ตัวแปลภาษาของภาษาสัญลักษณ์หรือภาษาแอสเซมบลี (Assembly) ซึ่งเป็นภาษาในระดับต่ำของภาษาคอมพิวเตอ
ตัวแปลภาษาของภาษาสัญลักษณ์หรือภาษาแอสเซมบลี (Assembly) ซึ่งเป็นภาษาในระดับต่ำของภาษาคอมพิวเตอ
เนื่องจากเราสามารถสื่อสารกับเครื่องคอมพิวเตอร์ให้เข้าใจได้เพียงภาษาเดียวเท่านั้น คือ “ภาษาเครื่อง” ซึ่งเป็นภาษาที่มีความสลับซับซ้อนและเข้าใจยาก มนุษย์จึงสร้างหรือเขียนโปรแกรมสำหรับแปลภาษาขึ้น เรียกว่า ตัวแปลภาษา (Language Translator) โดยทำหน้าที่แปลภาษาต่างๆ ให้เป็นภาษาเครื่อง เพื่อให้เครื่องคอมพิวเตอร์สามารถทำงานตามคำสั่งของภาษาที่ถูกป้อนเข้าไปได้
ไม่มีความคิดเห็น:
แสดงความคิดเห็น