一、無符号數和有符号數
1.無符号數:0~65535
2.有符号數:-32768~32767(符号位占一位)
3.符号位:“0”代表正,“1”代表負
二、數的定點表示和浮點表示
1.定點表示
(1)最高位均為符号位,符号位與數值部分用,或者.隔開
(2)當真值為正時,原碼、補碼、反碼相同
(3)當真值為負時,符号位都用“1”表示,數值部分關系是
①補碼=原碼“取反加一”
②反碼=原碼“每位取反”
(4)負補碼=補碼“連同符号位在内的每位取反加一”
2.浮點表示
(1)N=S*(r^j)
①S為尾數(可正可負)
②j為階碼(可正可負)
③r是基數(或基值)
(2)浮點數的表示形式
階符,/.階碼數值部分;數符,/.尾數的數值部分
(3)階碼的表示範圍
-2^(2^m-1)*(1-2^(-n))~-2[-(2^m-1)]*(1-2^(-n)
三、定點運算
1.移位運算
(1)不論是整數還是負數,移位後其符号位均不變
(2)機器數為正時,不論左移還是右移,添補的代碼均為0
(3)由于負數的反碼各位除符号位外與負數的原碼正好相反,故移位後所添代碼應與原碼相反,即全部添1
(4)有符号數的移位稱為算術移位,無符号數的移位稱為邏輯移位
(5)邏輯左移時,高位移丢,低位添0;邏輯右移時,地位移丢,高位添0
2.加法與減法運算
(1)補碼加法
①整數:[A]補 [B]補=[A B]補(mod2^(n 1))
②小數:[A]補 [B]補=[A B]補(mod2)
(2)補碼減法
①整數:[A-B]補=[A]補 [-B]補(mod2^(n 1))
②小數:[A]補 [B]補=[A B]補(mod2)
(3)溢出判斷
①用一位符号位判斷溢出
②用兩位符号位判斷溢出
3.乘法運算
(1)筆算乘法
乘法運算可用移位和加法來實現
(2)原碼乘法
①一位乘
乘積的符号位由兩原碼符号位異或運算結果決定
乘積的數值部分由兩數絕對值相乘
②兩位乘
用兩位乘數的狀态來決定新的部分積如何形成
(3)補碼乘法
①補碼一位乘
②補碼兩位乘
比補碼一位乘的部分積多取1位符号位(共三位)
4.除法運算
(1)原碼除法
①恢複餘數法
當餘數為負時,需加上除數,将其恢複成原來的餘數
②不恢複餘數法(加減交替法)
(2)補碼除法
①符号位和數值部分一起參加運算
②商符在求商過程中自動形成
四、浮點四則運算
1.浮點加減運算
(1)對階
使兩操作數的小數點位置對齊
(2)尾數求和
将對階後的兩個尾數按定點加(減)運算規則進行運算
(3)規格化
①左規:尾數左移一位,階碼減1
②右規:尾數右移一位,階碼加1
(4)舍入
①“0舍1入”法
②“恒置1”法
(5)溢出判斷
浮點機的溢出與否可由階碼的符号決定
2.浮點乘除法運算
(1)階碼運算
(2)尾數運算
①浮點乘法尾數運算
②浮點除法尾數運算
五、算數邏輯單元
1.ALU電路
2.快速進位鍊
(1)并行加法器
(2)串行進位鍊
(3)并行進位鍊(先行進位,跳躍進位)
①單重分組跳躍進位鍊
②雙重分組跳躍進位鍊
,
更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!