ระบบเลขฐาน (Radix Number) โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้ ระบบเลขฐาน (Radix Number) ผศ.บุรินทร์ รุจจน พันธุ์ . ปรับปรุง 13 พฤศจิกายน 2555 มหาวิทยาลัยเนชั่น จังหวัดลำปาง http://www.nation.ac.th
ได้แก่ A=10 B=11 C=12 D=13 E=14 F=15 G=16 H=17 ความหมาย ระบบเลขฐาน (Radix Number) คือ ระบบตัวเลขที่ใช้เป็นหน่วยนับสิ่งต่าง ๆ รอบตัว เรา และต้องกำหนดเลขฐานกำกับ ปัจจุบันเลขที่เราใช้กันอยู่ เป็น เลขฐาน 10 ซึ่งเป็นฐานที่ถูกยกเว้นไม่ต้องเขียนเลขฐาน กำกับ แต่ถ้าเป็นฐานอื่นเช่น ฐาน 2 ฐาน 8 หรือ ฐาน 16 จะมีให้มีเลขฐานกำกับไว้เสมอ สำหรับเลขตั้งแต่ 10 เป็นต้นไป จะใช้ตัวอักษรภาษาอังกฤษ สื่อความหมายแทน ได้แก่ A=10 B=11 C=12 D=13 E=14 F=15 G=16 H=17 เช่น 10012 178 AB9F16 แปลงเลขฐาน http://www.dlth.in.th/base-converter-tools.html ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
เลขฐาน 10 ระบบเลขฐาน 10 (Decimal Number System) เลขฐาน 10 (Decimal Digit) คือ เลขฐานที่ประกอบด้วยเลข 10 ตัว ได้แก่ 0 ถึง 9 เป็นเลขฐานที่ในชีวิตประจำวันจนเป็นความ เคยชิน จึงไม่จำเป็นต้องเข้าใจในความหมาย หรือ ที่มาของตัวเลขเหล่านั้น เพราะไม่ต้องเปรียบเทียบฐาน นี้กับฐานใด เมื่อนำไปใช้ในชีวิตประจำวัน เช่น 5 23 123 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
เลขฐาน 2 ระบบเลขฐาน 2 (Binary Number System) เลขฐาน 2 (Binary Digit) คือ เลขฐานที่ประกอบด้วยเลข 2 ตัว ได้แก่ 0 กับ 1 เป็นเลขฐานที่คอมพิวเตอร์เข้าใจได้ง่าย เหมือน สถานะทางไฟฟ้าคือ ปิด กับ เปิด ดังนั้น คอมพิวเตอร์จึงเก็บข้อมูลเป็นกลุ่มของเลขฐานสองหลาย บิต (Bit = Binary Digit) รวมกันเพื่อแทนความหมาย ของข้อมูล แทนการใช้เลขฐาน 10 เช่น 12 1012 01102 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
เลขฐาน 16 ระบบเลขฐาน 16 (Hexadecimal Number System) เลขฐาน 16 (Hexadecimal Digit) คือ เลขฐานที่ประกอบด้วยเลข 16 ตัว ได้แก่ 0 ถึง 15 แต่เลข 10 ถึง 15 จะใช้ ตัวอักษร A ถึง F แทน ความสำคัญของเลข ฐานนี้ในคอมพิวเตอร์คือใช้นำเสนอข้อมูลแทน เลขฐาน 2 จำนวน 4 Bit ดังนั้นการแสดงข้อมูล จำนวน 8 Bit ซึ่งเท่ากับ 1 Byte จะใช้เลขฐาน 16 จำนวน 2 หลัก เช่น การแสดงข้อมูลใน โปรแกรม Debug เป็นต้น เช่น 4116 3016 A116 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
แปลงเลขฐาน 10 เป็น เลขฐาน 10 100 = 1 101 = 10 102 = 100 5 = (5 * 100)=5 23 = (2 * 101)+(3 * 100) = 20+3 123 = (1 * 102)+(2 * 101)+(3 * 100) = 100+20+3 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
แปลงเลขฐาน 2 เป็น เลขฐาน 10 20 = 1 21 = 2 22 = 4 23 = 8 12 = (1 * 20)=1 1012 = (1 * 22)+(0 * 21)+(1 * 20) = 4+0+1 = 5 01102 = (0*23)+(1*22)+(1*21)+(0*20) = 0+4+2+0 = 6 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
แปลงเลขฐาน 16 เป็น เลขฐาน 10 160 = 1 161 = 16 162 = 256 163 = 4096 4116 = (4 * 161)+(1 * 160) = 64+1 = 65 3016 = (3 * 161)+(0 * 160) = 48+0 = 48 A116 = (10 * 161)+(1 * 160) = 160+1 = 161 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number
แปลงเลขฐาน 10 เป็น เลขฐาน 10 12310 = ?10 10 )123 3 10 )12 2 1 12310 = 12310
แปลงเลขฐาน 10 เป็น เลขฐาน 2 6 = ?2 2 )6 0 2 )3 1 1 6 = 1102
แปลงเลขฐาน 10 เป็น เลขฐาน 16 1601 = ?16 16 )1601 1 16 )100 4 6 1601 = 64116
ตัวอย่างการแปลงระหว่างเลขฐาน เลขฐาน 2 เลขฐาน 8 เลขฐาน 10 เลขฐาน 16 0 0 0 0 1 1 1 1 10 2 2 2 11 3 3 3 100 4 4 4 101 5 5 5 110 6 6 6 111 7 7 7 1000 10 8 8 1001 11 9 9 1010 12 10 A 1011 13 11 B 1100 14 12 C 1101 15 13 D 1110 16 14 E 1111 17 15 F
การบวกเลขฐาน 2 1.102 + 12 = ? 3.1012 + 12 = ? 102 1012 + 12 + 12 -- + 12 -- 112 == 2.1012 + 1012 = ? 1012 + 1012 --- 10102 ==== 3.1012 + 12 = ? 1012 + 12 --- 1102 === 4.10112 + 11012 = ? 10112 + 11012 ---- 110002 =====
การบวกเลขฐาน 16 1.A116 + 1A16 = ? A116 + 1A16 -- BB16 == 2.AF16 + 1116 = ? AF16 + 1116 C016 3.1AF16 + AA16 = ? 1AF16 + AA16 --- 25916 === 4.9916 + 1A116 = ? 9916 + 1A116 23A16
การลบเลขฐาน 2 1.102 - 12 = ? 3.1012 - 12 = ? 102 1012 - 12 - 12 -- --- - 12 -- 12 == 2.1012 - 1012 = ? 1012 - 1012 --- 02 === 3.1012 - 12 = ? 1012 - 12 --- 1002 === 4.10102 - 1012 = ? 10102 - 1012 ---- =====
การลบเลขฐาน 16 1.A116 - 1A16 = ? A116 - 1A16 -- 8716 == 2.AF16 - 1116 = ? AF16 - 1116 9E16 3.1AF16 - AA16 = ? 1AF16 - AA16 --- 10516 === 4.1A916 - 19116 = ? 1A916 - 19116 1816
การคูณเลขฐาน 2 Question. 112 × 112 1 × Answer. 10012
การคูณเลขฐาน 2 Question. 1012 × 1012 1 × Answer. 110012
การคูณเลขฐาน 16 Question. 5416 × 3216 5 4 × 3 2 A 8 F C 1 6 6 Answer. 106816
การคูณเลขฐาน 16 Question. A116 × 1A16 A 1 × 6 4 5 Answer. 105A16
การหารเลขฐาน 16 Question. A16 % 216 5 2 ) A A Answer. 516
การหารเลขฐาน 16 Question. 112216 % 1116 102 11 ) 1122 2 22 ) 1122 2 22 Answer. 10216
การคูณทศนิยม 16 Question. A.A16 × 1A16 A . A × 1 6 4 . 4 Answer. 114.416
การหารทศนิยม 16 Question. 114.416 % 1A16 Answer. A.A16 A.A 1A ) 114.4 ) 114.4 104 Answer. A.A16
องค์ประกอบที่ทำให้สมบูรณ์ (Complement)(1/3) A two's-complement system is a system in which negative numbers are represented by the two's complement of the absolute value;[1] this system is the most common method of representing signed integers on computers. In such a system, a number is negated (converted from positive to negative or vice versa) by computing its two's complement. ข้อมูลจาก http://www.cs.rit.edu/~afb/20012/cs1/slides/javatypes-03.html ข้อมูลจาก http://en.wikipedia.org/wiki/Two's_complement ข้อมูลจาก http://www.school.net.th/library/create-web/10000/generality/10000-6427.html
องค์ประกอบที่ทำให้สมบูรณ์ (Complement)(2/3) ในข้อมูลขนาด 1 Byte ซึ่งประกอบด้วย 8 Bit เมื่อต้องการเก็บทั้งค่าบวก และค่าลบ เรียกว่าเก็บแบบมี Sign Bit มักใช้แนวคิดของ Two’s Complement มาช่วยในการจัดเก็บ และกำหนดให้ 7 Bit แรกเก็บค่า แต่ Bit หน้าสุดจะเก็บเครื่องหมาย เช่น Two’s Complement ของ 0111 มีค่าเท่ากับ 7 Two’s Complement ของ 1111 มีค่าเท่ากับ -1 7 - 1 = 6 หรือ 0111 - (1111) = 0111 - (0001) = 0110 = 6
องค์ประกอบที่ทำให้สมบูรณ์ (Complement)(3/3) ตัวอย่างการใช้ Two’s Complement โจทย์ 7 - 1 = 6 เป็นเลขฐาน 2 0111 - (1111) กลับบิท 0111 - (0001) แปลงกลับ 0110 = 6
แบบฝึกหัดที่ 1 แปลงเลขฐาน 1. 10112 = …… 2. 11002 = …… 3. 01112 = …… 4. 11112 = …… 5. 10102 = …… 6. 10012 = …… 7. 10114 = …… 8. 12114 = …… 9. 10314 = …… 10. 30214 = …… 11. 10214 = …… 12. 30124 = …… 13. 20318 = …… 14. 51408 = …… 15. 67118 = …… 16. 11768 = …… 17. 15508 = …… 18. 10048 = …… 19. 121116 = …… 20. 327116 = …… 21. 623116 = …… 22. 333316 = …… 23. 132216 = …… 24. 405116 = …… 25. AFFC16 = …… 26. ACFF 16 = …… 27. 6AF116 = …… 28. 11A616 = …… 29. C5A016 = …… 30. 10A416 = …… 31. F8CA16 = …… 32. 32FA16 = …… 33. CAF116 = …… 34. 5AF516 = …… 35. CA2216 = …… 36. ABFD16 = ……
แบบฝึกหัดที่ 2 บวกลบ 1. 10112 + 112 = ……………2 2. 11002 - 10102 = ……………2 1. 10112 + 112 = ……………2 2. 11002 - 10102 = ……………2 3. 01112 + 0112 = ……………2 4. 11112 - 1112 = ……………2 5. 111116 + 111116 = ……………16 6. A1B116 - A11116 = ……………16 7. F1D116 - D1D116 = ……………16 8. 1F1D16 + 1FF116 = ……………16 9. 10112 + 11004 = ……………8 10. 11004 + 10108 = ……………2 11. 1114 - 01112 = ……………8 12. 1112 + 32108 = ……………4 13. 111116 - 12618 = ……………8 14. 71618 + 32114 = ……………16 15. F1D016 - 11012 = ……………16 16. 16578 + 1FF116 = ……………4
แบบฝึกหัดที่ 3 คูณหาร 1. 10112 × 112 = ……………2 2. 10114 × 114 = ……………4 1. 10112 × 112 = ……………2 2. 10114 × 114 = ……………4 3. 3458 × 328 = ……………8 4. 561116 × AA16 = ……………16 5. 111102 % 102 = ……………2 6. 547328 % 658 = ……………8 7. C3FA416 % 1A16 = ……………16 8. 664816 % 5A16 = ……………16 9. 101.12 × 112 = ……………2 10. 10.114 × 214 = ……………4 11. 42.58 × 428 = ……………8 12. 17.1116 × AB16 = ……………16 13. 1010.02 % 102 = ……………2 14. 104.578 % 658 = ……………8 15. C3E.A16 % 1A16 = ……………16 16. 1199.A16 % 5A16 = ……………16