如何理解計算機組成中——真值,原碼,補碼,反碼,移碼之間的關係
阿新 • • 發佈:2019-01-30
關於原碼、反碼、補碼和移碼的定義如下
1:原碼:
2:補碼
3:反碼
4:移碼
上述公式很複雜,因此,可以總結出一些常見的規律:
原碼
如果機器字長為n,那麼一個數的原碼就是用一個n位的二進位制數,其中最高位為符號位:正數為0,負數為1。剩下的n-1位表示概數的絕對值。 例如: X=+101011 , [X]原= 0, 0101011 X=-101011 , [X]原= 1,0101011 位數不夠的用0補全。反碼
知道了什麼是原碼,反碼就是在原碼的基礎上,符號位不變其他位按位取反(就是0變1,1變0)就可以了。
例如:X=-101011 , [X]原= 1,0101011 ,[X]反=1,1010100
補碼
在反碼的基礎上按照正常的加法運算加1。
或者原碼除符號位外每位取反末位加 1
例如:X=-101011 , [X]原= 10101011 ,[X]反=11010100,[X]補=11010101
移碼
移碼最簡單了,不管正負數,只要將其補碼的符號位取反即可。
例如:X=-101011 , [X]原= 10101011 ,[X]反=11010100,[X]補=11010101,[X]移=01010101