對位法轉換為2進位制 & 與運算、| 或運算、^異或運算、位運算
阿新 • • 發佈:2019-01-11
2進位制是轉換的媒介
10進位制對位法 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|---|
8進位制對位法 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 |
16進位制對位法 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 |
- 10進位制
-
低八位:2048 1024 512 256 128 64 32 16
高四位:128 64 32 16
低四位:8 4 2 1 - 16進位制
- 10-A 11-B 12-C 13-D 14-E 15-F
eg. 十進位制數字:272
10進位制對位法 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|---|---|
2進位制結果 |
1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
8進位制對位法 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 |
2進位制結果 |
1 0 0 | 0 1 0 | 0 0 0 | ||||||
8進位制結果 | 4 | 2 | 0 | ||||||
16進位制對位法 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 |
2進位制結果 |
0 0 0 1 | 0 0 0 1 | 0 0 0 0 | ||||||
16進位制結果 | 1 | 1 | 0 |
2: 100010000;8: 420; 16:110
eg. 十進位制數字:147
10進位制對位法 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|---|---|
2進位制結果 |
0 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 1 |
8進位制對位法 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 |
2進位制結果 |
0 1 0 | 0 1 0 | 0 1 1 | ||||||
8進位制結果 | 2 | 2 | 3 | ||||||
16進位制對位法 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 |
2進位制結果 |
1 0 0 1 | 0 0 1 1 | |||||||
16進位制結果 | 9 | 3 |
2: 10010011; 8: 223 ;16:93
eg. 16進位制數字:F7
16進位制對位法 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 | 8 4 2 1 |
---|---|---|---|---|---|---|---|---|
2進位制結果 |
1 1 1 1 | 0 1 1 1 | ||||||
10進位制對位法 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
2進位制結果 |
1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 |
10進位制結果 | 255 | |||||||
8進位制對位法 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 | 4 2 1 |
2進位制結果 |
0 1 1 | 1 1 0 | 1 1 1 | |||||
8進位制結果 | 7 | 6 | 7 |
2: 11110111; 8: 367 ;16:247
- 邏輯運算子
-
& 與運算:同 1 為 1 ,否則為 0
-
| 或運算:有 1 為 1,否則為 0
-
^異或運算:相同為 1 ,否則為 0
-
<<左移運算:按照2進位制向左移動兩位
-
>>右移運算:按照2進位制向右移動兩位
運算 | 結果 |
---|---|
272 & 147 |
16 |
272 | 147 |
403 |
272 ^ 147 |
387 |
35>>2 | 8 |
35<<2 | 140 |
二進位制的最高位定義為符號位,最高位0
表示正數,1
表示複數。
機器數:連同符號位一起數值化了的值
真值:機器數代表的真實的數值
數值位:真值的絕對值
正數二進位制,原碼、補碼、反碼都是同一個
複數二進位制,補碼 = 反碼 + 1
負數的位運算 | -35>>2 |
---|---|
第一步 | 正數 35 的原碼 0010 0011 |
第二步 | 取-35 的原碼 1010 0011 (真值:-010 0011) |
第三步 | 取-35的反碼1101 1100 |
第四步 | 取-35的補碼1101 1101 |
第五步,移位 | 右移2位後的補碼 -35>>21111 0111 |
第六步 | 補碼減一獲得負數反碼1111 0110 |
第七步 | 將反碼調整會原碼,獲得位移後的負數原碼 1000 1001 ,答案 -9 |
真值 | 原碼 | 反碼 | 補碼 (最終的顯示) |
---|---|---|---|
-180 (-1011 0100) | 1111 1111 1011 0100 | 1111 1111 0100 1011 | 1111 1111 0100 1100 |
-168(-1010 1000) | 1111 1111 1010 1000 | 1111 1111 0101 0111 | 1111 1111 0101 1000 |