呵呵 還是俺來幫你解答吧
1 組合語言。兩有符號數運算,如何自己判斷是否溢位?其實有個簡單的方法可以使用,即使用邏輯判斷法:
即 從邏輯上看是否正確。
具體如下: 當 正數+正數=負數 則邏輯上看出 是錯誤的 即溢位
負數+負數=正數 則邏輯上看出 是錯誤的 即溢位
當 正數+負數 是互相抵消的 不會產生溢位
當 正數—負數=負數 則邏輯上看出(結果應為正) 是錯誤的 即溢位
負數—正數=正數 則邏輯上看出(結果應為負) 是錯誤的 即溢位
當 正數-正數 或 負數-負數 二者是互相抵消的 不會產生溢位
嘿嘿 這種方法雖很簡單 但也很使用。
2 當of=1,sf=1,為什麼實際運算結果為正?給予回答如下:
說明有邏輯錯誤了 運算時的符號標誌位sf=1 為負 實際運算結果為正 從邏輯上已經是說不通了 (因此可以判斷運算出錯 即溢位) 與實際的溢位標誌位 of=1 相吻合。
二者不矛盾。
呵呵 如果俺給你解釋清楚了 就給俺加分吧 (以示鼓勵)
呵呵 還是俺來幫你解答吧
1 組合語言。兩有符號數運算,如何自己判斷是否溢位?其實有個簡單的方法可以使用,即使用邏輯判斷法:
即 從邏輯上看是否正確。
具體如下: 當 正數+正數=負數 則邏輯上看出 是錯誤的 即溢位
負數+負數=正數 則邏輯上看出 是錯誤的 即溢位
當 正數+負數 是互相抵消的 不會產生溢位
當 正數—負數=負數 則邏輯上看出(結果應為正) 是錯誤的 即溢位
負數—正數=正數 則邏輯上看出(結果應為負) 是錯誤的 即溢位
當 正數-正數 或 負數-負數 二者是互相抵消的 不會產生溢位
嘿嘿 這種方法雖很簡單 但也很使用。
2 當of=1,sf=1,為什麼實際運算結果為正?給予回答如下:
說明有邏輯錯誤了 運算時的符號標誌位sf=1 為負 實際運算結果為正 從邏輯上已經是說不通了 (因此可以判斷運算出錯 即溢位) 與實際的溢位標誌位 of=1 相吻合。
二者不矛盾。
呵呵 如果俺給你解釋清楚了 就給俺加分吧 (以示鼓勵)