วิธีการแปลงเลขฐาน
คอมพิวเตอร์นั้นมีความสำคัญกับเรามาก ซึ่งในปัจจุบันธุรกิจได้มีการนำคอมพิวเตอร์เข้ามาช่วยในการทำงานต่างๆ โดยให้โปรแกรมเมอร์สร้างระบบต่างๆ ขึ้นมา เพื่ออำนวยความสะดวกการทำงานให้แก่พนักงาน เพื่อลดข้อผิดพลาดต่างๆ จากพนักงานและให้พนักงานได้ทำงานได้รวดเร็วขึ้นมากกว่าเดิม ซึ่งจะทำให้ผลลัพธ์ทางธุรกิจนั้นออกมาได้อย่างรวดเร็วและมีจำนวนมากขึ้นด้วย โดยผู้พัฒนาระบบนั้นจะต้องเข้าใจภาษาของคอมพิวเตอร์จึงจะสามารถติดต่อสื่อสาร พูดคุยหรือสั่งให้คอมพิวเตอร์ทำงานตามที่ต้องการได้ โดยภาษาของคอมพิวเตอร์นั้นมีจำนวนเยอะมาก เช่น C++, C# , Java, VB.NET, PHP, PYTHON, GROOVY และภาษาอื่นๆ อีกมากมาย ซึ่งภาษาเหล่านี้สามารถใช้ติดต่อสื่อสารพูดคุยกับคอมพิวเตอร์เพื่อสั่งให้คอมพิวเตอร์ทำงานได้ แต่ในสมัยก่อนนั้น ภาษาเหล่านี้ยังไม่ได้เกิดขึ้นมา นักโปรแกรมเมอร์ในสมัยก่อนนั้นต้องใช้วิธีการแปลงเลขฐานเพื่อให้คอมพิวเตอร์นั้นสามารถรับข้อมูลจากเราได้ เนื่องจากคอมพิวเตอร์นั้นไม่ได้มีการอ่านข้อมูลเป็นภาษาเหมือนเรา แต่คอมพิวเตอร์มีการอ่านข้อมูลเป็นตัวเลข 0 1 เท่านั้น ดังนั้นจึงต้องแปลงเลขฐานเพื่อให้คอมพิวเตอร์สามารถทำงานได้ตามคำสั่งของเรา โดยวิธีการแปลงเลขฐานมีดังนี้
การแปลงเลขฐาน 8 เป็นฐาน 2
วิธีการคิด
- นำเลขฐาน 8 มาแปลงเป็นเลขฐาน 2 โดยการแยกหาที่ละตัว เริ่มจากตัวแรกก่อน
- เลขฐาน 8 หนึ่งตัวจะมีค่าเท่ากับเลขฐาน 2 อยู่ 3 บิต คือ 22, 21, 20
- จากตัวอย่าง 5 แปลงเป็นเลข ฐาน 2 ก็จะได้ 101
- แนวการหาว่า 5 มาจากไหน เลขฐาน 8 หนึ่งตัวจะมีค่าเท่ากับเลขฐาน 2 อยู่ 3 บิต
- บิต 3 คือ 22 = 4, บิต 2 คือ 21 = 2 , บิต 1 คือ 20 = 1
หมายเหตุ ถ้าลบได้คือผลที่ได้ไม่ติดลบ ให้ได้ 1 ถ้าติดลบให้ได้ 0 และนำผลก่อนหน้าที่จะติดลบข้ามไปลบบิตต่อไป
- นำ 5 มาลบ กับ บิต 3 คือ 5 - 4 = 1 ได้ 1
- นำ 1 มาลบ กับ บิต 2 คือ 1 - 2 = -1 ผลที่ได้ติดลบ ได้ 0
- นำ 1 มาลบ กับ บิต 1 คือ 1- 1 = 0 ได้ 1
- ผลที่ได้คือ 58 เท่ากัน 1012 โดยการเรียงผลที่ได้จากบิต 1,2,3
การแปลงเลขฐาน 10 เป็นฐาน 2
วิธีการคิด
- นำเลขฐาน 10 มาหาร จากตัวอย่างคือเลข 592
- นำเลข 592 มาหารด้วย 2 โดยใช้วิธีการหารยาวไปเรื่อยๆ
- นำเศษแต่ละครั้งที่ได้จะมีเลข 1 กับ 0
- นำมาเรียงเริมจากตัวล่างสุดจากตัวอย่างคือ 10010100002
- ผลลัพธ์ที่ได้เลข 10010100002
การแปลงเลขฐาน 16 เป็นฐาน 2
วิธีการคิด (จะเหมือนการคิดเลขฐาน 8)
- นำเลขฐาน 16 มาแปลงเป็นเลขฐาน 2 โดยการแยกหาที่ละตัว เริ่มจากตัวแรกก่อน
- เลขฐาน 16 หนึ่งตัวจะมีค่าเท่ากับเลขฐาน 2 อยู่ 4 บิต คือ 23,22, 21, 20
- จากตัวอย่าง A แปลงเป็นเลข ฐาน 2 ก็จะได้ 1010
- แนวการหาว่า A มาจากไหน เลขฐาน 16 หนึ่งตัวจะมีค่าเท่ากับเลขฐาน 2 อยู่ 4 บิต
- บิต 4 คือ 23=8 ,บิต 3 คือ 22 = 4, บิต 2 คือ 21 = 2 , บิต 1 คือ 20 = 1
หมายเหตุ ถ้าลบได้คือผลที่ได้ไม่ติดลบ ให้ได้ 1 ถ้าติดลบให้ได้ 0 และนำผลก่อนหน้าที่จะติดลบข้ามไปลบบิตต่อไป
- นำ A มาลบ กับ บิต 4 คือ 10 - 8 = 2 ได้ 1 หมายเหตุ A คือ 10
- นำ 1 มาลบ กับ บิต 3 คือ 2 - 4 = -2 ผลที่ได้ติดลบ ได้ 0
- นำ 2 มาลบ กับ บิต 2 คือ 2 - 2= 0 ได้ 1
- นำ 0 มาลบ กับ บิต 1 คือ 0 - 1 = -1 ผลที่ได้ติดลบ ได้ 0
- ผลที่ได้คือ A16 เท่ากัน 10102 โดยการเรียงผลที่ได้จากบิต 1,2,3,4
การแปลงเลขฐาน 2 เป็นฐาน 8
วิธีการคิด
- เลขฐาน 8 หนึ่งตัวจะมีค่าเท่ากับเลขฐาน 2 อยู่ 3 บิต
- วิธีการหาคือ 11011011 แบ่งออกเป็น 3 บิต คือ 011/010/110 *หมายเหตุ ถ้าแบ่งและตัวที่อยู่หน้าสุดเหลือ 1 หรือ 2 บิต ให้เพิ่ม 0 ใส่จนครบ 3 บิต
- บิต 3 คือ 22 = 4, บิต 2 คือ 21 = 2 , บิต 1 คือ 20 = 1
- ตัวอย่างวิธีการหา 110 = 6
- นำตัวที่ 1 ของชุด คูณ บิต 3 คือ 1 x 4 = 4
- นำตัวที่ 2 ของชุด คูณ บิต 2 คือ 1 x 2 = 2
- นำตัวที่ 3 ของชุด คูณ บิต 1 คือ 0 x 1 = 0
- นำผลที่ได้มารวมกันคือ 4 + 2 + 0 = 6
- ผลที่ได้คือ 68
การแปลงเลขฐาน 2 เป็นฐาน 10
วิธีการคิด
- นำเลขฐาน 2 จากตัวอย่างคือ 11001
*หมายเหตุ 110012 นับจากหลังมาหน้า
- นำเลขฐาน 2 ตัวที่ 1 คือ 1 คูณกับ บิต 1 ของฐาน 2 คือ 1 x 20 = 1
- นำเลขฐาน 2 ตัวที่ 2 คือ 0 คูณกับ บิต 2 ของฐาน 2 คือ 0 x 21 = 0
- นำเลขฐาน 2 ตัวที่ 3 คือ 0 คูณกับ บิต 3 ของฐาน 2 คือ 0x 22 = 0
- นำเลขฐาน 2 ตัวที่ 4 คือ 1 คูณกับ บิต 4 ของฐาน 2 คือ 1 x 23 = 8
- นำเลขฐาน 2 ตัวที่ 5 คือ 1 คูณกับ บิต 5 ของฐาน 2 คือ 1 x 24 = 16
- นำผลที่ได้มาบวกกัน ก็จะได้เลขฐาน 10 คือ 25
การแปลงเลขฐาน 2 เป็นฐาน 16
วิธีการคิด
- เลขฐาน 16 หนึ่งตัวจะมีค่าเท่ากับเลขฐาน 2 อยู่ 4 บิต
- วิธีการหาคือ 11011011100 แบ่งออกเป็น 3 บิต คือ 0110/1101/1100*หมายเหตุ ถ้าแบ่งและตัวที่อยู่หน้าสุดเหลือ 1,2 หรือ 3 บิต ให้เพิ่ม 0 ใส่จนครบ 4 บิต
- บิต 4 คือ 23 = 8, บิต 3 คือ 22 = 4 , บิต 2 คือ 21 = 2, บิต 1 คือ 20 = 1
- ตัวอย่างวิธีการหา 1100 = C
- นำตัวที่ 1 ของชุด คูณ บิต 4 คือ 1 x 8 = 8
- นำตัวที่ 2 ของชุด คูณ บิต 3 คือ 1 x 4 = 4
- นำตัวที่ 3 ของชุด คูณ บิต 2 คือ 0 x 2 = 0
- นำตัวที่ 4 ของชุด คูณ บิต 1 คือ 0 x 1 = 0
- นำผลที่ได้มารวมกันคือ 8 + 4 + 0 + 0 = C
- ผลที่ได้คือ C16
การแปลงเลขฐาน 10 เป็นฐาน 8
วิธีการคิด
- นำเลขฐาน 10 มาหาร จากตัวอย่างคือเลข 986
- นำเลข 592 มาหารด้วย 8 โดยใช้วิธีการหารยาวไปเรื่อยๆ
- นำเศษแต่ละครั้งที่ได้จะมีเลข 7 ถึง 0
- นำมาเรียงเริมจากตัวล่างสุดจากตัวอย่างคือ 1732
- ผลลัพธ์ที่ได้เลข 17328
การแปลงเลขฐาน 10 เป็นฐาน 16
วิธีการคิด
- นำเลขฐาน 10 มาหาร จากตัวอย่างคือเลข 598
- นำเลข 598 มาหารด้วย 16 โดยใช้วิธีการหารยาวไปเรื่อยๆ
- นำเศษแต่ละครั้งที่ได้จะมีเลข F(15) ถึง 0
- นำมาเรียงเริมจากตัวล่างสุดจากตัวอย่างคือ 256
- ผลลัพธ์ที่ได้เลข 25616
References : การแปลงเลขฐาน. “การแปลงเลขฐาน”. [ออนไลน์]. เข้าถึงได้จาก:th.wikipedia.org/wiki/รหัสตัวเลข. [1 ก.ค. 2016].
ภาพประกอบจาก : www.sritani.ac.th