計組定點數運算一 加法

2021-10-05 16:07:11 字數 933 閱讀 4017

mooc《計算機組成原理》河南科技大學

方法一:

兩同號數相加時,如果結果的符號與參與運算的的運算元符號相反,則表明有溢位;兩異號數相減時,如果結果的符號與被減數符號相反則表明有溢位。

v = 1 溢位

v = 0 不溢位

例:

方法二:採用雙符號位

每個運算元的補碼符號用兩個二進位制位表示,稱為變形補碼,用「00」表示正數,「11」表示負數,左一成為第一符號位,右一成為第二符號位。如果兩符號位相同,則沒有溢位;如果兩符號位相反則發生溢位,具體形式:

「10」表示負溢位,運算結果為負數

「01」表示正溢位,運算結果為正數

這裡求[-y]的變補時,需要把兩個符號位也按位取反。

方法三:利用進製值的判斷方法

兩補碼數進行加減運算的時候,若最高數值位產生向符號位的進製而符號位不產生進製,那麼發生正溢位;若最高數值位無進製而符號位有進製時,發生負溢位。如果兩個進製同時存在,或者同時不存在,那就沒有溢位。

例子:

定點數運算程式

51c 彙編範例 1.雙位元組數取補碼 功能 r4 r5 取補碼 r4 r5 例 start mov a r5 低4位取值 r5 a cpl a 低4位取反 add a 01h a反碼加1 若溢位cy 1,否則cy 0 mov r5,a 存放低4位補碼 a r5 mov a r4 高4位取值 r4 ...

2 2 定點數的表示和運算

定點數的表示 1 無符號數,若機器字長是8位,則表示的資料範圍是0 255 2 有符號數,通過 0 表示正號,1 表示符號,來表示資料。有符號數的機器表示有原碼,反碼,補碼,移碼。定點表示,機器數中的小數點位置是固定不變的,小數點不再使用 表示,而是約定它的位置。這裡有兩種簡單的約定,將小數點的位置...

2 2定點數的表示與運算

n位的無符號數表示範圍為 0 2n 1 原碼 用尾數表示真值的絕對值,符號位 0 1 對應 正 負 若機器字長n 1位,原碼整數的表示範圍 2n 1 2n 1 若機器字長n 1位,原碼小數的表示範圍 1 2 n 1 2 n 反碼 若符號位為0,則反碼與原碼相同 若符號位為1,則數值位全部取反 若機器...