減法里面的借位,究竟CF位的意義是什么


如題,

 SUB 3,4  后 CF的值是什么? 怎么才算是借位。

不好意思,編程已經幾年了(沒有用匯編寫) 這個問題還是不清楚。

6 个解决方案

#1


sub 3,4 后,cf的值為1,
字操作時的15位或字節操作時的第7位)產生一個進位或借位時,cf被置1

#2


這個借位和用補碼加法計算時候在最高位丟失一位沒有關系嗎? CF的值也和丟失一個數字沒有關系嗎?

#3


CF表示無符號數的溢出,OF表示帶符號數的溢出。
加法中CF表示最高有效位有無向高位進位,有進CF=1,無進CF=0;
減法中CF表示最高有效位有無向高位借位,有借CF=1,無借CF=0。

#4




計算結果被舍掉一位有兩種情況,結果對,結果錯

錯的叫溢出,對的叫進位

加法的溢出有兩種情況,如果是減法也差不多
兩個正數相加 4f+5f變成一個負數了,溢出
兩個負數相加 af+af變成一個正數了,溢出

進位,NND有點陰險,進了位被舍掉一位數據還正確,靠!

#5


cf在add,adc中當進位,在sub,sbb中當借位

#6


無論怎么說來說去,總的原則只有兩條:

第一:操作數沒有明確到底是有符號數還是無符號數,你認為它是什么就是什么。
比如:a2可以是無符號數吧,大於128了,也可以是有符號數吧,就是個負數了。。。。

第二:處理器對兩個操作數進行運算時,按照無符號數求得結果。 這只是處理器的處理方式。



注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com