I . Chuyển đổi hệ cơ số
Mạch điện tử có 2 trang 5 thái :
Đóng ---Off ---- 0 ------False ------ 0 v
Mở -----On -----1-------True-------3.3 v
Hệ 2 : gồm 0,1
Hệ 8 gồm 0,1,2,3,4,5,6,7
Hệ 10 gồm 0,1,2,3,4,5,6,7,8,9
Hệ 16 gồm 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
Trong máy tính chỉ dùng hệ 2,nhưng do hệ 2 dài nên nhiều người đã chuyển từ hệ 2 sang hệ 10 hay hệ 16 để dễ sử dụng,ít nhầm lẫn,ngắn gọn hơn.Trong đó hệ 8 ít được sử dụng .
Cách chuyển
A .Từ hệ 10 sang hệ 2 : lấy số đó chia cho 2 lấy dư,sau đó lấy ngược các giá trị dư từ dưới lên ,ta sẽ được 1 số cô số 2
EX 1 :
27 cơ số 10 chuyển sang cơ số 2 :
Lấy 27 chia 2 bằng 13 dư 1
Lấy 13 chia 2 bằng 6 dư 1
Lấy 6 chia 2 bằng 3 dư 0
Lấy 3 chia 2 bằng 1 dư 1
Lấy 1 chia 2 bằng 0 dư 1
Ta ghi các số dư từ dưới lên trên thành 1 số 11011,đây chính là số 27 ở cơ số 2
EX 2 :
0,625 cơ số 10 chuyển sang cơ số 2
Lấy 0.625 nhân 2 bằng 1.25 nhớ 1
Lấy 0.25 nhân 2 bằng 0.5 nhớ 0
Lấy 0.5 nhân 2 bằng 1 nhơ 1
Ta lấy các giá trị nhớ ghi thành số như sau 0,101
EX 3 :
27,625 cơ số 10 chuyển sang cơ số 2
Chính là lấy kết quả của 2 ví dụ trên cộng lại bằng 11011,101
B.Từ hệ 10 sang hệ 16 : lấy số đó chia cho 16,chia được bao nhiêu thì ghi ra,và ghi tiếp số còn dư
EX 1 : 27
Lấy 27 chia cho 16 bằng 1,dư 11,số 11 trong hệ 16 là B
Nên kết quả là lB
EX 2 : 0,625
Giống như cơ số 2 nhưng ở đây là cơ số 16 nên ta nhân 16
Lấy 0.625 nhân 16 ta được 10
Trong hệ 16 thì 10 chính là A
Nên 0,625 cơ số 10 bằng 0,A cơ số 16
EX 3 : 27,625
Là tổng của 27 và 0,625 nên kết quả là 1B,A
C. Từ hệ 2 sang hệ 10
EX 1 :
Chuyển 11010 sang hệ 10
Ta thấy số này có 5 chữ số nên kết quả sẽ là 1*2^4+1*2^3+0*2^2+1*2^1+0*2^0 = 16+8+0+2+0 = 26 cơ số 10
EX 2 :
Chuyển 1010101 sang hệ 16
Cách chuyển : ta chèn dấu phẩy “,” vào số đó theo quy tắc 4 số là 1 dấu phẩy lấy từ phải sang trái như sau 101,0101 ,nếu không d973 4 số để phẩy thì ta thêm số 0 vào trước nó để thành 4 chữ số .Có nghĩa số trên sẽ được chuyển thành 0101,0101 ,sau đó ta chuyển từ 4 số đó thành số hệ 16,ta thấy 0101 theo hệ là 5 ,0101 tiếp theo cũng là 5 nên kết quả là 55 cơ số 16
D. Từ hệ 16 sang hệ 2
Làm ngược lại cách chuyển từ hệ 2 sang hệ 16
EX 1 :
Chuyển 2C sang hệ 2
Phận tích số 2 là 0010
Chữ C là 12,phân tích ra là 1100
Nên kết quả là 00101100 hay 101100
II .Phép toán hệ 2
1011 + 0111 =10010 hoặc 0010 nhớ 1 (carry 1)
1001-0111 = 0010
11110/101=101
101*111=100011
III.Biểu diễn số có dấu
Bù 2 :
Dùng n bit biểu diễn X
• Nếu x >= 0 MSB = 0,n-1 bit còn lại biểu diễn độ lớn
• Nếu x<0 MSB = 1,n-1 bít còn lại biểu diễn 2^(n-1)-| x |
EX 1 :
Biểu diễn 7,-7 073 dạng bù 2 , 8 bit
Bài làm :
8 bit có nghĩa là 8 ô nhớ dạng xxxxxxxx
Trong đó ô thứ 1 sẽ biểu diễn MSB
Các ô còn lại biễu diễn số dạng nhị phân
Số 7 : là số > 0 nên MSB = 0 ,số 7 phân tích ở dạng nhị phân là 111 nên biễu diễn sớ 7 ở dạng 8 bit là 00000111
Số -7 : là số < 0 nên MSB = 1 ,do -7 là âm nên ta làm theo công thức 2^(n-1)-|x|
Có nghĩa là 2^(8-1)-|-7| =128-7=121
Sau đó phân tích số 121 thành số nhị phân ta được 1111001
Viết ở dạnh 8 bit là 11111001
Từ 2 số trên ta có thề nhận ra 1 điều là 00000111+11111001 =0 nhớ 1,và ở hệ 10 cũng vậy 7+(-7)=0
Vì vậy ta tìm ra số nhị phân của số âm rất dễ dàng
Ví dụ : -4
Ta chỉ cần quan tâm đến số 4
4=3+1
3 đổi raq số nhị phân là 0011
1 đổi ra số nhị phân là 0001
Ta viết theo dạng
3 : 0000011
1: 0000001
X :1111100 (X ở đây chính là số nhị phân của -4 )
Sở dĩ ta biết được -4 là nhờ quy tắc “bằng 0 nhớ 1”,ta thấy tổng các số đó là 0 nhớ 1 nên suy ra X là -4.
Lưu ý ; 8 bit chỉ chưa tối đa là 127 nên khi cộng 2 số mà tổng lớn hơn 127 thì gọi là tràn bộ nhớ (overflow)