為什么兩個不大的數(shù)相加也可能溢出?
閱讀:609 發(fā)布時間:2021-5-24
兩個數(shù)相加時,如果存放運算結(jié)果的地址與加數(shù)或被加數(shù)的地址相同,并且沒有采用脈沖執(zhí)行方式,在條件滿足時每一掃描周期都要執(zhí)行一次運算,相當于在不斷累加相同的數(shù),因此時間稍長,就很容易使運算結(jié)果超過允許的范圍,從而產(chǎn)生溢出。
為了解決這一問題,加法指令的輸入變量和輸出變量最好選用不同的編程元件,或者采用脈沖執(zhí)行方式,即只在輸入信號的
上升沿執(zhí)行一次指令。
其他整數(shù)運算指令(例如加1和減1指令)和浮點數(shù)運算指令也有同樣的問題。