บทที่ 5 ซอฟต์แวร์

Download Report

Transcript บทที่ 5 ซอฟต์แวร์

บทที่ 5
ซอฟต์ แวร์
กลุ่มของซอฟต์ แวร์ ประเภทต่ างๆ
Software
System
Software
Application
Software
Package
Software
ซอฟต์ แวร์ ระบบ
ซอฟต์ แวร์ ระบบคือซอฟต์ แวร์ ท่ ีทาหน้ าที่เป็ นสื่อกลางในการ
ติดต่ อสื่อสารกับมนุษย์ เพื่อให้ สามารถใช้ งานได้ อย่ างมี
ประสิทธิภาพ เป็ นตัวควบคุมฮาร์ ดแวร์ ของระบบเครื่ อง
คอมพิวเตอร์ ซ่ งึ จะทางานใกล้ ชดิ กับฮาร์ ดแวร์ การทางานของ
คอมพิวเตอร์ ประกอบด้ วย หน่ วยอินพุต เอาต์ พุต หน่ วยความจา
และหน่ วยประมวลผลกลาง ดังนัน้ ในการทางานของคอมพิวเตอร์
จาเป็ นต้ องมีการดาเนินงานกับอุปกรณ์ พนื ้ ฐาน จึงต้ องมีซอฟต์ แวร์
ระบบเพื่อใช้ ในการจัดการระบบ
หน้ าที่หลักของซอฟต์ แวร์ ระบบ
 ใช้ ในการจัดการหน่วยอินพุต เอาต์พต
ุ เช่นการติดต่อกับคีย์บอร์ ด เมาส์
ลาโพง พรินเตอร์ และอุปกรณ์ตอ่ พ่วงอื่นๆ
 ใช้ ในการจัดการหน่วยความจา เพื่อนาข้ อมูลจากแหล่งเก็บข้ อมูลภายนอก
ต่างๆ มาเก็บไว้ ยงั หน่วยความจาหลัก หรื อในทานองกลับกัน คือนาข้ อมูล
จากหน่วยความจาหลักไปเก็บไว้ ยงั แหล่งเก็บข้ อมูลภายนอกต่างๆ
 ใช้ เป็ นตัวเชื่อมต่อระหว่างผู้ใช้ งานกับเครื่ องคอมพิวเตอร์ ทาให้ สามารถใช้
งานได้ ง่ายขึ ้นและมีประสิทธิภาพ เช่นการดูข้อมูลต่างๆ ที่อยูภ่ ายใน
คอมพิวเตอร์ ก็จะสามารถทาได้ โดยง่าย
ประเภทของซอฟต์ แวร์ ระบบ
 ซอฟต์ แวร์ ระบบปฏิบัตก
ิ าร
 ซอฟต์ แวร์ ตัวแปลภาษา
 ซอฟต์ แวร์ อรรถประโยชน์
ซอฟต์ แวร์ ระบบปฏิบัตกิ าร หรือโอเอส (OS)
ซอฟต์แวร์ ระบบปฏิบตั ิการ หรื อโอเอส (OS) เป็ นซอฟต์แวร์ ที่ทาหน้ าที่ใน
การบริหาร และจัดทรัพยากรต่างๆ ในระบบคอมพิวเตอร์ ดังเช่นจัดการกับ
ฮาร์ ดแวร์ ให้ กบั ผู้ใช้ เพื่อให้ สามารถใช้ งานได้ สะดวกและมีประสิทธิภาพ
เป็ นซอฟต์แวร์ ใช้ ในการดูแลระบบคอมพิวเตอร์ โดยเครื่ องคอมพิวเตอร์ ทกุ
เครื่ องจะต้ องมีซอฟต์แวร์ ระบบปฏิบตั ิการนี ้จึงจะสามารถใช้ งาน
คอมพิวเตอร์ ได้ หากปราศจากซอฟต์แวร์ ระบบปฏิบตั ิการแล้ ว ก็จะไม่
สามารถใช้ งานคอมพิวเตอร์ ได้ เลยเนื่องจากไม่มีสื่อกลางในการ
ติดต่อสื่อสารกับอุปกรณ์ตา่ งๆ ของคอมพิวเตอร์ ซอฟต์แวร์
ระบบปฏิบตั ิการมีอยูห่ ลายชนิด
ซอฟต์ แวร์ ระบบปฏิบัตกิ าร (1)
ระบบปฏิบัตกิ ารดอส (Dos) เป็ นซอฟต์แวร์ จดั ระบบงานที่พฒ
ั นาเมื่อ
แรกเริ่มของการใช้ งานคอมพิวเตอร์ ในการใช้ งานจะเป็ นการสัง่ งานโดยใช้
คาสัง่ เป็ นตัวอักษร ในปั จจุบนั ระบบปฏิบตั ิการดอสไม่ได้ รับความนิยม
เนื่องจากมีการใช้ งานยาก ต้ องจาคาสัง่ ต่างๆ ถึงจะสามารถใช้ งานได้ แต่
อย่างไรก็ตามระบบปฏิบตั ิการใหม่ๆ ก็ยงั คงมีระบบปฏิบตั ิการดอสควบคู่
เพื่อความเหมาะสมสาหรับงานบางอย่าง
ซอฟต์ แวร์ ระบบปฏิบัตกิ าร (2)
ระบบปฏิบัตกิ ารวินโดว์ เป็ นระบบปฏิบตั ิการที่พฒ
ั นาต่อจากดอส เพื่อ
เน้ นการใช้ งานที่ง่ายขึ ้น สามารถทางานหลายงานพร้ อมกันได้ โดยจะ
เปลี่ยนแปลงการสัง่ คอมพิวเตอร์ จากการพิมพ์คาสัง่ เป็ นรูปแบบของการใช้
รูปแบบกราฟิ ก ผู้ใช้ งานสามารถใช้ เมาส์เลื่อนตัวชี ้ตาแหน่งเพื่อเลือก
ตาแหน่งที่ปรากฏบนจอภาพ ทาให้ ใช้ งานคอมพิวเตอร์ ได้ ง่าย วินโดว์จงึ
ได้ รับความนิยมมากในปั จจุบนั
ซอฟต์ แวร์ ระบบปฏิบัตกิ าร (3)
ระบบปฏิบัตกิ ารโอเอสทู (OS/2) เป็ นระบบปฏิบตั ิการที่มีลกั ษณะการ
ติดต่อสื่อสารโดยการใช้ รูปแบบกราฟิ กแบบเดียวกับวินโดว์ แต่บริษัท
ผู้พฒ
ั นาคือบริษัทไอบีเอ็ม ปั จจุบนั ไม่ได้ รับความนิยมมากนักและได้ เลิก
การพัฒนาไปตังแต่
้ ปี พ.ศ.2549
ซอฟต์ แวร์ ระบบปฏิบัตกิ าร (4)
ระบบปฏิบัตกิ ารยูนิกซ์ (UNIX) เป็ นระบบปฏิบตั ิการที่พฒ
ั นามาเพื่อใช้
กับมินิคอมพิวเตอร์ เป็ นส่วนใหญ่ เหมาะสาหรับใช้ เป็ นระบบปฏิบตั ิการ
สาหรับเครื่ องผู้ให้ บริการต่างๆ ระบบปฏิบตั ิการยูนิกซ์เป็ นระบบปฏิบตั ิการ
ที่สามารถใช้ งานได้ หลายงานพร้ อมกัน และทางานได้ หลาย ๆ งานในเวลา
เดียวกัน (Multitasking) ยูนิกซ์จงึ เหมาะสมกับเครื่ องที่เชื่อมโยงและต่อกับ
เครื่ องปลายทางได้ หลายเครื่ องพร้ อมกัน
ซอฟต์ แวร์ ระบบปฏิบัตกิ าร (5)
ระบบปฏิบัตกิ ารลินุกซ์ (Linux) คือระบบปฏิบตั ิการแบบยูนิกซ์ชนิดหนึง่ โดย
ใช้ ลินกุ ซ์ เคอร์ เนล เป็ นศูนย์กลางทางานร่วมกับไลบรารี และเครื่ องมืออื่น ลินกุ ซ์
เป็ นซอฟต์แวร์ เสรี และซอฟต์แวร์ โอเพนซอร์ ส ที่นกั พัฒนาโปรแกรมทุกๆ คน
สามารถดูหรื อนาโค้ ดของลินกุ ซ์ไปแก้ ไข ดัดแปลง ปรับปรุง ใช้ งาน และแจกจ่าย
ได้ อย่างไม่ผิดข้ อกฎหมาย ลินกุ ซ์จาหน่ายหรื อแจกฟรี ในลักษณะเป็ นโปรแกรม
สาเร็จ (Package) โดยผู้จดั ทาจะรวมซอฟต์แวร์ สาหรับใช้ งานในด้ านอื่นเป็ นชุด
เข้ าด้ วยกัน ระบบปฏิบตั ิการลินกุ ซ์เหมาะสาหรับร้ านค้ าที่ไม่ต้องการเสีย
ค่าลิขสิทธิ์ซอฟต์แวร์ ทาให้ สามารถลดต้ นทุนในการดาเนินการได้ เป็ นอย่างสูง
ซอฟต์ แวร์ ตัวแปลภาษา
ซอฟต์แวร์ ตวั แปลภาษาเป็ นซอฟต์แวร์ ในการสัง่ งานให้ คอมพิวเตอร์ ทางานตามคาสัง่ ที่
เราป้อนเข้ าไป ในการพัฒนาซอฟต์แวร์ จาเป็ นต้ องมีซอฟต์แวร์ ที่ใช้ ในการแปลภาษา
ระดับสูง เพื่อแปลภาษาระดับสูงให้ เป็ นภาษาเครื่ อง (Compiler) เพื่อให้ คอมพิวเตอร์
สามารถเข้ าใจและทาตามคาสัง่ ได้ ภาษาคอมพิวเตอร์ (Computer Language) คือ
ภาษาที่ใช้ สงั่ งานคอมพิวเตอร์ โดยคอมพิวเตอร์ สามารถเข้ าใจและนาไปประมวลผลได้
ภาษาคอมพิวเตอร์ มีทงภาษาระดั
ั้
บต่าและภาษาระดังสูง การเขียนภาษาระดับต่าจะ
เขียนได้ ต้องเข้ าใจโครงสร้ างทางฮาร์ ดแวร์ ทาให้ ยากต่อการเขียนและการพัฒนา ภาษา
ระดับสูงเป็ นภาษาที่มีสญ
ั ลักษณ์ของภาษาที่มนุษย์สามารถเข้ าใจได้ ง่าย ดังนันใน
้
ปั จจุบนั ในการพัฒนาโปรแกรมต่างๆ จะใช้ ภาษาระดับสูงเป็ นเครื่ องมือในการพัฒนา
ภาษาระดับสูงมีหลายภาษาดังเช่นภาษาปาสคาล (Pascal) ภาษาเบสิก (Basic)
ภาษาซี (C) ภาษาจาวา (JAVA) ภาษาการคานวณทางคณิตศาสตร์ (MATLAB) และ
อื่นๆ อีกมากมาย
ตัวอย่ างโปรแกรมภาษาซี
ซอฟต์ แวร์ อรรถประโยชน์ (SYSTEM UTILITIES)
เป็ นโปรแกรมที่ช่วยอานวยความสะดวกในการจัดการกับเครื่ องคอมพิวเตอร์ ใน
ด้ านต่างๆ ทาให้ ประสิทธิภาพในการทางานที่ดีขึ ้น ซอฟต์แวร์ อรรถประโยชน์ใน
ปั จจุบนั มีเป็ นจานวนมากเพื่อเสริมให้ เครื่ องคอมพิวเตอร์ ทางานได้ อย่างมี
ประสิทธิภาพ เช่น โปรแกรมตรวจจับไวรัส โปรแกรมจัดการกับข้ อมูล โปรแกรม
เกี่ยวกับการลบข้ อมูล การเขียนข้ อมูล โปรแกรมเกี่ยวกับการจักการกับระบบ
ดิสก์ ฮาร์ ดดิสก์ โปรแกรมรักษาหน้ าจอภาพ โปรแกรมจัดเรี ยงข้ อมูล โปรแกรม
ติดต่อสื่อสาร โปรแกรมบีบอัดข้ อมูล เป็ นต้ น
โปรแกรมอรรถประโยชน์ในการจัดเรี ยงข้ อมูลในดิสก์ (Disk Defragmenter)
โปรแกรมอรรถประโยชน์ในการบีบอัดข้ อมูล
(WinRAR)
ซอฟต์ แวร์ ประยุกต์
ซอฟต์แวร์ ประยุกต์คือ ซอฟต์แวร์ ที่ถกู สร้ างขึ ้นมาเพื่อให้ ผ้ พู ฒ
ั นาสามารถ
นาไปใช้ ได้ อย่างสะดวกและรวดเร็ว ทาให้ ประสิทธิภาพในการทางานที่ดี
ขึ ้น ซึง่ อาจจะเป็ นซอฟต์แวร์ สาเร็จหรื อเป็ นซอฟต์แวร์ ที่ถูกสร้ างขึ ้นมาใช้
งานในด้ านต่างๆ ตามความต้ องการของผู้ใช้
ลักษณะการใช้ งานของซอฟต์ แวร์ ประยุกต์
 ด้ านการใช้ งานทางธุรกิจ
 ด้ านการออกแบบและด้ านสื่อประสม
 ด้ านการใช้ งานส่วนตัว
 ด้ านการติดต่อสื่อสาร
ซอฟต์ แวร์ สาเร็จรูป
ซอฟต์แวร์ สาเร็จรูปหมายถึงซอฟต์แวร์ ประยุกต์ชนิดหนึง่ ที่มีผ้ จู ดั ทาไว้ เพื่อ
ใช้ ในการทางานประเภทต่างๆ หรื อในด้ านต่างๆ ตามความสามารถของ
โปรแกรม โดยผู้ใช้ สามารถนาซอฟต์แวร์ ประเภทนี ้ไปใช้ กบั การทางานส่วน
ตนหรื อการทางานของบริษัทของตนได้ แต่จะไม่สามารถดัดแปลงหรื อ
แก้ ไขโปรแกรมได้ ผู้ใช้ ไม่จาเป็ นต้ องเขียนโปรแกรมขึ ้นมาเอง จึงเป็ นการ
ประหยัดเวลา แรงงาน และค่าใช้ จ่ายในการเขียนโปรแกรม
ภาษาคอมพิวเตอร์
ภาษาคอมพิวเตอร์ เป็ นภาษาที่คอมพิวเตอร์ สามารถเข้ าใจและประมวลผล
ได้ ภาษาคอมพิวเตอร์ จะเป็ นภาษาเครื่ องซึง่ จะเป็ นรหัสดิจิทลั เนื่องจาก
คอมพิวเตอร์ ทางานในสภาวะโลจิก “0” และ “1” ภาษาคอมพิวเตอร์ เป็ น
ภาษาที่มนุษย์เข้ าใจได้ ยาก ซึง่ จะไม่นิยมเขียนโปรแกรมเป็ นภาษาเครื่ อง
ในปั จจุบนั ในการเขียนโปรแกรมจะเป็ นเขียนโปรแกรมด้ วยภาษาระดับสูง
เนื่องจากเป็ นภาษาที่เข้ าใจง่ายและใกล้ เคียงกับภาษามนุษย์
ประเภทของภาษาคอมพิวเตอร์ (1)
ภาษาระดับต่าที่สุดคือ ภาษาเครื่ อง (Machine language) ซึง่ รหัสคาสัง่
จะเป็ นเลขฐานสองคือ “1” และ “0” ภาษาเครื่ องจะเป็ นภาษาที่
คอมพิวเตอร์ เข้ าใจเนื่องจากคอมพิวเตอร์ ทางานเป็ นระบบดิจิทลั ที่อยูใ่ น
รูปแบบของเลขฐานสอง
1100111101010101
0011111101110111
0110110101010101
0000100001010101
1110000001010100
ประเภทของภาษาคอมพิวเตอร์ (2)
ภาษาที่สงู กว่าภาษาเครื่ องเล็กน้ อยคือโปรแกรมภาษาแอสแซมบลี (Assembly
Language Program) ภาษานี ้จะใช้ ข้อความหรื อสัญลักษณ์ต่างๆ เป็ นคาสัง่ ในการสัง่ งาน
ให้ คอมพิวเตอร์ ทางานตามที่เราต้ องการ ดังเช่นคาสัง่ Mov Ax,Bx ซึง่ หมายความว่าเป็ น
การย้ ายข้ อมูลที่อยู่ในเรจิสเตอร์ Bx ไปเก็บไว้ ยงั เรจิสเตอร์ Ax การเขียนโปรแกรมภาษา
แอสแซมบลีจะเป็ นการเขียนที่ต้องเข้ าใจโครงสร้ างของระบบคอมพิวเตอร์ จึงจะสามารถ
เขียนโปรแกรมภาษาแอสแซมบลีได้ เนื่องจากต้ องจัดการข้ อมูลต่างๆ ที่เก็บใน
หน่วยความจาและรี จิสเตอร์ ของไมโครโปรเซสเซอร์ โดยตรง ตัวอย่างภาษาแอสแซมบลี
Mov A, R0
Mov R1, 20H
Add A,R1
Mov 21H, A
Mov 22H,R1
เอาค่าที่อยู่ในเรจิสเตอร์ R0 มาเก็บไว้ ยงั เรจิสเตอร์ A
เอาค่าที่อยู่ในหน่วยความจาตาแหน่ง 20H มาเก็บไว้ ยงั เรจิสเตอร์ R1
เอาค่าที่อยู่ในเรจิสเตอร์ R1 มาบวกกับค่าที่อยู่ในเรจิสเตอร์ A
เอาค่าที่อยู่ในเรจิสเตอร์ A มาเก็บไว้ ยงั ตาแหน่งหน่วยความจาที่ 21H
เอาค่าที่อยู่ในเรจิสเตอร์ R1 มาเก็บไว้ ยงั ตาแหน่งหน่วยความจาที่ 22H
ประเภทของภาษาคอมพิวเตอร์ (3)
ภาษาระดับสูงคือภาษาที่ถกู สร้ างขึ ้นมาเพื่อช่วยให้ สามารถใช้ งานได้ ง่ายขึ ้น เช่นภาษาซี ภาษาจา
วา ภาษาปาสคาล ภาษาซี ภาษาจาวา ภาษาปาสคาล ภาษาเบสิก และภาษาระดับสูงอื่นๆ ช่วยให้
โปรแกรมเมอร์ เขียนโปรแกรมด้ วยภาษาที่มีความใกล้ เคียงกับภาษามนุษย์ และโปรแกรมเมอร์ ไม่
จาเป็ นต้ องจัดการค่าต่างๆ ที่อยู่ในรี จิสเตอร์ หรื อหน่วยความจาเองเหมือนกับภาษาแอสแซมบลี
#include <stdio.h>
void main(void)
{
int a,b,c;
printf("Input a");
scanf("%i",a);
c = a*a;
printf("Result of C = %i",c);
}
รูปแบบของการแปลงภาษาระดับสูงไปเป็ นภาษาเครื่อง
High level
Language
#include <stdio.h>
#include <conio.h>
void main(void)
{
int a,b,c;
printf("Input a");
scanf("%i",a);
c = a*a;
printf("Result of C = %i",c);
}
Compiler
Assembly
Language
Mov A, R0
Mov R1, 20H
Add A,R1
Mov 21H, A
Mov 22H,R1
Assembler
Machine
Language
1100111101010101
0011111101110111
0110110101010101
0000100001010101
1110000001010100
แบบฝึ กหัดทบทวน
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
ซอฟต์แวร์ คืออะไร และทาหน้ าที่อะไร
ซอฟต์แวร์ สามารถแบ่งออกได้ 3 กลุม่ ใหญ่ประกอบด้ วยซอฟต์แวร์ อะไรบ้ าง
ซอฟต์แวร์ อะไรที่เป็ นสื่อกลางในการติดต่อระหว่างมนุษย์กบั คอมพิวเตอร์ ให้ สามารถใช้ งาน
อุปกรณ์ตา่ งๆ ของคอมพิวเตอร์ ได้ โดยง่าย
ซอฟต์แวร์ ระบบคืออะไร จงอธิบาย
ซอฟต์แวร์ อรรถประโยชน์คืออะไร พร้ อมทังยกตั
้ วอย่างซอฟต์แวร์ อรรถประโยชน์มา 3 ตัวอย่าง
ซอฟต์แวร์ ประยุกต์คืออะไร จงอธิบาย
จงยกตัวอย่างของซอฟต์แวร์ ระบบปฏิบตั ิการมา 3 ตัวอย่าง
ซอฟต์แวร์ ตวั แปลภาษาคืออะไร พร้ อมทังยกตั
้ วอย่างซอฟต์แวร์ ตวั แปลภาษามา 3 ตัวอย่าง
ซอฟต์แวร์ สาเร็จรูปคืออะไร จงอธิบายพร้ อมทังยกตั
้ วอย่างซอฟต์แวร์ สาเร็จรูปมา 3 ตัวอย่าง
ภาษาระดับต่า ภาษาระดับสูงคืออะไร พร้ อมทังยกตั
้ วอย่างอธิบาย
หลักการทางานของการแปลภาษาระดับสูงให้ เป็ นภาษาเครื่ อง มีหลักการในการทางานอย่างไร
จงยกตัวอย่างของภาษาระดับสูงในปั จจุบนั มา 5 ตัวอย่าง
http://www.udru.ac.th
เอกสารอ้ างอิง
งามนิจ อาจอินทร์ , ความรู้ท่ วั ไปเกี่ยวกับวิทยาการคอมพิวเตอร์ ., กรุงเทพฯ, 2542.
จุฑารัตน์ สมจริ ง [Online]. Available: http://vcharkarn.com [1 มีนาคม 2552].
พรรณา พูนพิน [Online]. Available: http://web.bsru.ac.th/~panna/learning.html
[1 มีนาคม 2552].
ไพศาล โมลิสกุลมงคล, ประสงค์ ประณีตพลกรัง, อนุโชต วุฒิพรพงษ์ และ ศรายุธ คลังทอง,
สถาปั ตยกรรมคอมพิวเตอร์ (Computer Architecture)., กรุงเทพฯ, 2547.
ภาควิชาวิทยาการคอมพิวเตอร์ มหาวิทยาลัยบูรพา, เอกสารประกอบการสอนวิชา
เทคโนโลยีสารสนเทศและการสื่อสาร., 2552.
วิกิพีเดีย [Online]. Available: http://th.wikipedia.org/wiki [2552].
สัลยุทธ์ สว่างวรรณ, สถาปั ตยกรรมคอมพิวเตอร์ ., กรุงเทพฯ, 2546.
สุทธิพนั แสนละเอียด, ติดตัง้ และแก้ ปัญหา ฉบับช่ างคอมมืออาชีพ 2010., นนทบุรี, 2552
http://www.udru.ac.th
http://www.udru.ac.th