作者j5307 (JJ)
看板ASM
標題[問題] 關於carryfolw 和overflow
時間Thu Sep 29 18:51:22 2011
(1)
以八位元相加為例
00000001
+ 10000000
------------
010000001
↑
所以carryflow=1
但如果今天用減的話
要取補數 1-2 2的補數為11111110
00000001
- 11111110
------------
011111111
↑
他的carryflow=0 為什麼最後要取補數變成 carryflow=1 ?
(2)
10100000
+ 10010000
------------
100110000
為什麼 bit7=0 和進位的1 取xor 可以得到overflow=1??
雖然我們人類可以用算的知道 但機器是用什麼方法啊= =?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.254.131.127
1F:推 TaiwanXDman:你的數是無號還是有號? 09/29 20:53
carryflow 本身不是定義 unsign overflow定義sign嗎???
※ 編輯: j5307 來自: 111.254.131.127 (09/29 22:21)
2F:→ ksmrt0123:沒有 carryflow, 只有 carry 09/29 23:37
4F:→ ksmrt0123:有你問題的解答 09/29 23:37
5F:→ j5307:恩恩 感謝^^ 10/12 23:18