link download : http://armsim.cs.uvic.ca/
2.install mips simulator
link download : http://pages.cs.wisc.edu/~larus/spim.html#qtspim
ตัวอย่างการแปลงเลขฐานของระบบตัวเลข
หลักการ : คือการเอาค่า Weight ของทุกบิตที่มีค่าเป็น 1 มาบวกกัน ดังตัวอย่าง
ตัวอย่าง : จงแปลง (11011101)2 ให้เป็นเลขฐานสิบ
(11011101)2 = (1X27) + (1X26) + (0X25) + (1X24) + (1X23)+ (1X22) +(0X21) + (1X20)
= 128 + 64 + 0 + 16 + 8 + 4 + 0 + 1
ผลลัพธ์ = (221)10
หลักการ
1. ให้นำเลขฐานสิบเป็นตัวตั้งและนำ 2 มาหาร ได้เศษเท่าไรจะเป็นค่าบิตที่มีนัยสำคัญน้อยที่สุด (LSB)
2. นำผลลัพธ์ที่ได้จากข้อที่ 1 มาตั้งหารด้วย 2 อีกเศษที่จัดจะเป็นบิตถัดไปของเลขฐานสอง
3. ทำเหมือนข้อ 2 ไปเรื่อยๆ จนได้ผลลัพธ์เป็นศูนย์ เศษที่ได้จะเป็นบิตเลขฐานสองที่มีนัยสำคัญมากที่สุด (MSB)
ตัวอย่าง : จงเปลี่ยน (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
การเปลี่ยนเลขฐานแปดเป็นเลขฐานสิบ
หลักเกณฑ์ : นำค่าน้ำหนัก (Weight)และเลขฐานแปดคูณด้วยเลข
ประจำหลักแล้วนำผลที่ได้ทุกหลักมารวมกัน
น้ำหนัก : Weight ได้แก่ … 84 83 82 81 80 8-1 8-2 8-3…
ตัวอย่าง : (134)8 = (…)10
(134)8 = (1X82) + (3X81) + (4X80)
= 64 + 24 + 4
= (92) 10
ดังนั้น (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
8 11 เศษ 3
8 1 เศษ 1
0
1 3 4
ดังนั้น (1011100)2 = (134)8
การเปลี่ยนเลขฐานสองเป็นเลขฐานแปดและฐานแปดเป็นเลขฐานสอง วิธีลัด
ตารางเปรียบเทียบเลขฐานแปดและเลขฐานสอง
จากตารางจะเห็นว่าเลขฐานแปดหนึ่งหลักสามารถแทนด้วยเลขฐานสองจำนวน 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) ของเลขฐานสิบหกคูณด้วยเลขประจำ
หลัก และนำผลที่ได้ทุกหลักมารวมกัน
น้ำหนัก (Weight) : … 164 163 162 161 160 16-1 16-2 16-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)10 = (0.C9)16
การเปลี่ยนเลขฐานแปดเป็นเลขฐานสอง
หลักการ : จะต้องใช้เลขฐานสิบเป็นตัวกลาง
ตัวอย่าง : (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
การเปลี่ยนเลขฐานสิบหกเป็นฐานสองและเลขฐานสองเป็นฐานสิบหกวิธีลัด
ตารางเปรียบเทียบเลขฐานสิบหกกับเลขฐานสอง
จากตารางจะเห็นว่า เลขฐานสิบหกหนึ่งหลักสามารถจะแทนด้วยเลขฐานสองจำนวน 4 บิต
ตัวอย่าง จงเปลี่ยน (1011100)2 เป็นเลขฐานสิบหก
วิธีทำ 0101 1100
5 12
5 C
ดังนั้น (1011100)2 = (5C)16
ตัวอย่าง จงเปลี่ยน (1011110111011)2 เป็นเลขฐานสิบหก
วิธีทำ 0001 0111 1011 1011
1 7 11 11
1 7 B B
ดังนั้น (1011110111011)2 = (17BB)16
ตัวอย่าง จงเปลี่ยน (A95)16 เป็นเลขฐานสอง
วิธีทำ A 9 5
1010 1001 0101
ดังนั้น (A95)16 = (101010010101)2
|