Cách chuyển đổi hệ cơ số 10 sang 16

Chuyển đổi giữa các hệ cơ số

Nguyên tắc để chuyển đổi giữa các hệ cơ số 

Nguyên tắc 1 : chuyển từ hệ cơ số thập phân sang một hệ cơ số bất kỳ
Để chuyển từ hệ cơ số bất kỳ sang thập phân, nguyên tắc là cứ chia số đó lấy phần dư rồi tiếp tục chia phần nguyên lấy phần dư tiếp sau đó xếp thứ tự ngược từ dưới lên.

Lấy số 3295 [trong hệ thập phân] làm ví dụ:

3295 chia 2 = 1647.5 [1647 -> Dư 1]
1647 [phần nguyên] chia 2 = 823.5 -> Dư 1
823 chia 2 = 411.5 -> Dư 1
411 chia 2 = 205.5 -> Dư 1
205 chia 2 = 102.5 -> Dư 1
102 chia 2 = 51 -> Dư 0
51 chia 2 = 25.5 -> Dư 1
25 chia 2 = 12.5 -> Dư 1
12 chia 2 = 6 -> Dư 0
6 chia 2 = 3 -> Dư 0
3 chia 2 = 1.5 -> Dư 1
1 chia 2 = 0.5 -> Dư 1 [phần nguyên < 1 thì dừng]

Sắp xếp các số dư từ dưới lên trên ta được: 3295 [demical] = 110011011111 [binary].

Cũng với số này ta chuyển từ 10 sang thập lục phân thì như sau :

3295 chia 16 = 205.9375 [205 dư 15] tức là chữ số F trong hệ hexa đó
205 chia 16 = 12.8125 [12 dư 13] tức là D
12 chia 16 = 0.75 [0 dư 12] tức là C

Vậy số đó trong hệ hexa là CDF.

Đối với phần lẻ của số thập phân, chuyển sang nhị phân số lẻ được nhân với 2. Phần nguyên của kết quả sẽ là bit nhị phân, phần lẻ của kết quả lại tiếp tục nhân 2 cho đến khi phần lẻ của kết quả bằng 0.
Ví dụ: Chuyển số 0.62510 sang hệ nhị phân

  • 0.625 x 2 = 1.25, lấy số 1, phần lẻ 0.25
  • 0.25 x 2 = 0.5, lấy số 0, phần lẻ 0.5
  • 0.5 x 2 = 1.0, lấy số 1, phần lẻ 0. Kết thúc phép chuyển đổi. , lấy phần dư từ trên xuống


Với các hệ khác cũng tương tự, khỏi ví dụ nhé.

Nguyên tắc 2 : chuyển từ hệ cơ số bất kỳ ra thập phân

Có 1 số nhị phân A như sau:
A=anan-1an-2…a1

.a0a-1a-2…a-m
Dấu chấm màu đỏ là dấu phân cách hàng thập phân. Giá trị của A được tính như sau:

A=an2n + an-12n-1 + an-22n-2 +…+a121 + a02+ a-12-1+ a-22-2 +…+ a-m2-m

Ví dụ về số nhị phân: chuyển số 1110110

.110101 sang số thập phân

1 1 1 0 1 1 0 . 1 1 0 1 0 1
6 5 4 3 2 1 0 -1 -2 -3 -4 -5 -6


1110110.110101=1x26 + 1x25 + 1x24 + 0x23 + 1x22 + 1x21 + 0x20 + 1x2-1 +1x2-2 + 0x2-3 + 1x2-4 + 0x2-5 1x 2-6
= 64 + 32 + 16 + 0 + 4 + 2 + 0 + 0.5 + 0.25 + 0 + 0.0625 + 0 + 0.015625 = 118.828125
Vậy 1110110.110101 2 = 118.828125 10

Cái này tương đối dễ hiểu hơn cái trên, và không phải làm 2 công đoạn ngược nhau với phần nguyên và phần lẻ.

Nguyên tắc 3 : Chuyển nhanh các hệ cơ số là bội của 2
Có cái bảng các hệ cơ số theo thứ tự: nhị phân - thập lục - bát phân - thập phân sau đây

0000 | 0 | 0 | 0
0001 | 1 | 1 | 1
0010 | 2 | 2 | 2
0011 | 3 | 3 | 3
0100 | 4 | 4 | 4
0101 | 5 | 5 | 5
0110 | 6 | 6 | 6
0111 | 7 | 7 | 7
1000 | 8 | 10 | 8
1001 | 9 | 11 | 9
1010 | A | 12 | 10
1011 | B | 13 | 11
1100 | C | 14 | 12
1101 | D | 15 | 13
1110 | E | 16 | 14
1111 | F | 17 | 15

Ví dụ chuyển nhị phân sang thập lục phân :
110011011111b -> 1100 1101 1111 -> C D F [bảng thì tra hoặc học thuộc]
Quá trình ngược lại cũng tương tư từ C tra bảng ra 4 bit nhị phân nào.

Ở trên ta có thể áp dụng để chuyển qua lại giữa các giá trị nhị phân thập lục hoặc nhị phân bát phân. Muốn chuyển giữa thập lục và bát phân thì chuyển trung gian qua nhị phân.

Nguyên tắc 4 : Chuyển nhanh các hệ cơ số 10 với hệ nhị phân

Hãy lập một bảng sao cho giá trị cơ số^ số mũ >nửa giá trị cần đổi. Ví dụ bảng sau có thể đổi các giá trị lớn nhất là 128*2-1 =255 :

Cơ sốsố mũ 2^7 2^6 2^5 2^4 2^3 2^2 2^1 2^0
Giá trị 128 64 32 16 8 4 2 1
Ví dụ [35] 0 0 1 0 0 0 1 1


bạn chỉ việc so 35 xem số nào nhỏ hơn trong bảng giá trị rồi đánh giá trị 1 vào bảng rồi trừ, làm dần từ trái qua phải : 35-32-4-2-1 = 0 là sẽ có số nhị phân cần dùng.

Để chuyển từ 100011 sang 35 ở hệ thập nhân thì ta điền các giá trị vào hàng 3 [ở trên là so giá trị rồi mới điền và trừ còn ở đây điền trước rồi mới so giá trị] rồi cột nào có giá trị 1 thì cộng lại là sẽ ra ngay.

Chủ Đề