2.數據的表示和運算
2.1進位制
🔺問題:計算機采用二進制有什么優點?
答:
1.制造兩個穩態的物理器件較容易。
2.二進制的運算規則簡單。
3.便于用邏輯門電路實現運算。
4.二進制的0和1正好對應邏輯值真和假。
🔺問題:在進位制中后綴B、O、D、H分別表示什么?前綴0x表示什么?
答:
后綴B表示二進制、O表示八進制、D表示十進制、H表示十六進制。
前綴0x表示十六進制。
進制之間的轉換,在這里主要分為4類:
1.其他進制轉十進制。
2.二進制轉八進制和十六進制。
3.八進制和十六進制轉二進制。
4.十進制轉其他進制。
其他進制轉十進制如下:
🔺問題:將二進制101.1轉化為十進制?
答:
(101.1)2 = 1 * 2^2 + 0 * 2^1 + 1 * 2^0 + 1 * 2^-1 = 5.5
🔺問題:將八進制5.4轉化為十進制?
答:
(5.4)8 = 5 * 8^0 + 4 * 8^-1 = 5.5
🔺問題:將十六進制5.8轉化為十進制?
答:
(5.8)16 = 5 * 16^0 + 8 * 16^-1 = 5.5
二進制轉八進制和十六進制如下:
🔺問題:將二進制1111000010.01101轉化為八進制?
答:
(1111000010.01101)2
001 | 111 | 010 | 000 | . | 011 | 010 |
---|---|---|---|---|---|---|
1 | 0 | 7 | 0 | . | 3 | 2 |
3位為1組,不夠就補。
🔺問題:將二進制1111000010.01101轉化為十六進制?
答:
(1111000010.01101)2
0011 | 1100 | 0010 | . | 0110 | 1000 |
---|---|---|---|---|---|
3 | C | 2 | . | 6 | 8 |
4位為1組,不夠就補。
八進制和十六進制轉二進制如下:
🔺問題:將八進制251.5轉化為二進制?
答:
(251.5)8
2 | 5 | 1 | . | 5 |
---|---|---|---|---|
010 | 101 | 001 | . | 101 |
🔺問題:將十六進制AE86.1轉化為二進制?
答:
(AE86.1)16
A | E | 8 | . | 6 |
---|---|---|---|---|
1010 | 1110 | 1000 | . | 0001 |
十進制轉其他進制如下:
🔺問題:將十進制123.6875轉化為二進制?
答:
(123.6875)10
64 | 32 | 16 | 8 | 4 | 2 | 1 | . | 0.5 | 0.25 | 0.125 | 0.0625 |
---|---|---|---|---|---|---|---|---|---|---|---|
1 | 1 | 1 | 1 | 0 | 1 | 1 | . | 1 | 0 | 1 | 0 |
十進制轉換為其他進制主要有兩種方法:
1.常規方法:
對于整數部分,除基取余法。
對于小數部分,乘基取整法。
2.拼湊法(個人推薦)
先將十進制轉化為二進制,再轉化為需要求的進位制。
🔺問題:是不是每個二進制小數都能準確的用十進制表示?是不是每個十進制小數都能準確的用二進制表示?
答:
每個二進制小數都能準確的用十進制表示,但是不是每個十進制小數都能準確的用二進制表示。
例如十進制0.3用二進制表示,乘二取整,取不到準確結果。
🔺問題:定點整數,小數點在機器內部怎么表示?
答:
在機器內部并沒有小數點,人為約定了小數點的位置,默認隱含,小數點不需要占用一位的存儲位。