1 / 30

โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้

โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้. ระบบเลขฐาน (Radix Number). ผศ.บุรินทร์ รุจจนพันธุ์ . ปรับปรุง 13 พฤศจิกายน 2555. มหาวิทยาลัยเนชั่น จังหวัดลำปาง http://www. nation.ac.th. ความหมาย. ระบบเลขฐาน (Radix Number)

tamra
Download Presentation

โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. โครงสร้างคอมพิวเตอร์ และภาษาแอสเซมบลี้ ระบบเลขฐาน (Radix Number) ผศ.บุรินทร์ รุจจนพันธุ์ . ปรับปรุง 13 พฤศจิกายน 2555 มหาวิทยาลัยเนชั่น จังหวัดลำปาง http://www.nation.ac.th

  2. ความหมาย ระบบเลขฐาน (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

  3. เลขฐาน 10 ระบบเลขฐาน 10 (Decimal Number System) เลขฐาน 10 (Decimal Digit) คือ เลขฐานที่ประกอบด้วยเลข 10 ตัว ได้แก่ 0 ถึง 9 เป็นเลขฐานที่ในชีวิตประจำวันจนเป็นความเคยชิน จึงไม่จำเป็นต้องเข้าใจในความหมาย หรือที่มาของตัวเลขเหล่านั้น เพราะไม่ต้องเปรียบเทียบฐานนี้กับฐานใด เมื่อนำไปใช้ในชีวิตประจำวัน เช่น 5 23 123 ข้อมูลจาก http://th.wikipedia.org/wiki/Radix_Number

  4. เลขฐาน 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

  5. เลขฐาน 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

  6. แปลงเลขฐาน 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

  7. แปลงเลขฐาน 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

  8. แปลงเลขฐาน 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

  9. แปลงเลขฐาน 10 เป็น เลขฐาน 10 12310 = ?10 10 )1233 10 )122 1 12310 = 12310

  10. แปลงเลขฐาน 10 เป็น เลขฐาน 2 6 = ?2 2 )60 2 )31 1 6 = 1102

  11. แปลงเลขฐาน 10 เป็น เลขฐาน 16 1601 = ?16 16 )16011 16 )1004 6 1601 = 64116

  12. ตัวอย่างการแปลงระหว่างเลขฐานตัวอย่างการแปลงระหว่างเลขฐาน เลขฐาน 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

  13. การบวกเลขฐาน 2 1.102 + 12 = ? 102 + 12 -- 112 == 2.1012 + 1012 = ? 1012 + 1012 --- 10102 ==== 3.1012 + 12 = ? 1012 + 12 --- 1102 === 4.10112 + 11012 = ? 10112 + 11012 ---- 110002 =====

  14. การบวกเลขฐาน 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 ===

  15. การลบเลขฐาน 2 1.102 - 12 = ? 102 - 12 -- 12 == 2.1012 - 1012 = ? 1012 - 1012 --- 02 === 3.1012 - 12 = ? 1012 - 12 --- 1002 === 4.10102 - 1012 = ? 10102 - 1012 ---- 1012 =====

  16. การลบเลขฐาน 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 ===

  17. การคูณเลขฐาน 2

  18. การคูณเลขฐาน 2

  19. การคูณเลขฐาน 16

  20. การคูณเลขฐาน 16

  21. การหารเลขฐาน 16

  22. การหารเลขฐาน 16

  23. การคูณทศนิยม 16

  24. การหารทศนิยม 16

  25. องค์ประกอบที่ทำให้สมบูรณ์ (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

  26. องค์ประกอบที่ทำให้สมบูรณ์ (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

  27. องค์ประกอบที่ทำให้สมบูรณ์ (Complement)(3/3) ตัวอย่างการใช้ Two’s Complement โจทย์ 7 - 1 = 6 เป็นเลขฐาน 2 0111 - (1111) กลับบิท 0111 - (0001) แปลงกลับ 0110 = 6

  28. แบบฝึกหัดที่ 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 = ……

  29. แบบฝึกหัดที่ 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

  30. แบบฝึกหัดที่ 3 คูณหาร 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

More Related