原碼的加減運算
移碼的加減運算
運算公式:
規則:這裡引出乙個概念,《變補》,根據上面a減b的補碼等於a的補碼加負b的補碼,為了描述方便,也可以表述為a減b的補碼等於a的補碼加b的變補,這樣描述,直接用a和b,不用a和-b,更加直觀。
[x]變補 = [-x]補
變補類似補碼,變補是全部取反再加1,無符號位一說
實現減法的工作,主要在於求-b的補碼([-b]補=b全部取反+1)
假定是4位
計算(-7)+(-6)
-7的補碼是1001,-6的補碼是1010
1001加1010得1 0011,取後4位,結果是3。
總結溢位現象:
計算(-3)+(-5)
-3的補碼是1101,-5的補碼是1011
1101加1011得1 1000,結果是-8。
正確,最高位和最低位進製都是1,和得符號位和加數得符號位都是1。
變形補碼是為了保留中間結果
機器裡,在做運算的過程當中,多添乙個(或兩個)符號位,這種由添符號位而得到的補碼就是變形補碼
假定4位,計算6+5
6的補碼是0110,5的補碼是0101,相加得到是1011,結果是-5,錯誤。
如果用兩個符號位表示,對應的變形補碼是01011,第乙個符號位表示符號,第二個符號位作為數值部分,結果是11。
溢位判斷:
規則:求和:
數值位相加
符號取被加數(被減數)的符號。
最高位有進製表示溢位
求差:被加數(被減數)加上加數(減數)的變補
最高數值位產生進製表示結果為正,所得數值位正確
最高數值位沒有產生進製表示結果為負,對結果求補,還原為絕對值形式的數值位
最高數值位產生進製,符號取被加數(被減數)的符號。
最高數值位沒有產生進製,符號取被加數(被減數)的符號取反。
例如:(+4) - (-2)
符號位異號,做減法,所以求和
數值位相加4+2=6
符號取4的符號(+)
結果是(+6)
又如:(-2)-(-4)
符號位相同,做減法,所以求差
2的原碼是0010,4的變補是1100,兩數相加0 1110。
無進製,對1110求補,0010,值為2
符號取2的符號取反,(+)
結果是(+2)
運算公式:
推導過程:
[a]移+[b]移
= 2n-1+a+2n-1+b
= 2n+a+b
= [a+b]補
[a]移-[b]移
= [a]移+[-[b]移]補
= 2n-1+a+2n-[b]移
= 2n-1+a+2n-2n-1-b
= 2n+a-b = [a-b]補
運算公式2:
推導過程:
[a+b]移
=a+b+2n-1
=a+2n-1+b+2n-1-2n-1
=[a]移+[b]移-2n-1
[a-b]移
=a-b+2n-1
=(a+2n-1)-(b+2n-1)+2n-1
=[a]移-[b]移+2n-1
= [a]移+[-[b]移]補+2n-1
=[a]移+[[b]移]變補+2n-1
溢位判斷:
a與b的符號位相同,且與所得的結果的符號位也相同時,發生溢位
計算機組成原理 原碼 反碼 補碼 移碼
原碼 正數的原碼 反碼 補碼 都相同,負數的原碼 符合位為1 其他位和正數原碼相同 負數的反碼 符號位不變 數值為 按位取反 負數的補碼 負數反碼 1 對乙個數做 取補運算 對該數各位 含符號位 取反 然後在末位 1 補碼性質 對 y 補 作取補運算可得 y 補。對 y 補 作取補運算可得 y 補。...
計算機組成原理cu 計算機組成原理 計算機概論
現代計算機樣式千奇百怪,常見的有我們的筆記本,台式電腦,也有各種伺服器 手機 攝像頭等都屬於計算機範疇。計算機包含我們看得見摸得著的計算機實體,稱為計算機硬體,如cpu 記憶體 各種掛接裝置等 還有我們看不見摸不著的軟體,它支援著硬體按照我們的預想在操作,包括系統軟體和應用軟體 計算機硬體樣式千奇百...
計算機組成原理
1計算機系統概論 1.1 計算機簡介 計算機由 硬體 和 軟體 組成。硬體 是看得見摸得著的各種電子元器件,各類光,電,機裝置的實物組成,如主機,外設等等。軟體 是看不見摸不著,由人們事先編製成具有各類特殊功能的資訊組成。計算機的三層結構 高階語言 組合語言 機器語言 微指令系統。計算機組成與計算機...