วันอังคารที่ 6 ธันวาคม พ.ศ. 2554

ความหมายของซอฟต์แวร์

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

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

1.1 OS (Operating System)Sorry, your browser doesn't support Java(tm).  คือ โปรแกรมระบบที่ทำหน้าที่ควบคุมการใช้งานส่วนต่าง ๆ ของเครื่องคอมพิวเตอร์ เช่น ควบคุมหน่วยความจำ ควบคุมหน่วยประมวลผล ควบคุมหน่วยรับและควบคุมหน่วยแสดงผล ตลอดจนแฟ้มข้อมูลต่าง ๆ ให้มีประสิทธิภาพในการทำงานสูงที่สุด และสามารถใช้อุปกรณ์ทุกสาวนของคอมพิวเตอร์และช่วยจัดการกระบวนการพื้นฐานที่สำคัญ ๆ ภายในเครื่องคอมพิวเตอร์ เช่นการเปิด หรือปิดไฟล์ การสื่อสารกันระหว่างชิ้นส่วนต่าง ๆ ภายในเครื่อง การส่งข้อมูลออกสู่เครื่องพิมพ์หรือสู่จอภาพ เป็นต้น ก่อนที่คอมพิวเตอร์แต่ละเครื่องจะสามารถอ่านไฟล์ต่าง ๆ หรือสามารถใช้ซอฟต์แวร์ต่าง ๆ ได้จะต้องผ่านการดึงระบบปฏิบัติการออกมาฝังตัวอยู่ในหน่าวความจำก่อน ปัจจุบันนี้มีโปรแกรมระบบบอยู่หลายตัวด้วยกันซึ่งแต่ละตัวนั้นก็เป็นโปรแกรมระบบปฏิบัติการเหมือนกัน แต่ต่างกันที่ลักษณะการทำงานจะไม่เหมือนกัน ดังนี้
  -DOS (Disk operating System) เป็นระบบปฏิบัติการที่นิยมใช้กันมาตั้งแต่ในอดีตออกมาพร้อมกับเครื่องพีซีของไอบีเอ็มรุ่นแรก ๆ จากนั้นก็มีการพัฒนารุ่นใหม่ออกมาเรื่อย ๆ จนกระทั่งถึงเวอร์ชั่นสุดท้ายคือ เวอร์ชั่น 6.22 หลังจากที่มีการประกาศใช้วินโดวส์ 95 ก็คงจะไม่ผลิต DOS เวอร์ชชั่นใหม่ออกมาแล้ว โดยทั่วไปจะนิยมใช้วินโดวส์ 3. x ซึ่งถือว่าเป็นโปรแกรมเสริมชนิดหนึ่งที่ใช้ในดอส   -UNIX เป็นระบบ OS ที่สามารถใช้ร่วมกันได้หลายคน (Multiuser) หรือเป็นระบบปฏิบัติการแบบเครือข่าย โดยที่ผู้ใช้แต่ละคนจะต้องมีชื่อและพาสเวิร์ดส่วนตัว และสามารถเชื่อมโยงถึงกันได้ทั่วโลก โดยผ่านทางสายโทรศัพท์และมี Modem เป็นตัวกลางในการรับส่งข้อมูลหรือโอนย้ายข้อมูล นิยมใช้อย่างแพร่หลายในมหาวิทยาลัย หน่วยงานรัฐบาล หรือบริษัทเอกชนที่มีระบบคอมพิวเตอร์ใหญ่ ๆ ใช้ ในระบบยูนิกซ์เองก็มีวินโดวส์อีกชนิดหนึ่งใช้เรียกว่า X Windows สำหรับผู้ที่ต้องการใช้ระบบยูนิกซ์ในเครื่องพีซีที่บ้านก็มีเวอร์ชั่นสำหรับพีซีเรียกว่า Linux ซึ่งจะมีคำสั่งพื้นฐานคล้าย ๆ กับระบบยูนิกซ์   - LAN เป็นระบบปฏิบัติการแบบเครือข่ายเช่นเดียวกัน แต่จะใช้เชื่อมโยงกันใกล้ ๆ เช่น ในอาคารเดียวกันหรือระหว่างอาคารที่อยู่ใกล้กัน โดยใช้สาย Lan เป็นตัวเชื่อมโยง -WINDOWS เป็นระบบปฏิบัติการที่กำลังนิยมใช้กันมากในปัจจุบัน ซึ่งพัฒนามาถึงรุ่น Windows 2000 แล้ว บริษัทไมโครซอฟต์ได้เริ่มประกาศใช้ MS Windows 95 ครั้งแรกเมื่อ 24 สิงหาคม ค.ศ.1995 โดยมีความคิดที่ว่าจะออกมาแทน MS-DOS และ วินโดวส์ 3. X ที่ใช้ร่วมกันอยู่ ลักษณะของวินโดวส์ 95 จึงคล้ายกับเป็นระบบโอเอสที่มีทั้งดอสและวินโดวส์อยู่ในตัวเดียวกัน แต่เป็นวินโดวส์ที่มีลักษณะพิเศษกว่าวินโดวส์เดิม เช่น มีคุณสมบัติเป็น Plug and play ซึ่งสามารถจะรู้จักฮาร์ดแวร์ต่าง ๆ ที่ติดตั้งอยู่ในเครื่องได้โดยอัตโนมัติ มีลักษณะเป็นระบบ 32 บิต ในขณะที่วินโดวส์ เดิมเป็นระบบ 16 บิต เป็นต้น บริษัทไมโครซอฟต์ไม่ได้หยุดเพียงแค่วินโดวส์ 95 แต่ได้มีการพัฒนาเพิ่มฟังก์ชันใหม่ ๆ เข้าไป ในที่สุดก็ออกระบบโอเอสตัวถัดมาเป็น MS Windows 98 และ MS Windows 2000 ตามลำดับโดยที่มีการติดตั้ง และการใช้งานที่มีพื้นฐานไม่แตกต่างกันมากนัก จึงง่ายสำหรับผู้ใช้ในการปรับตัวเข้ากับระบบโอดอสใหม่ ๆ   - Windows NT เป็นระบบ OS ที่ผลิตจากบริษัทไมโครซอฟต์เข่นเดียวกัน เป็นระบบ 32 บิต มีรูปลักษณ์เป็นกราฟิกที่ต้องใช้เมาส์กล้ายกับวินโดวส์ทั่วไป แต่นิยมใช้ในระบบเวิร์กสเตชันมากกว่าในเครื่องพีซีทั่ว ไป   -OS/2 เป็นระบบ OS ที่ผลิตออกมาจากบริษัท IBM เป็นระบบ 32 บิต ที่มีรูปลักษณ์เป็นกราฟฟิกที่ต้องใช้เมาส์ คล้ายกับวินโดวส์ทั่วไปเช่นกัน
   1.2 Translation Program คือโปรแกรมที่ทำหน้าที่ในการแปลโปรแกรมหรือชุดคำสั่งที่เขียนด้วยภาษาที่ไม่ใช่ภาษาเครื่อง หรือภาษาเครื่องที่ไม่เข้าใจให้เป็นภาษาที่เครื่องสามารถรู้เรื่องเข้าใจ และนำไปปฏิบัติได้ เช่น ภาษา BASIC ,COBOL,C, PASCAL, FORTRAN, ASSEMBLY เป็นต้น สำหรับตัวแปลนั้นจะมี 3 แบบคือ
-Assembler เป็นโปแกรมที่ใช้แปลภาษาแอสแซมบลี ซึ่งมีลักษณะการแปลทีละคำสั่ง เมื่อทำตามคำสั่งนั้นเสร็จแล้ว ก็จะแปลคำสั่งถัดไปเรื่อย ๆ จนจบ-Interpreter เป็นโปรแกรมที่ใช้แปลภาษาเบสิก โดยจะแปลทีละคำสั่งแล้วทำตามคำสั่งนั้น แล้วแปลต่อไปเรื่อย ๆ จนจบโปรแกรม -Compiler เป็นโปรแกรมที่ใช้แปลภาษาระดับสูงให้เป็นภาษาเครื่อง ซึ่งจะแปลทั้งโปรแกรมให้เสร็จก่อน จากนั้นจึงจะปฏิบัติตามคำสั่งทีละคำสั่ง
              1.3 Utility Program คือ โปรแกรมระบบที่ทำหน้าที่ในการอำนวยความสะดวกให้กับผู้ใช้เครื่อง  คอมพิวเตอร์ ให้สามารถทำงานได้สะดวก รวดเร็วและง่ายขึ้น เช่น โปรแกรมที่ใช้ในการเรียงลำดับข้อมูล โปรแกรมโอนย้ายข้อมูลจากชนิดหนึ่งไปยังอักชนิดหนึ่ง โปรแกรมรวบรวมข้อมูล 2 ชุดเข้าด้วยกัน โปรแกรมคัดลอกข้อมูลเป็นต

               1.4 Diagnostic Program คือ โปรแกรมระบบที่ทำหน้าที่ตรวจสอบข้อผิดพลาดใน การทำงานของอุปกรณ์ต่าง ๆ ของเครื่องคอมพิวเตอร์ ได้แก่ โปแกรม QAPLUS โปรแกรม NORTON เป็นต้น และเมื่อพบข้อผิดพลาดก็จะแจ้งขึ้นบนจอภาพให้ทราบ

     2. ซอฟต์แวร์ประยุกต์ (Application Software) หมายถึง โปรแกรมที่ผู้ใช้คอมพิวเตอร์เป็นผู้เขียนมาใช้งานเอง เพื่อสั่งให้คอมพิวเตอร์ทำงานอย่างใดอย่างหนึ่งตามที่ต้องการ ซึ่งแบ่งได้ดังนี้
               2.1 User Program คือ โปรแกรมที่ผู้ใช้เขียนมาใช้เอง โดยใช้ภาษาระดับต่าง ๆ ทางคอมพิวเตอร์ เช่น ภาษา BSDIC , COBOL , PSDCSL , C , ASSEMBLY FORTRAN ฯลฯ ซึ่งการที่จะเลือกใช้ภาษาใดนั้นก็ขึ้นอยู่กับความเหมาะสมของงานเหล่านั้นด้วย เช่น โปรแกรมระบบบัญชี, โปแกรมควบคุมสต็อกสินค้า, โปแกรมแฟ้มทะเบียนประวัติ โปรแกรมคำนวณภาษี,โปรแกรมคิดเงินเดือน เป็นต้น
              2.2 Package Program คือ โปรแกรมสำเร็จรูปซึ่งเป็นโปรแกรมที่ถูกสร้างหรือเขียนขึ้นมาโดยบริษัทต่าง ๆ เสร็จเรียบร้อยแล้วพร้อมที่จะนำไปใช้งานต่าง ๆ ได้ทันทีตัวอย่างเช่น
          - Word Processor โปรแกรมที่ช่วยในการทำเอกสาร พิมพ์งานต่าง ๆ เช่น เวิร์ดจุฬา, เวิร์ดราชวิถี, Microsoft Word, WordPerfect, AmiPro เป็นต้น           - Spreadsheet โปรแกรมที่ใช้ในการคำนวณข้อมูล มีลักษณะเป็นตาราง เช่น Lotus 1-2-3, Microsoft Excel เป็นต้น           - Database โปรแกรมที่ใช้ในการทำงานทางด้านฐานข้อมูลจะใช้เก็บรวบรวมข้อมูลต่าง ๆ ที่มีขนาดใหญ่ และมีข้อมูลเป็นจำนวนมาก เช่น dBASE lll Plis, Foxbase, Microsoft Access, foxpro, Visual Foxpro เป็นต้น           - โปรแกรมที่ใช้ในการทำงานทางด้านการสร้างรูปภาพและกราฟฟิกต่าง ๆ รวมทั้งงานทางด้านสิ่งพิมพ์ การทำโบรชัวร์ แผ่นพับ นามบัตร เช่น CorelDraw, Photoshop, Harvard Graphic, Freelance Graphic, PowerPoint, PageMaker เป็นต้น  จากข้างต้นเป็นตัวอย่างของ Package Program ที่นิยมใช้งานกันในปัจจุบัน ที่จริงแล้ว Package Program สามารถแบ่งออกได้เป็น 9 ประเภทด้วยกัน สำหรับรายละเอียดของโปรแกรมแต่ละประเภทนั้น มีรายละเอียดดังนี้
            1.  โปรแกรมทางด้าน Word Processor      โปรแกรมทางด้าน Word Processor นั้น เป็นโปรแกรมที่ทำงานเกี่ยวกับทางด้านการประมวลผลคำ สามารถจัดทำเอกสาร รายงาน จดหมาย หนังสือต่าง ๆ ได้ ทำให้ได้งานที่มีประสิทธิภาพ สวยงาม 
            2. โปรแกรมทางด้าน Spreadsheet        โปรแกรมทางด้าน Spreadsheet เป็นโปรแกรมที่มีลักษณะเป็นกระดาษทำการขนาดใหญ่ หรือ เรียกว่า Worksheet ประกอบด้วยส่วนที่เป็น Row หรือแถวตามแนวนอนและส่วนที่เป็น Column หรือแถวตามแนวตั่ง ซึ่งใช้ในด้านการคำนวณเป็นส่วนมาก นอกจากนั้นยังมีการนำเสนอข้อมูลออกมาในรูปของกราฟโดยสร้างเป็นกราฟ 2 มิติและ 3 มิติได้อีกด้วย โปรแกรม Spreadsheet เหมาะกับการทำงานในด้านการบัญชี การเงิน การวิเคราะห์ข้อมูล หรืองานการคิดคะแนนและเกรดของนักศึกษา เป็นต้น 
              3.  โปรแกรมทางด้าน Database โปรแกรมประเภทนี้เป็นโปรแกรมที่ทำงานทางด้านการจัดการฐาน  ข้อมูล ช่วยจัดเก็บข้อมูล แก้ไข ค้นหา เพิ่มเติม รวมทั้งการจัดเรียงข้อมูล ทำให้ผู้ใช้สะดวกรวดเร็วสามารถทำงานได้เป็นระบบ โปรแกรม Database เหมาะกับการทำงานที่มีข้อมูลมาก ๆ เช่น การเก็บสต็อกสินค้าคงคลัง การเก็บประวัติพนักงาน การเก็บรายชื่อนักศึกษาในโรงเรียน การเก็บรายชื่อหนังสือในห้องสมุด เป็นต้น   
4.  โปรแกรมทางด้าน Graphic โปรแกรม Graphic ส่วนมากแล้วจะเกี่ยวกับทางด้านงานออกแบบ เขียนแบบวาดภาพ จัดทำสิ่งพิมพ์และจะเป็นทางด้านการนำเสนองาน สามารถนำไปประยุกต์ใช้ในงานโฆษณา ทำ Slide Show หรือนำไปใช้กับระบบ Multimedia ได้ ปัจจุบันโปรแกรมกลุ่มนี้เป็นที่นิยมมากสำหรับโปรแกรมที่ทำงานทางด้าน Graphic นั้น มีอยู่หลายโปรแกรมและแต่ละโปรแกรมนั้น ส่วนใหญ่จะทำงานคล้ายกัน แต่มีบางคำสั่งที่แตกต่างกันไปดังนี้
    - CorelDraw และ Photoshop จะทำเกี่ยวกับงานออกแบบ วาดภาพ จัดทำ สิ่งพิมพ์ ตกแต่งภาพให้สวยงาม เหมาะกับงานทางด้านโฆษณา     - Harvard Graphic, Freelance Graphic และ PowerPoint เหมาะกับงานที่ต้องการนำเสนอ หรือแสดงออกโดยการสร้าง Slide Show สามารถนำภาพและเสียงมาประกอบกับงานได้ ทำให้ได้ Presentation ที่สวยงามออกมา     - PageMaker เหมาะกับงานประเภทสิ่งพิมพ์ ใช้สร้างโบรชัวร์ แผ่นพับ ใบปลิว นามบัตร และการทำหนังสือ โปรแกรมที่นิยมใช้กับโรงพิมพ์มาก     5.  โปรแกรมเกม ( Game)    เป็นโปรแกรมที่แพร่หลายเป็นที่รู้จักกันทั่วไป ไม่ว่าจะเป็นเด็กหรือผู้ใหญ่ และปัจจุบันนี้มีโปรแกรมเกมต่าง ๆ มากมาย ทั้งแบบธรรมดาและแบบ 3 มิติ ซึ่งที่จริงแล้วโปรแกรมเกมส่วนใหญ่จะสร้างขึ้นมา เพื่อช่วยผ่อนคลายความตึงเครียดในการทำงานแต่ละส่วนใหญ่แล้วจะพบว่าเด็กจะเล่น เพื่อความสนุกสนานเพลิดเพลินมากกว่า ผู้ใหญ่ควรควบคุมเกมที่เด็ก ๆเล่นด้วย เพราะบางเกมเป็นลักษณะของการต่อสู้ เพื่อให้เกิดชัยชนะ ซึ่งจะทำให้เด็กสร้างนิสัยผิด ๆ กลายเป็นเด็กที่ชอบเอาชนะคนอื่นชอบการต่อสู้ และอาจเป็นคนดุร้าย เห็นแก่ตัวได้
    6.  โปรแกรมทางด้านการสร้างสถานการณ์จำลอง เป็นโปรแกรมที่ให้ผู้เล่นได้ทดลองสร้างสถานการณ์จำลองของงานที่อาจจะเกิดขึ้นได้หรืออาจจะเรียกว่า เกมส์ทางธุรกิจ โดยให้ผู้เล่นได้รู้จักวางแผนในการทำงาน คิดถึงผลกำไรขาดทุนที่อาจจะเกิดขึ้นได้ รู้จักจัดสรรงบประมาณที่มีอยู่ให้ได้ผลกำไรมากที่สุด

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

     8.  โปรแกรมคอมพิวเตอร์ช่วยสอน โปรแกรมประเภทนี้เรียกอีกอย่างหนึ่งว่า CAI (Computer Assisted Instruction) เป็นโปรแกรมที่นำมาสอนให้กับนักเรียนในวิชาต่าง ๆ โดยที่นักเรียนจะเรียนกับโปรแกรมบนคอมพิวเตอร์และครูเป็นผู้ชีแนะ ทดสอบ และวัดความเข้าใจ รวมทั้งสรุปเนื้อหาที่นักเรียนได้เรียนจากโปรแกรม CAI นี้ ปัจจุบันโปรแกรมประเภทนี้เริ่มนำเข้ามาใช้ในโรงเรียนแพร่หลายมากขึ้น เพราะทุกโรงเรียนมีคอมพิวเตอร์ใช้ ซึ่งเป็นการเปลี่ยนแปลงวิธีการสอนของครูวีหนึ่ง ที่ทำให้นักเรียนไม่รู้สึกเบื่อ และสนใจการเรียนมากขึ้นด้วย

  ความจำเป็นของการใช้ซอฟต์แวร์

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

      ซอฟต์แวร์และภาษาคอมผิวเตอร์

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

   

  *  อ้างอิง
http://web.ku.ac.th/schoolnet/snet1/software/software/