位操作符以及計算機資料儲存

2021-06-17 15:42:41 字數 947 閱讀 9236

位操作符只能處理(signed / unsigned) 字元型、短整形、整形變數常量字面值,而不能操作小數。也可以類中進行運算子過載。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 

操作符 作用 

──────────────────────────── 

& 位邏輯與

| 位邏輯或

^ 位邏輯異或

- 位邏輯反

>> 右移

<< 左移

━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 

& 位邏輯與

按位相與,同真為真,其他為假。

| 位邏輯或

按位相或,同假為假,其他為真。

^ 位邏輯異或

按位相異或,不同為真,相同為假。

- 位邏輯反

每一位取反。

>> 右移

資料的最低位移除 符號位補充乙個原有符號(也可以理解為符號位不變 最高資料位補充乙個符號位)

例子:正數 0010 0000 0000 1011        >>1        0001 0000 0000 0101

負數 1000 0000 0000 0000        >>1        1100 0000 0000 0000

<< 左移

資料的最高位移除,最低為補充0

例子:正數 0010 0000 0000 1011        <<1        0100 0000 0001 0110

負數 1000 0000 0000 0000

<<1        0000 0000 0000 0000

這裡要注意的是 計算機當中資料的儲存都是以補碼形式的

對於有符號資料 最高位表示符號位0代表正數  1代表負數

正數的正 反 補碼一致.

負數的反碼是正碼每一位取反(符號位除外), 補碼是反碼最後一位+1.

Java移位操作符以及按位操作符

按位操作符 針對兩個整數引數中的對應位執行布林代數運算,並生成乙個結果。按位與 如果兩個輸入位都是1則生成乙個輸出位1,否則生成乙個輸出位0。按位或 如果兩個輸入位只要有一位是1則生成乙個輸出位1.否則生成乙個輸出位為0。按位異或 如果兩個輸入位只有其中一位是1那麼生成輸出位1,否則生成乙個輸出位為...

計算機儲存單位以及記憶體原理

計算機的儲存單位 計算機系統資料只用0和1這種表現形式,這裡只表示乙個資料點,不是數字 乙個0或者1佔乙個 位 而系統中規定8個位為乙個位元組。電腦的各種儲存器的最小的儲存單位是位元,也就是位 bit,簡稱b 它表示乙個二進位制位。比位大的單位是位元組 byte,簡稱b 它等於8個二進位制位。因為在...

Python簡介 DOS命令以及計算機儲存單位

簡介 他是一種物件導向的解釋型語言,語法簡潔清晰,強制用空白符作為語句縮排。它能完成現實中的各種任務,從 和遊戲的開發到機械人和太空梭控制,優點 易學,容易上手 速度快,python的底層是用c語言寫的,執行速度非常快 免費 開源,floss 自由,開放源 可移植性,因為開源,經過簡單改動就能夠在不...