3.2 หลักการทำงานของคอมพิวเตอร์
          การทำงานของคอมพิวเตอร์จะเริ่มจากผู้ใช้ป้อนข้อมูลผ่านทางอุปกรณ์ของหน่วยรับเข้า (input device) เช่น คีย์บอร์ด เมาส์ ข้อมูลจะถูกเปลี่ยนให้เป็นสัญญาณดิจิทัล ซึ่งประกอบด้วย 0 และ 1 แล้วส่งต่อไปยังหน่วยประมวลผลกลาง เพื่อประมวลผลตามคำสั่ง ในระหว่างการประมวลผล หากมีคำสั่งให้นำผลลัพธ์จากการประมวลผลไปจัดเก็บในหน่วยความจำ ข้อมูลดังกล่าวจะถูกส่งไปยังแรม (Random Access Memory : Ram) ซึ่งทำหน้าที่เก็บข้อมูลจากการประมวลผลเป็นการชั่วคราว ขณะเดียวกัน อาจมีคำสั่งให้นำผลลัพธ์จากการประมวลผลดังกล่าวไปแสดงผลผ่านทางอุปกรณ์ของหน่วยส่งออก เช่น จอภาพ หรือเครื่องพิมพ์ นอกจากนี้เราสามารถบันทึกข้อมูลที่อยู่ในแรมลงในอุปกรณ์ของหน่วยเก็บข้อมูล เช่น แผ่นบันทึก แผ่นซีดี เพื่อนำข้อมูลดังกล่าวกลับมาใช้อีกในอนาคต โดยการอ่านข้อมูลที่บันทึกในสื่อดังกล่าวผ่านทางเครื่องขับหรือไดร์ฟ (drive) การส่งผ่านข้อมูลไปยังหน่วยต่างๆ ภายในระบบคอมพิวเตอร์ผ่านทางระบบบัส (bus)


รูปที่3.2 การทำงานของคอมพิวเตอร์

3.2.1 ซีพียู และการประมวลผลข้อมูล
          ซีพียู (Central Processing Unit : CPU) มีลักษณะเป็นชิป (chip) ที่ติดตั้งอยู่บนเมนบอร์ดภายในเครื่องคอมพิวเตอร์ ซึ่งชิปดังกล่าวเป็นสารกึ่งตัวนำขนาดเล็ก ภายในบรรจุวงจรอิเล็กรอนิกส์ต่างๆ ไว้มากมาย โดยวงจรจะประกอบด้วยทรานซิสเตอร์ขนาดเล็กเป็นจำนวนมาก บางครั้งจึงเรียกชิปต่างๆ ว่า ไอซี


รูปที่3.3 ตัวอย่างของซีพียู

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


วงรอบการทำงานของคำสั่ง (machine cycle)
          การทำงานของคอมพิวเตอร์จะต้องทำตามโปรแกรมที่กำหนดไว้ในหน่วยความจำ โดยโปรแกรมเกิดจากการนำคำสั่งมาต่อเรียงกัน เมื่อคอมพิวเตอร์ทำงาน หน่วยควบคุมทำการอ่านคำสั่งต่างๆ เข้ามาประมวลผลในซีพียู โดยวงรอบของการทำคำสั่งของซีพียูประกอบด้วยขั้นตอนการทำงานพื้นฐาน 4 ขั้นตอน ดังนี้
          1. ขั้นตอนการรับเข้าข้อมูล (fetch) เริ่มแรกหน่วยควบคุมรับรหัสคำสั่งและข้อมูลที่จะประมวลผลจากหน่วยความจำ
          2. ขั้นตอนการถอดรหัส (decode) เมื่อรหัสคำสั่งเข้ามาอยู่ในซีพียูแล้ว หน่วยควบคุมจะถอดรหัสคำสั่งแล้วส่งคำสั่งและข้อมูลไปยังหน่วยคำนวณและตรรกะ
          3. ขั้นตอนการทำงาน (execute) หน่วยคำนวณและตรรกะทำการคำนวณโดยใช้ข้อมูลที่ได้รับมาถอดรหัสคำสั่ง และทราบแล้วว่าต้องทำอะไร ซีพียูก็จะทำตามคำสั่งนั้น
          4. ขั้นตอนการเก็บ (store) หลังจากทำคำสั่งก็จะเก็บผลลัพธ์ที่ได้ไว้ในหน่วยความจำ
          ซีพียูยุคเก่า การทำคำสั่งแต่ละคำสั่งจะต้องทำวงรอบคำสั่งให้จบก่อน จากนั้นจึงทำวงรอบคำสั่งของคำสั่งต่อไป สำหรับซีพียูในยุคปัจจุบันได้มีการพัฒนาให้ทำงานได้เร็วขึ้น โดยมีการแบ่งวงรอบคำสั่งนี้เป็นวงรอบย่อยๆ อีก มีการนำเทคนิคการทำงานแบบสายท่อ (pipeline) มาใช้ โดยขณะที่ทำวงรอบคำสั่งแรกอยู่ ก็มีการอ่านรหัสคำสั่งของคำสั่งถัดไปเข้ามาด้วย ซึ่งจะทำให้การทำงานโดยรวมของซีพียูเร็วขึ้นมาก

 

          หน่วยควบคุม (control unit) เป็นหน่วยที่ทำหน้าที่ประสานงาน และควบคุมการทำงานของคอมพิวเตอร์ ควบคุมให้อุปกรณ์รับข้อมูล ส่งข้อมูลไปที่หน่วยความจำ ติดต่อกับอุปกรณ์แสดงผลเพื่อสั่งให้นำข้อมูลจากหน่วยความจำไปยังอุปกรณ์แสดงผล โดยหน่วยควบคุมของคอมพิวเตอร์จะแปลความหมายของคำสั่งในโปรแกรมของผุ้ใช้ และควบคุมให้อุปกรณ์ต่างๆ ทำงานตามคำสั่งนั้นๆ
          หน่วยคำนวณและตรรกะ หรือ เอแอลยู (Arithmetic-Logic Unit : ALU) เป็นหน่วยที่ทำหน้าที่ในการคำนวณต่างๆ ทางคณิตศาสตร์ ได้แก่ การบวก ลบ คูณ หาร และเปรียบเทียบทางตรรกะ เพื่อทำการตัดสินใจ เช่น การเปรียบเทียบข้อมูล การเปรียบเทียบว่าจริงหรือเท็จ
          การทำงานของเอแอลยู จะรับข้อมูลจากหน่วยความจำมาไว้ในที่เก็บชั่วคราวของเอแอลยูที่เรียกว่า เรจิสเตอร์ (register) เพื่อทำการคำนวณแล้วส่งผลลัพธ์กลับไปยังหน่วยความจำ


รูปที่3.4 หน่วยความจำแบบแฟลซที่อยู่บนเมนบอร์ด

3.2.2 หน่วยความจำ และการจัดเก็บข้อมูล
          หน่วยความจำ (memory unit) เป็นส่วนประกอบที่สำคัญบนเมนบอร์ดที่ทำงานร่วมกับซีพียูโดยตรง หน่วยความจำแบ่งออกเป็น 2 ชนิด คือ
          1) หน่วยความจำแบบไม่สามารถลบเลือนได้ (non volatile memory) เป็นหน่วยความจำที่สามารถเก็บข้อมุลได้ แม้ว่าไม่มีกระแสไฟฟ้าหล่อเลี้ยง ตัวอย่างของหน่วยความจำชนิดนี้ เชี่น รอม และหน่วยความจำแบบแฟรซ
          - รอม (Read Only Memory : ROM) เป็นหน่วยความจำแบบอ่านได้อย่างเดียวไม่สามารถลบและเขียนข้อมูลใหม่ได้
          - หน่วยความจำแบบแฟรซ (flash memory) เป็นหน่วยความจำที่สามารถลบและเขียนข้อมูลใหม่ได้
          ในเครื่องคอมพิวเตอร์มีการใช้รอมในการเก็บไบออส (Basic Input Output System : BIOS) ไบออสทำหน้าที่เก็บข้อมูล โปรแกรมและคำสั่งพื้นฐานที่สำคัญในการเริ่มต้นกระบวนการบูต (boot) ของเครื่องคอมพิวเตอร์ แต่ในปัจจุบันได้เปลี่ยนมาใช้หน่วยความจำแบบแฟรซในการเก็บไบออสแทน
          2) หน่วยความจำแบบลบเลือนได้ (volatile memory) เป็นหน่วยความจำที่ต้องใช้กระแสไฟฟ้าหล่อเลี้ยงเพื่อเก็บข้อมูล หากเกิดไฟฟ้าดับ ข้อมูลและโปรแกรมคำสั่งจะสูญหายไป หน่วยความจำชนิดนี้ เช่น แรม
          แรม (Random Access Memory : RAM) สามารถแบ่งออกเป็น 2 ประเภท คือ
          1. สแตติกแรม หรือเอสแรม (Static RAM : SRAM) มักพบในตัวซีพียูทำหน้าที่เป็นหน่วยความจำภายในซีพียูที่เรียกว่าหน่วยความจำแคช ซึ่งจะมีความเร็วสูงกว่าไดนามิกแรม
          2. ไดนามิกแรม หรือ ดีแรม (Dynamic RAM : DRAM) เป็นหน่วยความจำที่ใช้ในการจดจำข้อมูลและโปรแกรมต่างๆ ที่อยู่ระหว่างการประมวลผลของคอมพิวเตอร์ เป็นหน่วยความจำที่มีอยู่ในเครื่องคอมพิวเตอร์ส่วนบุคคล หรือพีซีมากที่สุด เนื่องจากราคาไม่แพงและมีความจุสูง


รูปที่3.5 ก เอสแรม

รูปที่3.5 ข ดีแรม

          ในการประมวลผลของคอมพิวเตอร์ เช่น ถ้าต้องการให้คอมพิวเตอร์แสดงผลการบวกตัวเลขสองจำนวน ซีพียูจะต้องติดต่อกับแรมที่ใช้เก็บชุดคำสั่งและข้อมูลต่างๆ ไว้


รูปที่3.6 แสดงผลชุดคำสั่งที่ผ่านการประมวลผลจากซีพียู

 

3.2.3 ระบบบัสกับการทำงานร่วมกันของคอมพิวเตอร์ และอุปกรณ์ต่างๆ
          ในเครื่องคอมพิวเตอร์นั้น มีเมนบอร์ดที่สามารถติดตั้งอุปกรณ์ต่างๆ เช่น ซีพียู หน่วยความจำและฮาร์ดดิสก์ โดยการส่งข้อมูลและคำสั่งระหว่างอุปกรณ์ จะอยู่ในรูปของสัญญาณไฟฟ้าที่ถูกส่งผ่านระบบส่งถ่ายข้อมูลที่เรียกว่าบัส (bus)


รูปที่3.7 ระบบบัส

          ขนาดของบัส (bus width) กำหนดโดยจำนวนบิตที่คอมพิวเตอร์สามารถถ่ายโอนข้อมูลได้ในหนึ่งครั้ง ตัวอย่างเช่น บัส 32 บิต สามารถรับส่งข้อมูลได้ครั้งละ 32 บิต บัสขนาด 64 บิต สามารถรับส่งข้อมูลได้ครั้งละ 64 บิต เป็นต้น บัสที่มีจำนวนบิตมากจะทำให้การรับส่งข้อมูลของระบบคอมพิวเตอร์ทำได้เร็วขึ้น
          การบอกความเร็วบัสมักวัดเป็นจำนวนครั้งที่รับส่งข้อมูลได้ในหนึ่งหน่วยเวลา ซึ่งมีหน่วยเป็นเฮิรตซ์ (Hz) เช่น บัสที่มีความเร็ว 1 MHz หมายความว่าบัสนี้สามารถรับส่งข้อมูลได้หนึ่งล้านครั้งต่อวินาที เครื่องคอมพิวเตอร์ที่พบในปัจจุบันจะมีค่าความเร็วบัสเป็น 667,800,1066 หรือ 1333 MHz ถ้าความเร็วบัสมีค่ามากหมายความว่าสามารถรับส่งข้อมูลได้เร็ว ก็จะทำให้เวลาการทำงานของโปรแกรมเร็วขึ้นไปด้วย

Reference ภาพบางส่วน : http://www2.krusunanta.net
ภาพประกอบจากหนังสือเทคโนโลยีสารสนเทศและการสื่อสาร ชั้นมัธยมศึกษาปีที่ 4-6