การแปลงเลขฐานต่างๆ

216,588 views

Published on

10 Comments
45 Likes
Statistics
Notes
  • จร้า ก้อดี
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ตัวเลขผิดเยอะจิงๆ ช่วยแก้ด้วยนะคับ เด๋วเพื่อนๆ คนอื่น ค้าจาเข้าใจผิด
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ช่วยได้เรย
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • ตัวเลขผิดเยอะมากครับ ถ้ามีเวลาก็ช่วยมาแก้ด้วยนะครับ เพื่อคนต่อๆไปที่มาดูจะได้เข้าใจง่ายขึ้น
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Thank You.PÂ
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
216,588
On SlideShare
0
From Embeds
0
Number of Embeds
67
Actions
Shares
0
Downloads
1,990
Comments
10
Likes
45
Embeds 0
No embeds

No notes for slide

การแปลงเลขฐานต่างๆ

  1. 1. ระบบเลขฐานเลขฐาน ระบบจำานวนที่ใช้กันอยู่ในชีวิตประจำาวันเป็นระบบเลขฐานสิบ ซึ่งมีสัญลักษณ์ที่เป็นตัวเลข 10 ตัว คือ 0, 1, 2, 3, …, 9ในการใช้งานคอมพิวเตอร์ทำาให้เกิดระบบเลขฐานอื่นๆ คือ ระบบเลขฐานสอง มีสัญลักษณ์เป็นตัวเลข 2 ตัว คือ 0 และ 1 ระบบเลขฐานแปด มีสัญลักษณ์เป็นตัวเลข 8 ตัว คือ 0, 1, 2, 3,4, 5, 6, และ 7 และ ระบบเลขฐานสิบหก มีสัญลักษณ์ที่เป็นตัวเลขและตัวอักษร 16ตัว คือ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E และ F เพื่อให้ทราบว่าจำานวนใดเป็นจำานวนในระบบเลขฐานใด ทำาโดยเขียนตัวเลขฐานกำากับไว้ที่ท้ายของจำานวนนั้น ยกเว้นเลขฐานสิบตัวอย่างเช่น 102 หมายถึง 10 ในระบบเลขฐานสอง 768 หมายถึง 76 ในระบบเลขฐานแปด และ 10216 หมายถึง 102 ในระบบเลขฐานสิบหก เลขฐานต่างๆสามารถโยงความสัมพันธ์ซึ่งกันและกันได้ เช่นสามารถแปลงจากเลขฐานหนึ่งไปยังอีกฐานหนึ่งได้ และเปลี่ยนจากเลขฐานต่างๆ ไปยังเลขฐานสิบที่ใช้กันทั่วไป ฐานสอง ฐานแปด ฐานสิบ ฐานสิบหก 10 2 2 2 100 4 4 4 1000 10 8 8 1110 16 14 E 10000 20 16 10 100000 40 32 20
  2. 2. ตัวอย่างการแปลงเลขฐานของระบบตัวเลขการแปลงฐานสองเป็นเลขฐานสิบ : หลักการ : คือการเอาค่า Weight ของทุกบิตที่มีค่าเป็น 1 มาบวกกัน ดังตัวอย่าง ตัวอย่าง : จงแปลง (11011101)2 ให้เป็นเลขฐานสิบ (11011101)2 = (1X27) + (1X26) + (0X25) + (1X24) + (1X23)+ (1X22) + (0X21) + (1X20) = 128 + 64 + 0 + 16 + 8 + 4 + 0 + 1 = (221)10 ตัวอย่าง : จงเปลี่ยน (1011.101)2 เป็นเลขฐานสิบ 1 0 1 1 . 1 0 1 ผลลัพธ์ 2-3 0.125 2 -2 0.0 2-1 0.5 - 20 1. 21 2. 22 0. 23 8. (11.625) 10 ∴ (1011.101)2 = (11.625)10การเปลี่ยนเลขฐานสิบเป็นเลขฐานสอง หลักการ 1. ให้นำาเลขฐานสิบเป็นตัวตั้งและนำา 2 มาหาร ได้เศษเท่าไรจะ เป็นค่าบิตที่มีนยสำาคัญน้อยที่สุด (LSB) ั 2. นำา ผลลัพธ์ที่ได้จากข้อที่ 1 มาตั้งหารด้วย 2 อีกเศษที่จัดจะ เป็นบิตถัดไปของเลขฐานสอง 3. ทำาเหมือนข้อ 2 ไปเรื่อยๆ จนได้ผลลัพธ์เป็นศูนย์ เศษที่ได้จะ เป็นบิตเลขฐานสองที่มีนัยสำาคัญมากที่สุด (MSB)
  3. 3. ตัวอย่าง : จงเปลี่ยน (221)10 เป็นเลขฐานสอง 2 221 เศษ 1 (LSB) 2 110 เศษ 0 2 55 เศษ 1 2 27 เศษ 1 2 13 เศษ 1 2 6 เศษ 0 2 3 เศษ 1 2 1 เศษ 1 (MSB) 0 ∴ (221)10 = (11011101)2หมายเหตุ 1. บิ ต ที่ มี นั ย สำา คั ญ สู ง สุ ด (Most Significant Bit : MSB) คื อ บิตที่อยู่ซ้ายมือสุด เป็นบิตที่มีค่าประจำาหลักมากที่สุด 2. บิตที่มีนัยสำาคัญตำ่าสุด (Least Significant Bit : LSB) คือ บิต ที่อยู่ขวามือสุด เป็นบิตที่มีค่าประจำาหลักน้อยที่สุดวิธีคิดโดยใช้นำ้าหนัก (Weight) ของแต่ละบิต ตัวอย่าง จงเปลี่ยน (221)10 = (……)2 1. นำาค่านำ้าหนัก (Weight) มาตั้ง โดย Weight ที่มีค่ามากที่สุด ต้องไม่เกินจำานวนที่จะเปลี่ยนดังนี้ 356 128 64 32 16 8 4 2 1 2. เลื อกค่า Weight ที่มีค่ามากที่ สุด และค่ า Weight ตัว อื่น ๆ เมื่อนำามารวมกันแล้วให้ได้เท่ากับจำานวนที่ต้องการ ค่า Weight 128 64 32 16 8 4 2 1 เลือก 128 + 64 + 0 + 16 + 8 + 4 + 0 + 1 = 221 ฐานสอง 1 1 0 1 1 1 0 1 ∴ (221)10 = (11011101)2การเปลี่ยนเลขฐานสิบที่มีจุดทศนิยมเป็นเลขฐานสอง หลักการ 1. ให้เปลี่ยนเลขจำา นวนเต็มหน้าจุดทศนิยมด้วยวิธี ที่กล่าวมา แล้ว 2. ให้นำาเลขจุดทศนิยมมาตั้งแล้วคูณด้วย 2 ผลคูณมีค่าน้อยกว่า 1 จะได้ค่าเลขฐานสองเป็น 0 แต่ถ้าผลคูณมีค่ามากกว่า 1 หรือ เท่ากับ 1 จะได้ค่าเลขฐานสองเป็น 1
  4. 4. 3. ให้นำาเลขจุดทศนิยมที่ได้จากผลการคูณใน ‚ มาตั้งและคูณ ด้วย 2 และพิจารณาผลลัพธ์เช่นเดียวกับข้อ ‚ และกระบวนการ นี้จะทำาต่อไปเรื่อย ๆ จนกว่าผลคูณจะมีค่าเท่ากับ 1 หรือได้ค่าที่ แม่นยำาเพียงพอแล้ว ตัวอย่าง : จงเปลี่ยน (0.375)10 เป็นเลขฐานสอง ผลการคูณ ผลของจำานวนเต็ม 0.375 X 2 = 0.75 0 0.75 X 2 = 1.5 1 0.5 X 2 = 1.0 1 ดังนั้น (0.375)10 = (0.011)2 ตัวอย่าง : จงเปลี่ยน (12.35)10 เป็นฐานสอง 1. 1. เปลียน (12)10 ให้เป็นเลขฐานสอง ่ (12)10 = (1100)2 2. เปลียน (0.35)10 เป็นเลขฐานสอง ่ ผลการคูณ ผลของจำานวนเต็ม 0.35 X 2 = 0.7 0 0.7 X 2 = 1.4 1 0.4 X 2 = 0.8 0 0.8 X 2 = 1.6 1 0.6 X 2 = 1.2 1 0.2 X 2 = 0.4 0 0.4 X 2 = 0.8 0 0.8 X 2 = 1.6 1 การเปลี่ยนจะซำ้ากันไปเรื่อย ๆ จะนำามาใช้เพียง 6 บิต ดังนั้น (12.35)10 = (1100.010110)2การเปลี่ยนเลขฐานแปดเป็นฐานสิบและเลขฐานสิบเป็นฐานแปด การเปลี่ยนเลขฐานแปดเป็นเลขฐานสิบ หลั ก เกณฑ์ : นำา ค่ า นำ้า หนั ก (Weight)และเลขฐานแปด คูณด้วยเลข ประจำาหลักแล้วนำาผลทีได้ทุกหลักมารวมกัน ่ นำ้า หนั ก : Weight ได้ แ ก่ … 8 83 82 81 80 8-1 8-2 48-3… ตัวอย่าง : (134)8 = (…)10 (134)8 = (1X82) + (3X81) + (4X80) = 64 + 24 + 4 = (92) 10
  5. 5. ดังนั้น (134)8 = (92)10 จุดทศนิยม การเปลี่ยนเลขฐานสิบเป็นเลขฐานแปด หลักเกณฑ์ : นำาเลขฐานสิบเป็นตัวตั้งแล้วหารด้วย 8 เศษที่ได้จากการ หารจะเป็ น ค่ า ของเลขฐานแปด ทำา เช่ น เดี ย ว กับการเปลี่ยน เลขฐานสิบเป็นฐานสอง ตัวอย่าง : (92)10 = (…)8 8 92 เศษ 4 8 11 เศษ 3 8 1 เศษ 1 0 1 3 4 ดังนั้น (92)10 = (134)8การเปลี่ยนเลขฐานแปดเป็นสองและเลขฐานสองเป็นฐานแปด การเปลี่ยนเลขฐานแปดเป็นเลขฐานสอง หลักการ : จะต้องใช้เลขฐานสิบเป็นตัวกลางในการเปลี่ยน ตัวอย่าง : (134)8 = (…)2 1. เปลียนเลขฐานแปดเป็นเลขฐานสิบ ่ (134)8 = (1X88) + (3X81) + (4X80) = (92)10 2. เปลียนเลขฐานสิบเป็นเลขฐานสอง ่ (92)10 = (…)2 Weight = 64 32 16 8 4 2 1 = 64 + 0 + 16 + 8 + 4 + 0 + 0 เลขฐาน 2 = 1 0 1 1 1 0 0 ดังนั้น (134)8 = (1011100)2 การเปลี่ยนเลขฐานสองเป็นเลขฐานแปด หลักการ : จะต้องใช้เลขฐานสิบเป็นตัวกลางในการเปลี่ยน ตัวอย่าง : (1011100)2 = (…)8 1. 1. เปลียนเลขฐานสองเป็นเลขฐานสิบ ่ (1011100)2 = 64 + 0 + 16 + 8 + 4 + 0 + 0 = (92)10 2. 2. เปลียนฐานสิบเป็นเลขฐานแปด ่ 8 92 เศษ 4
  6. 6. 8 11 เศษ 3 8 1 เศษ 1 0 1 3 4 ดังนั้น (1011100)2 = (134)8การเปลี่ยนเลขฐานสองเป็นเลขฐานแปดและฐานแปดเป็นเลขฐานสอง วิธีลัด เลขฐานแปด เลขฐานสอง 0 000 1 001 2 010 3 011 4 100 5 101 6 110 7 111 ตารางเปรียบเทียบเลขฐานแปดและเลขฐานสอง จากตารางจะเห็นว่าเลขฐานแปดหนึ่งหลักสามารถแทนด้วยเลขฐานสองจำานวน 3 บิต ตัวอย่าง : จงแปลงเลขฐานสองเป็นเลขฐานแปด (1011100) 2 = (…)8 วิธทำา : ี 001 011 100 1 3 4 ดังนั้น (1011100) 2 = (134)8 ตัวอย่าง เปลี่ยนเลขฐานแปดเป็นเลขฐานสอง (6143)8 = (…)2 วิธทำา ี 6 1 4 3 110 001 100 011 ดังนั้น (6143)8 = (110001100011)2การเปลี่ยนเลขฐานสิบหกเป็นฐานสิบและเลขฐานสิบเป็นฐานสิบหกการเปลี่ยนเลขฐานสิบหกเป็นเลขฐานสิบ หลักการ : นำา ค่านำ้า หนัก (Weight) ของเลขฐานสิบหกคูณด้วยเลขประจำา
  7. 7. หลัก และนำาผลที่ได้ทุกหลักมารวมกัน นำ้าหนัก (Weight) : … 164 163 162 161 160 16-1 16-216-3… ตัวอย่าง (6C)16 = (…)10 (6C)16 = (5X161) + (12X160) = 80 + 12 = (92)10 ดังนั้น (6C)16 = (92)10 ตัวอย่าง (0.3)16 = (…)10 (0.3.16(0.3)16 = 3X10-1 = 3X0.0625 = (0.1875)10 ดังนั้น (0.3)16 = (0.1878)10การเปลี่ยนเลขฐานสิบเป็นเลขฐานสิบหก หลักการ : นำาเลขฐานสิบมาเป็นตัวตั้งแล้วนำา 16 มาหาร เศษที่ได้จากการหาร จะเป็นค่า เลขฐานสิบหก ทำาเช่นเดียวกับการเปลี่ยนเลขฐานสิบเป็นเลข ฐานสอง ตัวอย่าง : (92)10 = (…)16 วิธทำา : ี 16 92 เศษ 12 =C 16 5 เศษ 5 5 C ดังนั้น (92)10 = (5C)16 ตัวอย่าง (0.7875)10 = (….)16 วิธทำา ี ผลการคูณ ผลของจำานวนเต็ม 0.7875 X 16 = 12 = C 12.6 9 0.6 X 16 = 9.6 0.6 X 16 = 9 9.6 9 0.6 X 16 = 9.6 ดังนั้น (0.7875)10 = (0.C9)16
  8. 8. การเปลี่ยนเลขฐานสองเป็นฐานสิบหก และฐานสิบหกเป็นฐานสองการเปลี่ยนเลขฐานแปดเป็นเลขฐานสอง หลักการ : จะต้องใช้เลขฐานสิบเป็นตัวกลาง ตัวอย่าง : (5C)16 = (…)2 1. เปลียนเลขฐานสิบหกเป็นเลขฐานสิบ ่ (5C)16 = (5X161) + (12X160) = 80 + 12 = (92)10 2. เปลียนเลขฐานสิบเป็นเลขฐานสอง ่ (92)10 = (…)2 Weight = 64 32 16 8 4 2 1 64 + 0 + 16 + 8 + 4 + 0 + 0 เลขฐานสอง = 1 0 1 1 1 0 0 ดังนั้น (5C)16 = (1011100)2การเปลี่ยนเลขฐานสองเป็นเลขฐานสิบหก หลักการ : ต้องใช้เลขฐานสิบเป็นตัวกลาง ตัวอย่าง : (1011100)2 = (…)16 1. เปลียน (1011100)2 เป็นเลขฐานสิบ ่ (1011100)2 = (92)10 2. เปลียนเลขฐานสิบเป็นเลขฐานสิบหก ่ 16 92 เศษ 12 =C 16 5 เศษ 5 0 5 C ดังนั้น (1011100)2 = (5C)16 การเปลี่ยนเลขฐานสิบหกเป็นฐานสองและเลขฐานสองเป็นฐานสิบหกวิธีลัด เลขฐานสิบหก เลขฐานสอง 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101
  9. 9. 6 0110 7 0111 8 1000 9 1001 A 1010 B 1011 C 1100 D 1101 E 1110 F 1111 ตารางเปรียบเทียบเลขฐานสิบหกกับเลขฐานสอง จากตารางจะเห็นว่า เลขฐานสิบหกหนึ่งหลักสามารถจะแทนด้วยเลขฐานสองจำานวน 4 บิต ตัวอย่าง จงเปลียน (1011100)2 เป็นเลขฐานสิบหก ่ วิธทำา01011100 ี 5 12 5 C ดังนั้น (1011100)2 = (5C)16 ตัวอย่าง จงเปลียน (1011110111011)2 เป็นเลขฐานสิบหก ่ วิธทำา0001011110111011 ี 1 7 11 11 1 7 B B ดังนั้น (1011110111011)2 = (17BB)16 ตัวอย่าง จงเปลียน (A95)16 เป็นเลขฐานสอง ่ วิธทำา ี A 9 5 101010010101 ดังนั้น (A95)16 = (101010010101)2แบบฝึกหัด
  10. 10. 2.1 จงแปลงเลขฐานสิบต่อไปนี้ เป็นเลขฐานสี่ (base-4) และเลขฐานห้า (base-5) a. 10 b. 21 c. 50 d. 67 e. 100 2.2 จงแปลงเลขฐานต่อไปนี้ เป็นเลขฐานสิบ a. (24)5 b. (3F7)16 c. (148)8 d. (ABC)15 2.3 จงแปลงเลขฐานสองต่อไปนี้ เป็นเลขฐานสิบและให้มีทศนิยมเพียง 4 ตำาแหน่ง a. (0.1111)2 b. (0.11010011)2 c. (001110.111111111)2 2.4 จงแปลงเลขฐานสิบต่อไปนี้ เป็นเลขฐานสองและให้มีทศนิยมเพียง 4 ตำาแหน่ง a. (0.1111)10 b. (947.613)10 c. (4287.6543)10 2.5 จงแปลงเลขฐานสิบหกต่อไปนี้ เป็นเลขฐานแปด a. (ABCE)16 b. (97F)16 c. (A0)16 2.6 จงแปลงเลขฐานแปดต่อไปนี้ เป็นเลขฐานสิบหก a. (375)8 b. (054)8 c. (3517)8อ้างอิงโปรแกรมhttp://kmitlboard.packetlove.com/webserv/bnctool/#b10tob2

×