對於剛接觸程式語言的群體來說,或許對 原碼,反碼,補碼的概念跟模糊,下面我們簡單介紹下。
寫在前面: 對於有符號型別的數,最高位決定這個數的正負,最高位為0,代表正數,最高位為1,代表負數,
例如:-5 : 1000 0101
+5 : 0000 0101
原碼: 簡單點,就是乙個數的二進位制形式,例如 十進位制數字 9,原碼就是:0000 1001 ;-9 時 原碼就是:1000 1001
反碼:正數和負數的反碼是有區別的 ,對於正數 反碼和原碼相同,9的反碼還是是 0000 1001,對於負數,就是將二進位制的 1變成0 ,0變成1,(符號位不變) 如, -9的反碼就是 11111 0110
補碼:正數和負數的補碼是有區別的 ,對於正數 補碼碼和原碼相同 即9的補碼還是0000 1001 ,對於負數 反碼 + 1 就是補碼 -9的補碼就是 1111 0111。
總結:對於有符號數,正數的原碼,反碼和補碼是一樣的,對於負數,反碼就是將 原碼除符號位外 的所有位取反,即0變1,1變0.
補碼就是在反碼的基礎上+1.
原碼,反碼,補碼,移碼的關係
計算機組成原理 先占個大坑 資料格式分為 一.定點格式,即約定機器中所有的資料的小數點的位置是固定不變的.二.浮點格式,即小數點位置可變,表示範圍較大 一.定點數 用乙個 n 1 位字來表示乙個定點數 x 其中一位 xn 表示符號位,其餘位數表示量值.當資料為純小數時,小數點即在 xn 和 xn 1...
原碼 反碼 補碼
正數 原碼 反碼 補碼一樣 7 原 0 0000111 b 7 反 0 0000111 b 7 補 0 0000111 b 負數 原碼就是原來的表示方法 反碼是除符號位 最高位 外取反 補碼 反碼 1 7 原 1 0000111 b 7 反 1 1111000 b 7 補 1 1111001 b 當...
原碼 反碼 補碼
正數 原碼 反碼 補碼一樣 7 原 0 0000111 b 7 反 0 0000111 b 7 補 0 0000111 b 負數 原碼就是原來的表示方法 反碼是除符號位 最高位 外取反 補碼 反碼 1 7 原 1 0000111 b 7 反 1 1111000 b 7 補 1 1111001 b 當...