วันพุธที่ 27 พฤศจิกายน พ.ศ. 2556

ประวัติคอมพิวเตอร์ความเป็นมา

ประวัติคอมพิวเตอร์ความเป็นมา

คอมพิวเตอร์ (computer) คือ เครื่องมือหรืออุปกรณ์อิเล็กทรอนิกส์ที่มีความสามารถในการคำนวนอัตโนมัติตามคำสั่ง ส่วนที่ใช้ประมวลผลเรียกว่าหน่วยประมวลผล ชุดของคำสั่งที่ระบุขั้นตอนการคำนวนเรียกว่าโปรแกรมคอมพิวเตอร์ ผลลัพธ์ที่ได้ออกมานั้นอาจเป็นได้ทั้ง ตัวเลข ข้อความ รูปภาพ เสียง หรืออยู่ในรูปอื่น ๆ อีกมากมาย
คอมพิวเตอร์ เป็นอุปกรณ์ที่ใช้นำเข้า (input) ข้อมูลเพื่อทำการประมวลผล(process) และส่งออก (output)ผลลัพธ์ที่ได้ออกมา
ลักษณะทางกายภาพของคอมพิวเตอร์นั้นมีหลากหลาย มีทั้งขนาดที่ใหญ่มากจนต้องใช้ห้องทั้งห้องในการบรรจุ และขนาดเล็กจนวางได้บนฝ่ามือ การจัดแบ่งประเภทของคอมพิวเตอร์สามารถจัดแบ่งได้ตามขนาดทางกายภาพเป็นสำคัญ ซึ่งมักจะแปลผันกับประสิทธิภาพความเร็วในการประมวลผล โดยขนาดคอมพิวเตอร์ที่มีขนาดใหญ่ที่สุดเรียกว่า ซูเปอร์คอมพิวเตอร์ ใช้กับการคำนวนผลทางวิทยาศาสตร์ ขนาดรองลงมาเรียกว่า เมนเฟรม (mainframe) มักใชัในบริษัทขนาดใหญ่ที่ต้องมีการประมวลผลธุรกรรมทางธุรกิจจำนวนมากๆ สำหรับคอมพิวเตอร์ขนาดเล็กที่ใช้ในระดับบุคคลเรียกว่า คอมพิวเตอร์ส่วนบุคคล และคอมพิวเตอร์ส่วนบุคคลที่พกพาได้เรียกว่า คอมพิวเตอร์โน๊ตบุ๊ค (notebook computer) ส่วนคอมพิวเตอร์ขนาดเล็กที่สามารถวางบนฝ่ามือได้เรียกว่า พีดีเอ (PDA) หรือ Personal Digital Assistant อย่างไรก็ตามคอมพิวเตอร์มีใช้กันอย่างกว้างขวางมาก ซึ่งมีอุปกรณ์หลายๆชนิดได้นำคอมพิวเตอร์ไปใช้เป็นกลไกหลักในการทำงาน เช่น กล้องดิจิตอล(Digital Camera) เครื่องเล่นเอ็มพีสาม (MP3 Player) หรือในรถยนต์เองก็มีคอมพิวเตอร์ที่ใช้ช่วยในการตรวจสอบระบบการทำงานของเครื่องยนตร์

ประสิทธิภาพของคอมพิวเตอร์โดยรวมแล้ววัดกันที่ความเร็วการประมวลผล ซึ่งตามกฏของมัวล์ (Moore's Law) คอมพิวเตอร์จะเพิ่มประสิทธิภาพเป็นเท่าทวีคูณในทุกปี



ประวัติของคอมพิวเตอร์
ช่วงปี ค.ศ. 1930 ถึงช่วงปี ค.ศ. 1940 เป็นช่วงที่โลกได้มีคอมพิวเตอร์ที่สามารถโปรแกรมได้และคำนวนผลลัพธ์ได้มีประสิทธิภาพจริง แต่เป็นการยากที่จะตัดสินได้ว่าคอมพิวเตอร์เครื่องแรกของโลกเกิดในปีใดและประดิษฐ์โดยใคร เนื่องจากคอมพิวเตอร์ในช่วงแรกๆ ยังไม่สามารถทำงานได้สมบูรณ์อย่างแท้จริง โดย

  • ค.ศ. 1936 เป็นครั้งแรกที่โลกได้มีเครื่องคอมพิวเตอร์เครื่องแรกที่สามารถตั้งโปรแกรมได้อย่างอิสระ ผู้พัฒนาคือ Konrad Zuse และชื่อคอมพิวเตอร์คือ Z1 Computer
  • ค.ศ. 1942 จอห์น อตานาซอฟฟ์ และ คลิฟฟอร์ด เบอร์รี ที่ มหาวิทยาลัยไอโอวาสเตต ได้ร่วมกันสร้าง คอมพิวเตอร์ อตานาซอฟฟ์-เบอร์รี ซึ่งสามารถประมวลผลเลขฐานสอง
  • ค.ศ. 1946 John Presper Eckert และ John W. Mauchly ได้ร่วมกันสร้าง ENIAC ซึ่งใช้หลอดสูญญากาศจำนวน 20,000 หลอด เพื่อสร้างหน่วยประมวลผล และถือได้ว่าเป็นคอมพิวเตอร์เครื่องแรกสำหรับการใช้งานทั่วไป โดยมีการประมวลผลแบบทศนิยม โดยหากต้องการตั้งโปรแกรมจะต้องต่อสายเชื่อมต่อเครื่องอุปกรณ์ใหม่ทั้งหมด
  • ค.ศ. 1948 Frederic Williams และ Tom Kilburn สร้างคอมพิวเตอร์ที่ใช้ cathode-ray tube เป็นหน่วยความจำ
  • ค.ศ. 1947 ถึง 1948 John Bardeen, Walter Brattain และ Wiliam Shockley สร้างคอมพิวเตอร์ที่ใช้ทราสซิสเตอร์ถือว่าเป็นจุดเปลี่ยนของเทคโนโลยีคอมพิวเตอร์ที่สำคัญ
  • ค.ศ. 1951 John Presper Eckert และ John W. Mauchly ได้พัฒนา UNIVAC Computer ซึ่งเป็นคอมพิวเตอร์เครื่องแรกที่มีการขาย
  • ค.ศ. 1953 ไอบีเอ็ม (IBM) ออกจำหน่าย EDPM เป็นครั้งแรก และเป็นก้าวแรกของไอบีเอ็มในธุรกิจคอมพิวเตอร์
  • ค.ศ. 1954 John Backus และ IBM ร่วมกันสร้างภาษาคอมพิวเตอร์ชื่อ FORTRAN ซึ่งเป็นภาษาระดับสูง (high level programming language) ภาษาแรกในประวัติศาสตร์คอมพิวเตอร์
  • ค.ศ. 1955 (ใช้จริง ค.ศ. 1959) สถาบันวิจัยแสตนฟอร์ด, ธนาคารแห่งชาติอเมริกา, และ บริษัทเจเนอรัลอิเล็กทริก ร่วมกันสร้าง ERMA และ MICR ซึ่งเป็นคอมพิวเตอร์เครื่องแรกในธุรกิจธนาคาร
  • ค.ศ. 1958 Jack Kilby และ Robert Noyce เป็นผู้สร้าง Integrated Circuit หรือ ชิป(Chip) เป็นครั้งแรก
  • ค.ศ. 1962 Steve Russell และ เอ็มไอที (MIT) ได้พัฒนาเกมคอมพิวเตอร์เป็นครั้งแรกของโลกชื่อว่า "Spacewar"
  • ค.ศ. 1964 Douglas Engelbart เป็นผู้ประดิษฐ์เมาส์ และ ระบบปฏิบัติการแบบวินโดว ์
  • ค.ศ. 1969 เป็นปีที่กำเนิด ARPAnet ซึ่งเป็นจุดเริ่มต้นของอินเทอร์เน็ต
  • ค.ศ. 1970 Intel พัฒนาหน่วยความจำชั่วคร่าวของคอมพิวเตอร์หรือ RAM เป็นครั้งแรก
  • ค.ศ. 1971 Faggin, Hoff และ Mazor พัฒนาไมโครโปรเซสเซอร์ตัวแรกของโลกให้อินเทล (Intel)
  • ค.ศ. 1971 Alan Shugart และ IBM พัฒนา ฟลอปปี้ดิสก์ เป็นครั้งแรก
  • ค.ศ. 1973 Robert Metcalfe และ Xerox ได้พัฒนาระบบอีเทอร์เน็ต (Ethernet) สำหรับระบบเครือข่ายคอมพิวเตอร์
  • ค.ศ. 1974 ถึง ค.ศ. 1975 Scelbi และ Mark-8 Altair และ IBM ร่วมกันวางจำหน่ายคอมพิวเตอร์สำหรับผู้ใช้รายย่อยเป็นครั้งแรก
  • ค.ศ. 1976 ถึง ค.ศ. 1977 ถือกำเนิด Apple I, II และ TRS-80 และ Commodore Pet Computers ซึ่งเป็นคอมพิวเตอร์ส่วนบุคคลรุ่นแรกๆ ของโลก
  • ค.ศ. 1981 ไมโครซอฟท์ วางจำหนาย MS-DOS ซึ่งเป็นระบบปฏิบัติการที่ได้รับความนิยมที่สุดในช่วงนั้น
  • ค.ศ. 1983 บริษัทแอปเปิล ออกคอมพิวเตอร์รุ่น Apple Lisa ซึ่งเป็นคอมพิวเตอร์รุ่นแรกที่ใช้ระบบ GUI
  • ค.ศ. 1984 บริษัทแอปเปิล วางจำหน่ายคอมพิวเตอร์รุ่น แอปเปิล แมคอินทอช ซึ่งทำให้มีการใช้คอมพิวเตอร์อย่างกว้างขวาง
  • ค.ศ. 1985 ไมโครซอฟท์ วางจำหน่าย ไมโครซอฟท์ วินโดวส์ เป็นครั้งแรก
คอมพิวเตอร์ทำงานอย่างไร
คอมพิวเตอร์ในยุคแรกๆเช่น ENIAC เวลาโปรแกรมต้องใช้วิธีการเปลี่ยนสายเชื่อมต่ออุปกรณ์ต่างๆ ซึ่งเป็นวิธีการที่ยุ่งยากมาก จึงเกิดแนวคิดว่าตัวโปรแกรมน่าจะจัดเก็บอยู่ในส่วนที่สามารถปรับเปลี่ยนแก้ไขได้ง่าย เป็นที่มาของแนวคิดที่ทำการจัดเก็บข้อมูลต่างๆรวมถึงโปรแกรมไว้ใน หน่วยความจำ หรือ memory ทำให้คอมพิวเตอร์จะได้รับคำสั่งโดยการอ่านคำสั่งจากหน่วยความจำ และการปรับเปลี่ยนโปรแกรมสามารถทำได้โดยการเปลี่ยนแปลงค่าภายในหน่วยความจำ

  • แนวคิดข้างต้นรู้จักในชื่อว่า "Stored-Program Concept" หรือ อีกชื่อว่าสถาปัตยกรรม von Neumann โดยเข้าใจว่า J. Presper Eckert และ John William Mauchly ซึ่งเป็นนักออกแบบ ENIAC เป็นผู้คิดค้นขึ้น
  • แนวคิดการทำงานแบบ Stored-Program ถูกใช้เป็นแนวคิดหลักของการทำงานในคอมพิวเตอร์จนถึงปัจจุบัน โดยแนวคิดนี้จะแบ่งการทำงานของคอมพิวเตอร์เป็น 4 ส่วนหลักได้แก่
  • หน่วยประมวลผลในรูปแบบข้อมูล Binary หรือที่เรียกว่า Arithmetic-Logical Unit (ALU) เปรียบเสมือนหัวใจของคอมพิวเตอร์ หน้าที่หลักของมันคือทำการประมวลผลทางคณิตศาสตร์ขั้นพื้นฐานอันได้แก่การบวกและลบ และการทำการเปรียบเทียบข้อมูลสองข้อมูลว่ามีค่าเท่ากันหรือไม่ถ้าไม่จะมีค่ามากกว่าหรือน้อยกว่า
  • หน่วยความจำ หรือ Memory ใช้สำหรับเก็บข้อมูล (Data) และ คำสั่ง (Instructions) โดยข้อมูลภายในหน่วยความจำจะถูกแบ่งเป็นส่วนๆเล็กๆเท่าๆกัน แต่ละส่วนมีที่อยู่(address) เพื่อใช้เข้าถึงข้อมูลที่ถูกจัดเก็บเอาไว้
  • อุปกรณ์อินพุตและเอาท์พุต หรือ I/O Device เป็นส่วนที่ใช้นำข้อมูลจากโลกภายนอกเข้ามาภายในระบบคอมพิวเตอร์ เพื่อนำมาประมวลผล และเมื่อได้ผลลัพธ์ก็จะนำข้อมูลที่ได้มาแสดงผลให้โลกภายนอกคอมพิวเตอร์ได้รับทราบ
  • หน่วยควบคุมการทำงาน หรือ Control Unit เป็นส่วนที่ใช้เชื่อมต่อแต่ละส่วนเข้าด้วยกัน หน้าที่หลักๆคือทำการอ่านข้อมูลคำสั่งที่อยู่ภายในหน่วยความจำหรือที่ได้จากอุปกรณ์อินพุต ทำการแปลความหมายและส่งไปประมวลผลใน ALU จากนั้นนำผลที่ได้ไปจัดเก็บในหน่วยความจำหรืออุปกรณ์เอาท์พุต หน้าที่หลักอีกประการ คือควบคุมลำดับการทำงานของแต่ละขั้นตอนให้อยู่ในเวลาที่เหมาะสม
สถาปัตยกรรมคอมพิวเตอร์
ประเภทของสถาปัตยกรรมการประมวลผลแบบขนาน ของโปรเซสเซอร์

1.SISD(Single Instruction Single Data stream) คือ โปรเซสเซอร์ ที่ใช้การประมวลผลด้วยชุดข้อมูลเพียงชุดเดียว และ ทำงานด้วยคำสั่งเดียว ภายใน 1 สัญญาณนาฬิกา

2.MISD(Multiple Instruction Single Data stream) คือ โปรเซสเซอร์ ที่ใช้การประมวลผลด้วยชุดข้อมูลเพียงชุดเดียว แต่ทำงานด้วยได้หลายคำสั่ง ภายใน 1 สัญญาณนาฬิกา มักจะไม่ค่อยมีใครพัฒนาโปรเซสเซอร์แบบนี้

3.SIMD(Single Instruction Multiple Data stream)คือ โปรเซสเซอร์ที่ใช้การประมวลผลด้วยชุดข้อมูลหลายชุด แต่ทำงานด้วยคำสั่งเดียว ภายใน 1 สัญญาณนาฬิกา และได้ผลลัพท์หลายชุด ใช้ในโปรเซสเซอร์แบบ Pentium MMX

4.MIMD(Multiple Instruction Multiple Data stream)คือ โปรเซสเซอร์ที่ใช้การประมวลผลด้วยชุดข้อมูลหลายชุด และทำงานด้วยได้หลายคำสั่ง ภายใน 1 สัญญาณนาฬิกา

RISC ( Reduced Instruction- Set Computing หรือชิปที่มีการลดทอนคำสั่ง ) คือ โปรเซสเซอร์ที่มีชุดคำสั่งที่มีรูปแบบและขนาดที่แน่นอน สามารถประมวลผลได้ภายใน 1 สัญญาณนาฬิกา การอ้างอิงหน่วยความจำจะใช้คำสั่ง Load และ Store ที่สามารถอ้างอิงหน่วยความจำได้โดยตรงเท่านั้น ใช้การอ้างตำแหน่งแบบตรงๆ ง่ายโดยมีรูปแบบจำกัดอยู่ 2 แบบ คือ 1.แบบอ้างผ่าน Register ( Register Indirect ) Register จะเก็บค่าตำแหน่งไว้ แล้ว ทำการอ้างตำแหน่งนั้นๆผ่าน Register 2.ในแบบ Index จะเป็นการอ้างตำแหน่งจากค่าคงที่ที่มาในคำสั่งนั้นๆเลย

CISC ( Complex Instruction- Set Computing ) คือสถาปัตยกรรมของโปรเซสเซอร์ ที่ใช้คำสั่งซับซ้อนที่มีความยาวเปลี่ยนไปตามชนิดของคำสั่ง มีคำสั่งให้ใช้งานมากมาย ทำให้เขียนโปรแกรมง่าย และโปรแกรมมีขนาดเล็ก การทำงานของคำสั่งจะใช้ Microcode โดยคงความเข้ากันได้กับโปรเซสเซอร์รุ่นเก่า ทำให้ไม่ต้องเขียนโปรแกรมใหม่

SMP(Symmetric MultiProcessing) คือสถาปัตยกรรมของการใช้โปรเซสเซอร์ หลายตัว ที่ใช้ทรัพยากรของระบบเช่น บัส หน่วยความจำ I/O ร่วมกัน ไม่สามารถแบ่งเป็น partition ย่อยๆได้ และสมรรถนะของระบบจะลดลงเมื่อใช้โปรเซสเซอร์ มากกว่า 8 ตัว ความสามารถในการขยายสเกลยังจำกัด แต่สามารถใช้โปรแกรมแบบเดิมได้ไม่ต้องเขียนขึ้นใหม่ -การแบ่งกันใช้งานและการติดต่อสื่อสาร 1.Shared-bus topology คือการต่อโปรเซสเซอร์ หลายตัวให้ใช้งาน Frontside บัสเส้นเดียวร่วมกัน แต่มีข้อเสียคือ จะเกิดคอขวดที่เกิดจากรอคอยการใช้บัสร่วมกัน และทำให้เกิดประจุไฟฟ้าสะสมบนบัส ซึ่งจะเกิดการรบกวนสัญญาณข้อมูลซึ่งกันและกัน ทำให้สามารถใช้โปรเซสเซอร์ ได้สูงสุดไม่เกิน 4 ตัวมีใช้ใน บัส GTL+ ของ Intel x86 และ บัส MPX ของ SMP G4(Apple) 2.Point-to-point topology คือการต่อโปรเซสเซอร์ หลายตัวโดยให้โปรเซสเซอร์ แต่ละตัวมี Frontside บัสของตัวเองที่ต่อตรงไปยังชุดชิปหลัก จะแก้ปัญหาที่เกิดจากการใช้ Shared-bus topology ได้ มีใช้ใน บัส EV6 ของ Athlon -Cache Coherenceคือการทำให้ข้อมูลที่มีอยู่ในแคชของโปรเซสเซอร์ ทุกตัวมีความสอดคล้องกับโปรเซสเซอร์ตัวอื่นๆ 1.Snoop คือการจัดการให้แคชของโปรเซสเซอร์แต่ละตัว คอยฟังว่ามีการร้องขอข้อมูลในหน่วยความจำที่โปรเซสเซอร์กำลังใช้งานอยู่ของโปรเซสเซอร์ตัวอื่นๆทุกตัวหรือไม่ ซึ่งจะทำให้เกิดการติดต่อสื่อสารสถานะของข้อมูล เพื่อประสานงานการใช้ข้อมูลร่วมกันโดยเกิดข้อขัดแย้งน้อยที่สุด แต่จะเกิดปัญหาความล่าช้าบนระบบ Shared-bus เพราะการ snoop จะลด bandwidth ของบัสที่ใช้งานร่วมกัน แต่ในระบบ point-to-point จะมี snoop bus ต่างหาก ทำให้แคชสามารถทำงานโดยไม่ต้องไปรบกวนการทำงานของส่วนอื่นๆ 2.Data Intervention คือเทคนิคที่เพิ่มความเร็วในการประสานการของทำงานของแคช โดยการที่แคชของโปรเซสเซอร์ต้องการอ่านข้อมูลเดียวกัน ที่กำลังใช้งานอยู่และเพิ่งจะเริ่มแก้ไข ก็จะส่งสัญญาณบอกโปรเซสเซอร์อีกตัวให้รอรับข้อมูลที่จะส่งไปให้ ไม่ต้องไปขอจากหน่วยความจำหลักให้เสียเวลา

MPP(Massively Parallel Processing) คือสถาปัตยกรรมของการใช้โปรเซสเซอร์หลายตัว โดยที่โปรเซสเซอร์แต่ละตัว จะมีทรัพยากรระบบ(I/O, หน่วยความจำ)ของตนเองเป็นหน่วยๆย่อยมีการควบคุมตนเอง การเชื่อมโยงจะใช้ hardware หรือ software ก็ได้ สามารถขยายสเกลได้ดีมาก แต่ต้องเขียนโปรแกรมใหม่ ไม่สามารถใช้ของเดิมได้

CMP(Cellular MultiProcessing) คือสถาปัตยกรรมของการใช้โปรเซสเซอร์หลายตัว ที่ผสมผสานข้อดีของ SMP และ Clustering เข้าด้วยกัน โดยแบ่งโปรเซสเซอร์ออกเป็นหน่วยเล็ก ที่เรียกว่า subpod (ประกอบด้วย โปรเซสเซอร์ 2 คู่ที่แต่ละคู่ใช้บัสแยกกัน และ cache แบบ L3 และสามารถใช้ระบบปฏิบัติการของตนเองหรือรวมกันเป็นหน่วยเดียวก็ได้) ที่ใช้ ทรัพยากรของระบบ(หน่วยความจำ, I/O)ร่วมกัน การเชื่อมโยงใช้ลักษณะการติดต่อแบบ Crossbar(เป็นการเชื่อมต่อแบบจุดต่อจุดโดยตรง ที่สามารถกำจัดการขัดข้องที่จุดๆเดียวได้) สามารถขยายสเกลได้ดีมาก และสามารถใช้โปรแกรมแบบเดิมได้ไม่ต้องเขียนขึ้นใหม่

NUMA(Non-Uniform Memory Access) คือสถาปัตยกรรมของการใช้โปรเซสเซอร์หลายตัว ที่ผสมผสานข้อดีของ SMP และ MPP เข้าด้วยกัน โดยแบ่งเป็นหน่วยย่อยของหลายๆ โปรเซสเซอร์ ที่ใช้ทรัพยากรของระบบ(หน่วยความจำ, I/O)ร่วมกัน สามารถขยายสเกลได้ดีมาก และสามารถใช้โปรแกรมแบบเดิมได้ไม่ต้องเขียนขึ้นใหม่

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

หน่วยประมวลผล
การทำงานของหน่วยประมวลผลกลาง หน่วยประมวลผล จะรับคำสั่งและข้อมูลจากหน่วยความจำ โดยส่งเข้าที่ Queue Prefetch Unit จะตรวจสอบว่า ค่าใน Queue เป็นคำสั่งหรือไม่ ถ้าเป็นคำสั่งจะสั่งให้ Bus Interface Unit(BIU) ส่งค่าของคำสั่งไปที่ Decode Unit ถ้าเป็นค่าที่อยู่(Address)ของหน่วยความจำ จะถูกส่งไปที่ Segment and Paging Unit Segment and Paging Unit จะแปลงที่อยู่ของหน่วยความจำ จากที่อยู่เสมือน(Virtual Address)ในรูปแบบของ segment : offset ให้กลายเป็นที่อยู่จริง(Physical Address)ที่ Bus Interface Unit เข้าใจ หน่วยถอดรหัส(Decode Unit) จะตรวจสอบและแยกแยะคำสั่ง แล้วแปลคำสั่ง และส่งสัญญาณควบคุมไปให้ Execution Unit ทำงานตามคำสั่งนั้น ใน Execution Unit จะประกอบด้วย

Control Unit(CU)จะทำหน้าที่ควบคุมการทำงานภายในโปรเซสเซอร์เป็นตัวสั่งงาน Unit อื่นๆตามคำสั่งที่แปลจาก Decode Unit Protection Test Unit จะป้องกันและตรวจสอบการทำงานของส่วนต่างๆ ไม่ให้ทำผิดกฏเกณฑ์ จนเกิดข้อผิดพลาดขึ้น Register จะทำหน้าที่เก็บค่าชั่วคราวก่อนและหลังการประมวลเพื่อส่งให้ส่วนอื่นๆต่อไป เป็นเหมือนกระดาษทดชัว่คราว สำหรับ ALU Arithmetic Logic Unit(ALU) เป็นส่วนการคำนวณทางคณิตศาสตร์และหาค่าตรรกะของการเปรียบเทียบ

เมื่อ ALU คำนวณหรือเปรียบเทียบค่าเรียบร้อยแล้ว จะส่งไปเก็บไว้ที่ Register แล้ว Control Unit จะสั่งให้ BIU เก็บค่าผลลัพท์ลงในหน่วยความจำ โดยแปลงที่อยู่เสมือนที่ Control Unit กำหนด ให้กลายเป็น ที่อยู่จริงของหน่วยความจำที่จะนำผลลัพท์ไปเก็บไว้

หน่วยความจำ
หน่วยความจำเป็นพื้นที่การทำงานและเป็นพื้นที่การจัดเก็บข้อมูลของคอมพิวเตอร์ เพราะคอมพิวเตอร์ไม่สามารถทำงานตามลำพังโดยอาศัยเพียงหน่วยประมวลผลหลักได้ หน่วยความจำแบ่งออกเป็น 2 ประเภทใหญ่ๆ ได้แก่ หน่วยความจำชั่วคราว คือ แรม (RAM: Random Access Memory) โดยแรมจะเป็นหน่วยความจำที่ใช้ขณะคอมพิวเตอร์ทำงาน และจะหายไปเมื่อปิดเครื่อง อีกชนิดหนึ่งคือหน่วยความจำถาวร หรือหน่วยความจำหลัก ได้แก่ ฮาร์ดดิสก์ Hard Disk ที่ใช้ในการเก็บข้อมูล และ รอม (ROM: Read Only Memory) ที่ใช้ในการเก็บค่าไบออส หน่วยความจำถาวรจะใช้ในการเก็บข้อมูลของเครื่องคอมพิวเตอร์และจะไม่สูญหายเมื่อปิดเครื่อง
ข้อแตกต่างของหน่วยความจำคือ หน่วยความจำแบบชั่วคราวจะมีความเร็วในการถ่ายข้อมูลสูง แต่ความจำน้อย เมื่อเกิดการทำงานของโปรแกรมมากๆ จึงต้องส่งผ่านข้อมูลลงหน่วยความจำถาวร ซึ่งเป็นสาเหตุหนึ่งของอาการแฮงก์

ไม่มีความคิดเห็น:

แสดงความคิดเห็น