วันพฤหัสบดีที่ 29 สิงหาคม พ.ศ. 2556

โครงสร้างโปรแกรมภาษา

โครงสร้างของโปรแกรม 1 โปรแกรมปาสคาล โปรแกรมในภาษาปาสคาล แบ่งเป็น 3 ส่วนคือ 1. ส่วนหัว (Heading) เป็นการประกาศชื่อของโปรแกรม ขึ้นต้นด้วยคำว่า PROGRAM ตามด้วยชื่อของโปรแกรม และจบบรรทัดด้วย ; รูปแบบ PROGRAM ชื่อโปรแกรม (รายชื่ออุปกรณ์); ตัวอย่าง PROGRAM EXAM1; PROGRAM EXAM1(INPUT,OUTPUT); ข้อสังเกต ชื่ออุปกรณ์ คือ INPUT, OUTPUT หรือชื่อของไฟล์ที่เกี่ยวข้องภายในโปรแกรมถ้าไม่ระบุจะถือว่า INPUT เข้าทาง keyboard และ OUTPUT ออกทางจอภาพ 2. ส่วนข้อกำหนด (Declaration part) คือส่วนตั้งแต่ส่วนหัวไปจนถึงคำว่า BEGIN ของโปรแกรมหลัก และเป็นส่วนที่เรากำหนดค่าต่าง ๆ ดังนี้ 2.1 VAR เป็นการกำหนดแบบของข้อมูลให้แก่ตัวแปร รูปแบบ VAR รายชื่อตัวแปร : ประเภทของข้อมูล; ตัวอย่าง VAR I,J,K : INTEGER; NAME : STRING; SALARY : REAL; 2.2 TYPE เป็นการกำหนดแบบของข้อมูลขึ้นใหม่ รูปแบบ TYPE ชื่อของแบบ = ประเภทหรือค่าของข้อมูล; ตัวอย่าง TYPE SCORE = INTEGER; WEEK = (MON, TUE, WED, THU, FRI); VAR TEST, MIDTERM, FINAL : SCORE; DAY : WEEK; จากตัวอย่างต้องประกาศชื่อแบบของตัวแปรก่อนแล้วจึงประกาศชื่อตัวแปรที่เป็นแบบ 2.3 CONST เป็นการกำหนดค่าคงที่ รูปแบบที่ 1 CONST รายชื่อค่าคงที่ = ค่าที่กำหนด; รูปแบบที่ 2 CONST รายชื่อค่าคงที่ : ประเภทของข้อมูล = ค่าที่กำหนด; ตัวอย่าง CONST HEAD = ‘EXAMINATION’; CONST A = 15; CONST SALARY : REAL = 8000.00; 2.4 LABEL ใช้คู่กับคำสั่ง GOTO ภายในโปรแกรม รูปแบบ LABEL รายชื่อของ LABEL; ตัวอย่าง LABEL 256,XXX; เช่น GOTO 256; GOTO XXX; 3. ส่วนคำสั่งต่าง ๆ (Statement Part) เป็นส่วนสุดท้ายของโปรแกรม ขึ้นต้นด้วย “BEGIN” และปิดท้ายด้วย “END.” ตัวอย่าง BEGIN Statement หรือคำสั่งต่าง ๆ ; END. 2 โปรแกรมภาษา C โครงสร้างของภาษา C ทุกโปรแกรมของภาษา C มีโครงสร้างเป็นลักษณะดังรูป 3 Basic โดรงสร้างในการเขียนโปรแกรมด้วย Visual Basic • การประกาศตัวแปร o แบบ Implicit o แบบ Explicit • กฎการตั้งชื่อตัวแปรและค่าคงที่ o การตั้งชื่อคอนโทรลและอ๊อบเจ็กต์ ตามคำแนะนำของไมโครซอฟท์ • ชนิดของข้อมูล • การใช้งานตัวแปรแบบใช้สัญลักษณ์พิเศษกำกับ • ขอบเขตของตัวแปร o ตัวแปรแบบ Local o ตัวแปรแบบ Public • การใช้งานตัวแปรร่วมระดับโพรซีเดอร์ • การตั้งชื่อตัวแปรแบบบอกชนิดและขอบเขต • ตัวแปรอาร์เรย์ o แบบสแตติก o แบบไดนามิก • การสร้างตัวแปรอาร์เรย์มากกว่า 1 มิติ • การใช้งานคอนโทรลอาร์เรย์ • การสร้างชนิดของข้อมูลขึ้นใช้เอง • การประกาศค่าคงที่ • ตัวดำเนินการใน Visual Basic 6.0 o ด้านคณิตศาสตร์ o ด้านตรรกะ o ด้านการเปรียบเทียบ o ด้านเชื่อมข้อความ 4 Assembly โปรแกรม จะถูกเก็บไว้ในหน่วยความจำ ซึ่งอยู่ในรูปแบบของเลขไบนารี่ที่เรียกว่าภาษา Machine ซึ่งเป็นภาษาที่สามารถ ติดต่อให้คอมพิวเตอร์ เข้าใจได้ ภาษา Machine นี้จะจัดให้อยู่ในรูปแบบที่เป็นเลขฐานสิบหก (HEX) เช่น คำสั่ง 8 บิต 11101011B (B-ไบนารี่) เขียนได้เป็น 0EBH(H-ฐานสิบหก) แต่ก็เป็นการที่จะเข้าใจความหมาย ได้ยากในการใช้งาน การที่จะทำความเข้าใจภาษา Machine จะมีการใช้สัญลักษณ์ (Symbols) ที่เรียกว่า Mnemonics เพื่อแทนความหมายของคำสั่ง เช่น MOV A,#67H หมายความว่านำข้อมูลค่าคงที่ 67H ไปเก็บไว้ใน reg. A) โปรแกรมที่เขียนด้วยรหัส Mnemonics เรียกว่า ภาษา Assembly และก่อนที่จะให้ CPU ทำงานตามโปรแกรมที่เขียนด้วยภาษา Assembly ได้ แต่ต้องเปลี่ยนให้เป็นภาษา Machine ก่อน โดยใช้ โปรแกรมแอสเซมเบลอ 5 Jawa โครงสร้างโปรแกรมภาษาจาวา public class ชื่อคลาส { public static void main(String[] agrs) { ประโยคคำสั่งต่างๆ ของโปรแกรม; ..................................................; } } ตัวอย่างโปรแกรมภาษาจาวา ไฟล์ Example.java class Example { public static void main(String[] args) { String dataname = “Java Language“; System.out.println(“My name is OAK“); System.out.println(“OAK is a “ + dataname +“. “); } } หมายเหตุ Compile : javac Example.java จะได้ไฟล์ Example.class Run : java Example Output : My name is OAK OAK is a Java Language คำอธิบาย - method main( ) จะเป็น method หลักที่ใช้ในการ run program ดังนั้นการกระทำต่าง ๆ ที่ต้องการให้เกิดขึ้น ในการ run program จะต้องทำการเขียนคำสั่งไว้ใน method นี้ - การแสดงผลทางจอภาพ (Console Output) ใช้ method ชื่อ "println" ซึ่งอยู่ใน System.outคำสั่งนี้จะรับข้อมูลที่เป็น String เพื่อนำมาแสดงผลทางจอภาพ
6 Cobol ภาษาโคบอล (COBOL programming language) เป็นภาษาโปรแกรมระดับสูงภาษาหนึ่งที่อยู่มาอย่างยาวนาน COBOL ย่อมาจาก Common Business Oriented Language เป็นภาษาที่นิยมนำไปใช้ทางธุรกิจ ถูกพัฒนาขึ้นเมื่อ ค.ศ. 1959 โดยนักคอมพิวเตอร์กลุ่มหนึ่งที่เรียกตัวเองว่า Conference on Data Systems Languages (CODASYL) และตั้งแต่ปี ค.ศ. 1959 ภาษาโคบอลมีการแก้ไขและปรับปรุงอยู่ตลอด ดังนั้น เพื่อขจัดปัญหาความแตกต่างของตัวภาษาโคบอลในแต่ละเวอร์ชัน สถาบันมาตรฐานแห่งชาติอเมริกัน (ANSI) จึงได้พัฒนามาตรฐานกลางขึ้นมาในปี ค.ศ. 1968 เป็นที่รู้จักกันในนามของ ANS COBOL ต่อมาเมื่อ ปี ค.ศ. 1974 ทาง ANSI ได้นำเสนอ ANS COBOL รุ่นใหม่ที่มีคุณสมบัติที่ดีกว่ารุ่น 1968 และในปี ค.ศ. 1985 ANSI ก็นำเสนออีกรุ่นหนึ่งที่มีคุณสมบัติมากกว่ารุ่นปี 1974 รูปแบบภาษาโคบอลแบ่งออกเป็น 4 ดิวิชั่น คือ 1. Identification division การกำหนดชื่อโปรแกรมและชื่อผู้เขียน 2. Environment division การอธิบายเกี่ยวกับคอมพิวเตอร์ 3. Data division การอธิบายเกี่ยวกับการประมวลผลข้อมูล 4. Procedure division การอธิบายเกี่ยวกับขั้นตอนการประมวลผล

วันพฤหัสบดีที่ 15 สิงหาคม พ.ศ. 2556

ระบบเลขฐาน


1.ตารางเลขฐาน

2.แปลงเลขฐานอื่นๆให้เป็นฐานสิบ
          2.1) 1111001012 = 969
          2.2) 2FBC16 = 12220
          2.3) 2868 = 198
3.แปลงฐานสิบรหัสนักศึกษาสองตัวหลัง
          2.1) 30 = 111102
          2.2) 30 = 368
          2.3) 30 = U16

วันพุธที่ 31 กรกฎาคม พ.ศ. 2556

โครงสร้างระบบคอมพิวเตอร์ และโครงสร้างของระบบปฏิบัติการ


ใบงานที่ 9
โครงสร้างระบบคอมพิวเตอร์ และโครงสร้างของระบบปฏิบัติการ

1.การขัดจังหวะ หรือการอินเตอร์รัปต์ หมายถึงอะไร จงอธิบาย

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

3.สาเหตุที่การป้องกันฮาร์ดแวร์ มีบทบาทสำคัญต่อระบบปฏิบัติการที่รองรับหลายๆ งาน อยากทราบว่าเป็นเพราะอะไร จงอธิบาย
=เพื่อป้องกันการเรียกใช้อุปกรณ์รับ-ส่งข้อมูลแบบผิด ๆ หรืออ้างอิงตำแหน่งในหน่วยความจำที่อยู่ในส่วนของระบบปฏิบัติการ หรือไม่คืน การควบคุมซีพียูให้ระบบซึ่งมีการกำหนดว่าคำสั่งเรียกใช้อุปกรณ์รับ-ส่งข้อมูลเป็นคำสั่งสงวน (Privileged Instruction) ผู้ใช้ไม่สามารถเรียกใช้อุปกรณ์เองได้ ต้องให้ระบบปฏิบัติการเป็นผู้จัดการให้

4.จงเปรียบเทียบความแตกต่างระหว่างโหมดการทำงานของผู้ใช้ กับโหมดการทำงานของระบบมาให้พอเข้าใจ
=ผู้ใช้ก็จะทำงานเหมือนกับคอมพิวเตอร์ เราจะรับข้อมูลจาก ตา หู จมูก ปาก แล้วก็สมองจะทำการประมวลผลสิ่งที่เราดู ได้ยิน ได้กลิ่น หรือรับรส แล้วก็จะแสดงจากทางอาการหรือคำพูด ก็เหมือนคอมพิวเตอร์ที่รับข้อมูลจากเมาส์ คีย์บอร์ด แล้ว CPU ก็ทำการประมวลผล จากนั้นก็แสดงผลในรูปของเสียงหรือภาพ

5.ระบบปฏิบัติการจะมีการป้องกันอินพุต และเอาท์พุตอย่างไร จงอธิบาย
      =กลไกในการอ้างอิงหน่วยความจำหลัก ป้องกันกระบวนการให้ใช้หน่วยความจำหลักได้แต่ในส่วนของกระบวนการนั้นเท่านั้น เช่น การไม่อนุญาตให้ผู้ใช้ระบบทำการรับส่งข้อมูลเองโดยตรง เพื่อป้องกันความผิดพลาดในการใช้งานของอุปกรณ์รับส่งข้อมูล

6.ระบบปฏิบัติการจะมีการป้องกันหน่วยความจำอย่างไร จงอธิบาย
      =กลไกในการอ้างอิงหน่วยความจำหลัก ป้องกันกระบวนการให้ใช้หน่วยความจำหลักได้แต่ในส่วนของกระบวนการนั้นเท่านั้น

7.ระบบปฏิบัติการจะมีการป้องกันซีพียูอย่างไร จงอธิบาย
=ระบบต้องมีการป้องกัน ความผิดพลาดที่เกิดจากกระบวนการหนึ่งไปกระทบอีกกระบวนการหนึ่ง โดยสร้างกลไกบางอย่างเพื่อป้องกันแฟ้มข้อมูล, หน่วยความจำส่วนหนึ่งหรือหน่วยประมวลผลกลาง




8.โครงสร้างของระบบปฏิบัติการประกอบด้วยกี่ส่วน อะไรบ้าง
=ระบบปฏิบัติการประกอบด้วย 2 ส่วน คือ
1. เคอร์เนล (Kernel) หมายถึง ส่วนกลางของระบบปฏิบัติการ ซึ่งเป็นส่วนแรกที่ถูกเรียกมาใช้งาน และจะฝังตัวอยู่ในหน่วยความจำหลักของระบบ ดังนั้นเคอร์เนลจึงต้องมีขนาดเล็ก โดยเคอร์เนลจะมีหน้าที่ในการติดต่อ และควบคุมการทำงานของฮาร์ดแวร์ และโปรแกรมใช้งาน (Application Programs)
2.โปรแกรมระบบ (System Programs) คือ ส่วนของโปรแกรมการทำงานของระบบปฏิบัติการ ซึ่งมีหน้าที่ติดต่อกับผู้ใช้ และผู้จัดการระบบ เช่น Administrator

9.ในการจัดการกับโปรเซส ระบบปฏิบัติการจะมีกิจกรรมใดบ้างที่ต้องรับผิดชอบ
=การจัดการงานที่เราจะทำการประมวลผล ไม่ว่าจะเป็นการประมวลผลแบบการแบ่งเวลา หรืออื่นๆ โดยแต่ละโปรเซสจะมีการกำหนดการใช้ทรัพยากรที่แน่นอน

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

11.ในการจัดการกับแฟ้มข้อมูล ระบบปฏิบัติการจะมีกิจกรรมใดบ้างที่ต้องรับผิดชอบ
=เป็นการทำงานของระบบปฏิบัติการโดยทำหน้าที่ในการโอนถ่ายข้อมูลลงไปจัดเก็บในอุปกรณ์บันทึกข้อมูล

12.ในการจัดการกับอุปกรณ์อินพุต/เอาต์พุต ระบบปฏิบัติการจะมีกิจกรรมใดบ้างที่ต้องรับผิดชอบ
=ระบบปฏิบัติการมีหน้าที่ในการรับข้อมูล และแสดงข้อมูลผ่านทางอุปกรณ์ต่างๆ โดยข้อมูลที่ส่งไปยังอุปกรณ์เหล่านี้ จะผ่านสายส่งข้อมูล

13.ในการจัดการกับหน่วยความจำสำรอง เช่น ดิสก์ ระบบปฏิบัติการจะมีกิจกรรมใดบ้างที่ต้องรับผิดชอบ
=ระบบปฏิบัติการทำหน้าที่โอนถ่ายข้อมูลไปจัดเก็บในอุปกรณ์บันทึกข้อมูล

14.จงสรุปงานบริการของระบบปฏิบัติการมาพอเข้าใจ
=ระบบปฏิบัติการจะเป็นเหมือนตัวกลางที่เชื่อมต่อระหว่างคอมพิวเตอร์กับผู้ใช้งาน จะรับข้อมูลทางเมาส์หรือคีย์บอร์ด จากนั้นจะส่งไปยัง CPU เพื่อให้ประมวลผลออกมา แสดงผลจะอยู่ในรูปของเสียงหรือภาพ

15.ในการติดต่อระหว่างโปรเซสกับระบบปฏิบัติการ จะเกี่ยวข้องกับกลุ่มงานใดบ้าง จงอธิบาย
=สถานะของโปรเซส (Process Status)ก็จะมี  สถานะเริ่มต้น (New Status) ,สถานะพร้อม (Ready Status) ,สถานะรัน (Running Status),สถานะรอ (Wait Status),สถานะบล็อก (Block Status)และสถานะสิ้นสุด (Terminate Status)

วันพฤหัสบดีที่ 4 กรกฎาคม พ.ศ. 2556

โปรแกรมคอมพิวเตอร์ลงยังไงเสถียรปลอดภัยจากพวกโทรจัน


โปรแกรมคอมพิวเตอร์ลงยังไงเสถียรปลอดภัยจากพวกโทรจัน
ลงโปรแกรมคอมพิวเตอร์ลงยังไงเสถียรปลอดภัยจากพวกโทรจัน
ในการที่เราจะลงวินโดว์ และโปแกรมต่างๆนั้นเราควรมีการเตรียมพร้อมดังนี้ครับ
1. เตรียมแผ่นวินโดว์สให้เหมาะกับเครื่องเราให้มากที่สุด ความสวยงามค่อยมาทีหลังครับ(หลายๆท่านคงมีแผ่นวินโดวส์ที่โดนใจกันแล้วนะครับ)
2.  เตรียมไดรเวอร์ของอุปกรณ์ต่างๆให้พร้อม ไม่ว่าจะเป็น เมนบอร์ด การ์ดจอ ปริ๊นเตอร์ ฯลฯ เป็นไปได้ควรอัปเดทให้เป็นเวอร์ชั่นล่าสุด
3.  เตรียมแอปพลิเคชั่นต่างๆให้พร้อมสำหรับการติดตั้ง หากโปแกรมที่ท่านต้องการนั้นมีการใช้งานKeygen หรือ Crack ไฟล์เหล่านี้มักถูกบีบอัดไว้ ก่อนทำการแตกไฟล์แนะนำว่าควรอัปเดทScanvirus ให้เรียบร้อย และควรเป็น Scanvirus ที่ไว้ใจได้ (เดี๋ยวแนะนำ) จากนั้นทำตามดังนี้
     3.1 แตกไฟล์ Crack , Keygen , Patch ของโปรแกรมเหล่านั้น กว่า 80% ของโปรแกรมที่โหลดมาจากเว็บต่างประเทศโดยตรงมีไวรัสประเภทโทรจัน และไวรัสชั้นต่ำที่ทำให้คอมเราอืดครับ ถ้าแตกไฟล์แล้ว โปแกรมไม่ฟ้องว่าเป็นไวรัสก็ปลอดภัยในระดับหนึ่งครับ
     3.2 ถ้าเป็นKeygen ที่ไม่ต้องอ้างอิงรหัสเครื่อง(พวกตรวจสอบโน่นนี่) แนะนำว่าGen key ออกมาแล้วเก็บเป็น notpad ดีกว่าครับ ถ้าอ้างอิงเครื่องก็บีบเก็บไว้ครับ
     3.3 ถ้าเป็น Crack , Patch ต่างๆถ้าเป็นไวรัส ลองหาดูใหม่ครับ ถ้าไปเป็นบีบเก็บไว้ครับ
     3.4 ควรโหลดตัวอัพเดทScanvirus ไว้ด้วยครับ
     3.5 แอปพลิเคชั่นเหล่านั้น ควรไร์ทลงแผ่นไว้ครับ
4.  เตรียมอุปกรณ์ให้พร้อม เช่น DVD Rw  CD Rw ต้องอ่านแผ่นได้อย่างสมบูรณ์  เช็ค Ram ,Harddisk อุปกรณ์อื่นๆให้พร้อมใช้งาน 
5.  สำรองงานไว้ให้ดีครับ เช่น เก็บไว้ไดร์ฟ D หรือไดร์ฟอื่นๆ เก็บบุ๊คมาค IE ,Firfox
6. เริ่มทำการลงวินโดว์สครับ โดยมีคำแนะนำดังนี้ครับ
     6.1 เมื่อถึงตอนเลือกไดร์ฟ ให้ทำการลบพาร์ทิชั่นนั้นไปเลย แล้วสร้างใหม่  เหตุผลที่ผมให้ลบออกก็เพราะว่า ไม่อยากให้ลงทับ ถ้าลบท่านจะได้ระบบที่สะอาดกว่าครับ
     6.2 พอลงเสร็จห้ามเปิดไดร์ฟอื่นๆ ลงไดร์เวอร์อุปกรณ์ต่างๆก่อนโดยเริ่มจากเมนบอร์ดครับ แล้วก็ การ์ดจอ ปริ๊นเตอร์
     6.3  พอลงไดร์เวอร์เสร็จลงScanvirus ก่อนเลยนะ อัพเดทด้วยครับ
     6.4 จากนั้นลงแอปพลิเคชั้นต่างๆก่อนโดยเริ่มจาก กราฟฟิก-มัลติมีเดีย-แล้วโปรแกรมเสริมอื่นครับ
7. เสร็จละครับ ได้ระบบที่สมบูรณ์แล้ว   scanvirus ไดร์ฟอื่นๆด้วยครับ
การพิจารณาซอฟแวร์
1. ไม่จำเป็นต้องเป็น V. ล่าสุด แต่ขอให้เสถียรก็พอ
2. เลือกที่เหมาะกับเครื่องของเราที่สุดครับ  แนะนำ scan virus ครับ
    เครื่องกลางๆ-แรงหน่อยก็ Avira_antivir_premiu หรือ Kaspersky7
 แนะนำแอปพลิเคชั่นที่ควรมีติดเครื่องไว้
Office 2003                        Acd see
Foxit reader                       kmplayer
k-lite megacode pack                   msn 8.5+plus
Idm                                 winrar
Ie7                                  java                                
flash player                       firfox                               
CloneCD                           Error Repair Professional     
Your.Uninstaller                  CyberLink.PowerDVD         
Winamp                           CCleaner                          

UltraISO                           Auslogics Disk Defrag

วันอาทิตย์ที่ 23 มิถุนายน พ.ศ. 2556

หน่วยความจำแคช

หน่วยความจำแคช
หน่วยความจำ Cache ใน CPU
หน่วยความจำ Cache ใน CPU เป็นส่วนที่ใช้สำหรับเก็บข้อมูลหรือคำสั่งแบบชั่วคราวก่อนจะป้อนให้ CPU ประมวลผล โดยข้อมูลหรือคำสั่ง ดังกล่าวจะเป็นส่วนที่มีการเรียกใช้งานจาก CPU บ่อย ๆ เมื่อ CPU ต้องการใช้ข้อมูลเหล่านั้น ก็สามารถค้นหาได้รวดเร็ว ไม่ต้องไปหาจากหน่วยความจำแรมหรือฮาร์ดิสที่มีความช้ากว่าและอยู่ไกล
หน่วยความจำแคช เป็นหน่วยความจำแบบ Static RAM (SRAM) มีความเร็วในการทำงานสูง แต่ราคาแพงกว่าหน่วยความจำหลักของระบบที่เป็นแบบ Dynamic RAM (DRAM) อยู่มาก ทำให้หน่วยความจำมีขนาดเล็ก เราแบ่งแคชออกเป็น 3 ระดับ ได้แก่
หน่วยความจำแคชระดับ 1 (Cache Level 1 : L1) เป็นแคชที่สร้างอยู่ภายในตัว CPU เราเรียกว่า Internal Cache มีขนาดไม่ใหญ่นัก หน่วยความจำแคชจะมีอยู่ใน CPU ทุกชนิด ทุกรุ่นที่ขายอยู่ในท้องตลาดปัจจุบัน
หน่วยความจำแคชระดับ 2 (Cache Level 2 : L2) มีทั้งแบบที่สร้างอยู่ภายในตัว CPU และแบบที่อยู่ภายนอก ซึ่งขนาดของแคชระดับ 2 นั้นจะแตกต่างกันตามรุ่นและชนิดของ CPU เช่น CPU เซลเลอรอนจะมีหน่วยความจำแคชระดับ 2 ขนาด 128 KB ส่วน CPU แพนเทียม III และแพนเทียม II จะมีขนาด 512 KB แคชระดับ 2 นี้ มีทั้งแบบที่สร้างมาบนตัว CPU เลย เช่น แพนเทียม II แพนเทียม III เป็นต้น แต่ถ้าเป็น CPU 6X86, K5, แพนเทียม MMX จะไม่มีหน่วยความจำแคชระดับ 2 มาด้วย CPU จึงมองแคชบน Mainboad เป็นแคชระดับ 2 แทน
หน่วยความจำแคชระดับ 3 (Cache Level 3 : L3) เป็นแคชที่อยู่ภายนอกตัว CPU เราเรียกว่า External Cache โดยแคชในระดับนี้จะเป็นแคชที่ติดตั้งอยู่บน Mainboad เท่านั้น
หน่วยความจำไดนามิกแรมหรือดีแรม (Dynamic RAM : DRAM)
DRAM จะทำการเก็บข้อมูลในตัวเก็บประจุ ( Capacitor ) ซึ่งจำเป็นจะต้องมีการ refresh เพื่อ เก็บข้อมูลให้
คงอยู่ โดยการ refresh นี้ ทำให้เกิดการหน่วงเวลาขึ้นในการเข้าถึงข้อมูล และก็เนื่อง จากที่มันต้อง refresh ตัวเองอยู่ตลอดเวลานี้เอง จึงเป็นเหตุให้ได้ชื่อว่า Dynamic RAM ปัจจุบันนี้แทบจะหมดไปจากตลาดแล้ว
ปัจจุบันมีการคิดค้นดีแรมขึ้นใช้งานอยู่หลายชนิด เทคโนโลยีในการพัฒนาหน่วยความจำประเภทแรม เป็นความพยายามลดเวลา ในส่วนที่สองของการอ่านข้อมูล นั่นก็คือช่วงวงรอบการทำงาน ดังนี้
Fast Page Mode DRAM (FPM DRAM)
FPM นั้น ก็เหมือนๆกับ DRAM เพียงแต่ว่า มันลดช่วงการหน่วงเวลาในขณะเข้าถึงข้อมูลลง ทำให้มัน มีความเร็วในการเข้าถึงข้อมูลสูงกว่า DRAM ปกติ โดยที่สัญญาณนาฬิการปกติในการเข้าถึงข้อมูล จะเป็น 6-3-3-3 ( Latency เริ่มต้นที่ 3 clock พร้อมด้วย 3 clock สำหรับการเข้าถึง page ) และสำหรับระบบแบบ 32 bit จะมีอัตราการส่งถ่ายข้อมูลสูงสุด 100 MB ต่อวินาที ส่วนระบบแบบ 64 bit จะมีอัตราการส่งถ่ายข้อมูลสูงสุดที่ 200 MB ต่อวินาที เช่นกันครับ ปัจจุบันนี้ RAM ชนิดนี้ก็แทบจะหมดไปจากตลาดแล้ว แต่ก็ยังคงเห็นได้บ้างและมักจะมีราคา ที่ค่อนข้างแพงเมื่อเทียบกับ RAM รุ่นใหม่ๆ เนื่องจากที่ว่า ปริมาณที่มีในท้องตลาดมีน้อยมาก ทั้งๆที่ ยังมีคนที่ต้องการใช้ RAM ชนิดนี้อยู่
Extended-Data Output (EDO)
DRAM หรืออีกชื่อหนึ่งก็คือ Hyper-Page Mode DRAM ซึ่งพัฒนาขึ้นอีกระดับหนึ่ง โดยการที่มันจะอ้างอิงตำแหน่ง ที่อ่านข้อมูลจากครั้งก่อนไว้ด้วย ปกติแล้วการดึงข้อมูลจาก
RAM ณ ตำแหน่งใดๆ มักจะดึงข้อมูล ณ ตำแหน่งที่อยู่ใกล้ๆ จากการดึงก่อนหน้านี้ เพราะงั้น ถ้ามีการอ้างอิง ณ ตำแหน่งเก่าไว้ก่อน ก็จะทำให้ เสียเวลาในการเข้าถึงตำแหน่งน้อยลง และอีกทั้งมันยังลดช่วงเวลาของ CAS latency ลงด้วย และด้วยความสามารถนี้ ทำให้การเข้าถึงข้อมูลดีขึ้นกว่าเดิม กว่า 40% เลยทีเดียว และมีความ สามารถโดยรวมสูงกว่า FPM กว่า 15%
EDO จะทำงานได้ดีที่ 66MHz ด้วย Timming 5-2-2-2 และ ก็ยังทำงานได้ดีเช่นกันถึงแม้จะใช้งานที่ 83MHz ด้วย Timming นี้ และหากว่า chip EDO นี้ มีความเร็วที่สูงมากพอ ( มากกว่า 50ns ) มันก็สามารถใช้งานได้ ณ 100 MHz ที่ Timming 6-3-3-3 ได้อย่างสบาย อัตราการส่งถ่ายข้อมูลสูงสุดของ DRAM ชนิดนี้อยู่ที่ 264M ต่อวินาที
EDO RAM เองก็เช่นกัน ณ ปัจจุบันนี้ ก็หาได้ค่อนข้างยากแล้วในท้องตลาด เนื่องจากบริษัทผู้ผลิต หยุดผลิต หรือ ผลิตในปริมาณน้อยลงแล้ว เพราะหันไปผลิต RAM รุ่นใหม่ๆ แทน ทำให้ราคาเมื่อเทียบเป็น เมกต่อเมก กับ SDRAM จึงแพงกว่า
Burst EDO (BEDO) DRAM
BEDO ได้เพิ่มความสามารถขึ้นมาจาก EDO เดิม คือ Burst Mode โดยหลังจากที่มันได้ address ที่ต้องการ address แรกแล้ว มันก็จะทำการ generate อีก 3 address ขึ้นทันที ภายใน 1 สัญญาณนาฬิกา ดังนั้นจึงตัดช่วงเวลาในการรับ address ต่อไป เพราะฉะนั้น Timming ของมันจึงเป็น 5-1-1-1 ณ 66 MHz
BEDO ไม่เป็นที่แพร่หลาย และได้รับความนิยมเพียงระยะเวลาสั้นๆ เนื่องมาจากว่าทาง Intel ตัดสินใจใช้ SDRAM แทน EDO และไม่ได้ใช้ BEDO เป็นส่วนประกอบในการพัฒนา chipset ของตน ทำให้บริษัทผู้ผลิตต่างๆ หันมาพัฒนา SDRAM กันแทน
Synchronous DRAM (SDRAM)
SDRAM นี้ จะต่างจาก DRAM เดิม ตรงที่มันจะทำงานสอดคล้องกับสัญญาณนาฬิกา สำหรับ DRAM เดิมจะทราบตำแหน่งที่จะอ่าน ก็ต่อเมื่อเกิดทั้ง RAS และ CAS ขึ้น แล้วจึงทำการ ไปอ่านข้อมูล โดยมีช่วงเวลาในการ
เข้าถึงข้อมูล ตามที่เราๆมักจะได้เห็นบน chip ของตัว RAM เลย เช่น -50 , -60, -80 โดย -50 หมายถึง ช่วงเวลา
เข้าถึง ใช้เวลา 50 นาโนวินาทีเป็นต้น แต่ว่า SDRAM จะใช้สัญญาณนาฬิกาเป็นตัวกำหนดการทำงาน โดยจะใช้ความถี่
ของสัญญาณเป็นตัวระบุ SDRAM จะทำงานตามสัญญาณนาฬิกาขาขึ้น เพื่อรอรับตำแหน่งที่ต้องการให้มันอ่าน
แล้วจากนั้น มันก็จะไปค้นหาให้ และให้ผลลัพธ์ออกมา หลังจากได้รับตำแหน่งแล้ว เท่ากับ ค่า CAS เช่น CAS 2 ก็คือ หลังจากรับตำแหน่งที่จะอ่านแล้ว มันก็จะให้ผลลัพธ์ออกมา ภายใน 2 ลูกของสัญญาณนาฬิกา
SDRAM จะมี Timming เป็น 5-1-1-1 ซึ่งแน่นอน มันเร็วพอๆ กันกับ BEDO RAM เลยทีเดียว แต่ว่ามันสามารถ ทำงานได้ ณ 100 MHz หรือ มากกว่า และมีอัตราการส่งถ่ายข้อมูลสูงสุดอยู่ที่ 528 M ต่อวินาที
DDR SDRAM ( หรือ ที่เรียกกันว่า SDRAM II )
DDR DRAM นี้ แยกออกมาจาก SDRAM โดยจุดที่ต่างกันหลักๆ ของทั้งสองชนิดนี้คือ DDR SDRAM นี้ สามารถที่จะใช้งานได้ทั้งขาขึ้น และ ขาลง ของสัญญาณนาฬิกา เพื่อส่งถ่ายข้อมูล นั่นก็ทำให้อัตราส่งถ่ายเพิ่มได้ถึงเท่าตัว ซึ่งจะมีอัตราส่งถ่ายข้อมูลสูงสุดถึง 1 G ต่อวินาทีเลยทีเดียว
Rambus DRAM (RDRAM)
ชื่อของ RAMBUS เป็นเครื่องหมายการค้าของบริษัท RAMBUS Inc. ซึ่งตั้งขึ้นมาตั้งแต่ยุค 80 แล้ว เพราะฉะนั้น ชื่อนี้ ก็ไม่ใช่ชื่อที่ใหม่อะไรนัก โดยปัจจุบันได้เอาหลักการของ RAMBUS มาพัฒนาใหม่ โดยการลด pin, รวม static buffer, และ ทำการปรับแต่งทาง interface ใหม่ DRAM ชนิดนี้ จะสามารถทำงานได้ทั้งขอบขาขึ้นและลง ของสัญญาณนาฬิกา และ เพียงช่องสัญญาณเดียว ของหน่วยความจำแบบ RAMBUS นี้ มี Performance มากกว่าเป็น
3 เท่า จาก SDRAM 100MHz แล้ว และ เพียงแค่ช่องสัญญาณเดียวนี้ก็มีอัตราการส่งถ่ายข้อมูลสูงสุดถึง 1.6 G ต่อวินาที ถึงแม้ว่าเวลาในการเข้าถึงข้อมูลแบบสุ่มของRAMชนิดนี้จะช้า แต่การเข้าถึงข้อมูลแบบต่อเนื่องจะเร็วมากๆ ซึ่งหากว่า RDRAM นี้มีการพัฒนา Interface และ มี PCB ที่ดีๆ แล้วละก็ รวมถึง Controller ของ Interface ให้สามารถใช้งานมันได้ถึง 2 ช่องสัญญาณแล้วหล่ะก็ มันจะมีอัตราส่งถ่ายข้อมูลเพิ่มเป็น 3.2 G ต่อวินาทีและหากว่า
สามารถใช้งานได้ถึง 4 ช่องสัญญาณ ก็จะสามารถเพิ่มไปถึง 6.4 G ต่อวินาที มหาศาลเลย
หน่วยความจำStatic Random Access Memory (SRAM)
จะต่างจาก DRAM ตรงที่ว่า DRAM จะต้องทำการ refresh ข้อมูลอยู่ตลอดเวลา แต่ในขณะที่ SRAM จะเก็บข้อมูลนั้นๆ ไว้ และจะไม่ทำการ refresh โดยอัตโนมัติ ซึ่งมันจะทำการ refresh ก็ต่อเมื่อ สั่งให้มัน refresh เท่านั้น ซึ่งข้อดีของมัน ก็คือความเร็ว ซึ่งเร็วกว่า DRAM ปกติมาก แต่ก็ด้วยราคาที่สูงกว่ามาก จึงเป็นข้อด้อยของมันเช่นกัน