計算機中的布林操作 即XOR 的學習

2021-07-12 04:18:10 字數 544 閱讀 2513

計算機中 ^ 代表了邏輯操作xor (exclusive-or)。xor有兩個輸入端,乙個輸出端,它的真值表如下:^0

1001

110

它的效果大致相當於 | 操作(即or,任意乙個輸入為1,則輸出為1),除了在輸入端都為1時輸出為0。

它可以用來計算一位二進位制的和,如下:

- 0+0=0

- 1+0=1

- 0+1=1

- 1+1=0

最後的1+1 得到的結果是10才對,只不過這裡只計算和,所以不考慮進製。

0110

^ 1100

------

1010

可以看到, ^ 的操作效果就是將兩個二進位制數相加,但是不考慮進製的情況。真正的相加(也就是考慮進製的相加),上面的運算結果應當是10010。

還可以更加直接的認為, ^ 操作就是將兩個二進位制數都為1的位變為0,其它的位就是 | (or)操作而已。

還可以理解為, ^ 的操作結果中為1的位表示兩個數中此位的值不同,為0表示兩個數中此位的值相同。

計算機中的定址

電腦的位數通常是指cpu的處理位數,這個不是靠位址匯流排來決定的,這個位數指的是cpu 通用暫存器的資料寬度,即cpu一次運算可以處理的資料bit長度。前面所說的是記憶體空間足夠的情況,下面用過一道軟考題目解釋記憶體空間 定址範圍的情況 某計算機字長32位,儲存容量8mb。按字編址,其定址範圍為 0...

計算機中的單位

關於字的概念,今天才發現自己一直沒有弄清楚.原來,對於字長為16位的計算機,儲存器中兩個連續位元組被稱為字 word 乙個字有16個位元 四個連續的位元組被稱為雙字 doubleword 雙字有32個位元。如果計算機的字長為32位,則乙個字有4個位元組,即32個二進位制,雙字的長度相應的為64個二進...

計算機中的編碼

ascii 英文編碼,用乙個位元組 0 255 表示英文本元 gb2312 漢字編碼,用兩個位元組表示中文漢字,同時相容英文 多餘的部分用0補足 但是其他國家的文字都有自己的編碼方式,當不同國家的文字在一起時不能相容,此時出現了unicode編碼 但是unicode編碼在表示英文本元時會浪費一倍的儲...