Chuyển đổi hệ đếm
Cách chuyển một số từ hệ thập phân sang các hệ đếm khác và ngược lại, từ các hệ đếm khác sang hệ thập phân.
Hệ đếm là gì
Thông thường ta dùng hệ thập phân. Hệ này có 10 chữ số: 0, 1, 2, 3, 4, 5, 6, 7, 8 và 9. Đặc điểm của hệ thập phân là khi nhân một số, chẳng hạn 57, với 10, số đó dịch lên một hàng, tức là cần thêm một chữ số để viết nó: 570.
Cũng có những hệ đếm khác. Chẳng hạn hệ bát phân chỉ có các chữ số 0, …, 7. Khi đó biểu thức 7 + 1 bằng 10, vì trong hệ bát phân không có chữ số 8. Hệ thập lục phân có các chữ số 0, 1, … 14, 15. Thay cho các chữ số lớn hơn 9, người ta thường dùng chữ cái, nên các chữ số của hệ thập lục phân là 0, …9, A, B, C, D, E, F.
Điều bất ngờ là ta gặp các hệ đếm khác ngay trong đời sống hằng ngày. Chẳng hạn thời gian: giây và phút được đếm theo hệ lục thập phân (cơ số 60). Mỗi thời điểm trong ngày có thể viết thành một số có 3 chữ số trong hệ lục thập phân. Chữ số thứ nhất chỉ giờ, chữ số thứ hai chỉ phút, chữ số thứ ba chỉ giây. Nếu chọn dấu hai chấm làm dấu phân cách giữa các chữ số, ta có chẳng hạn số 14:05:59. Lưu ý rằng khi cộng thêm 1 giây vào thời điểm này, ta không được 14:05:60 mà được 14:06:00, vì 60 không phải là một chữ số hợp lệ của hệ lục thập phân.
Chuyển từ hệ thập phân sang hệ nhị phân
Giả sử trên giấy có số 70. Ta muốn chuyển số này sang hệ nhị phân (hệ cơ số 2). Nguyên tắc khá đơn giản: chia liên tiếp số cần chuyển cho 2 cho đến khi được thương bằng 0, đồng thời ghi lại các số dư của phép chia số nguyên. Nếu muốn chuyển sang hệ khác, chẳng hạn hệ thập lục phân, ta chia cho 16. Nếu sang hệ cơ số 6 thì chia cho 6. Trong thực hành, cách làm như sau:
Các số dư cho ta số cần tìm trong hệ nhị phân. Tuy nhiên ta không đọc các số dư từ trên xuống mà từ dưới lên. Vậy số 70 trong hệ nhị phân là 1000110.
Chuyển từ hệ nhị phân sang hệ thập phân
Chiều ngược lại làm như sau. Cho số 1100010, ta chuyển nó sang hệ thập phân. Chiều này đơn giản hơn, chỉ cần tính tổng sau:
Mỗi số hạng có dạng x · 2i, trong đó x là chữ số của số nhị phân ban đầu, còn i tăng dần từ phải sang trái, mỗi lần thêm 1. Vì ta chuyển số 1100010 nên tổng có dạng:
Số 1100010 có 7 chữ số, nên số mũ của 2 lần lượt là 6, 5, …, 1, 0. Tính các luỹ thừa và nhân ra, ta được:
Vì sao cách làm này đúng?
Ta có thể minh hoạ bằng hệ thập phân. Các chữ số trong một số, chẳng hạn trong số 7.384, thực ra có nghĩa gì? Chữ số 4 cho biết số đơn vị, chữ số 8 cho biết số chục, chữ số 3 cho biết số trăm và chữ số 7 cho biết số nghìn. Vì vậy ta viết được
Biểu thức này có thể biến đổi tiếp để thay cho các số 1000, 100, 10 và 1 ta luôn có một luỹ thừa của 10. Vì 100 = 1, 101 = 10, v.v. nên ta viết được
Mọi số trong hệ thập phân đều viết được theo cách như vậy, trong đó mỗi số hạng có dạng x · 10i, với x là một chữ số từ 0 đến 9 (có 10 chữ số như vậy). Còn i là một số nguyên không âm cho biết hàng. Nếu i = 0 thì số hạng đó chỉ hàng đơn vị, nếu i = 2 thì chỉ hàng trăm (vì 102 = 100).
Bây giờ ta thử chuyển số 7.348 từ hệ thập phân sang… hệ thập phân. Làm vậy là có lí do. Ta chia số 7.348 cho 10:
Đọc các số dư từ dưới lên, ta được 7.348: đúng là số ban đầu mà ta định chuyển sang… chính hệ đó.
Hệ nhị phân cũng được mô tả hoàn toàn tương tự: mọi số hạng đều có dạng x · 2i, với x là chữ số 0 hoặc 1. Giá trị i vẫn cho biết hàng. Giống như việc chia liên tiếp cho 10 cho ta các chữ số ở từng hàng của một số trong hệ thập phân, việc chia liên tiếp cho 2 cho ta các chữ số ở từng hàng trong hệ nhị phân.
Cũng lưu ý rằng khi chia một số cho 10 thì số dư luôn thuộc đoạn [0; 9]. Khi chia một số cho 2 thì số dư chỉ có thể là 0 hoặc 1.
Chuyển sang các hệ đếm khác
Cách chuyển từ hệ thập phân sang hệ nhị phân ở trên tổng quát đến mức dùng được cho cả các hệ khác. Muốn chuyển số 185 sang hệ thập lục phân, ta chỉ việc chia cho 16:
Trong hệ cơ số 16, số 185 có dạng (11; 9). Thay cho các “chữ số” lớn hơn 9, người ta thường dùng chữ cái: 10 = A, 11 = B, 12 = C, … Vì vậy ta viết được: trong hệ cơ số 16, số 185 có dạng B9.
Tương tự, ta có thể chuyển số B9 từ hệ cơ số 16 sang hệ thập phân.