二進位制基礎運算整理

2021-10-10 22:25:55 字數 342 閱讀 9696

經過上面的分析,那麼上面的-3的反碼-124少加個乙個值(0),所以應該是-125,也就是11111101,那最後的結果就是00000011 = 3,這正是我們的正確結果。

正數的補碼是它本身,負數的補碼等於其反碼+1,之所以加1就是因為二進位制和鐘錶不一樣的它是線性結構,-127和0不是同乙個值,所以我覺得補碼的補在於補差的那個0,同餘的概念應該存在於反碼的按位取反中,負數x的補碼的絕對值也就是2的n次冪+x(注意x是負數)。

在很多原始碼的閱讀中,較深入的部分、接近底層的部分都會看到一些二進位制中的邏輯運算子,有的時候簡單的邏輯運算子就能表達一種動作、乙個含義,出於求知慾,這裡整理一下基本的邏輯運算子的意義和在開發中他們通常來做些什麼。

二進位制運算基礎

位運算實質是將參與運算的數字轉換為二進位制,而後逐位對應進行運算。按位與運算為 兩位全為1,結果為1,即1 1 1,1 0 0,0 1 0,0 0 0。例如51 5 00110011 00000101 00000001 51 5 1 特殊用法 1 與0相與可清零。2 與1相與可保留原值,可從乙個數中...

二進位制運算基礎

1 十六進製制的表示 例子 0xaa 0x55。將十六進製制表示進行二進位制運算,首先要把十六進製制表示成二進位制。規則是,兩個十六進製制位等於乙個位元組 8個二進位制位 其實就是乙個十六進製制位佔4個二進位制位。對於0xaa中的a為十進位制中的10,用二進位制表示就是1010,所以0xaa用二進位...

二進位制運算基礎

位運算實質是將參與運算的數字轉換為二進位制,而後逐位對應進行運算。按位與運算為 兩位全為1,結果為1,即1 1 1,1 0 0,0 1 0,0 0 0。例如51 5 00110011 00000101 00000001 51 5 1 特殊用法 1 與0相與可清零。2 與1相與可保留原值,可從乙個數中...