精華區beta Programming 關於我們 聯絡資訊
※ 引述《orc1424.bbs@ptt.cc ()》之銘言: > 原理上面是如果一個數是負數(用4bit之2's complement表示) > 1001 就先取補數 0111 然後看其值 喔 是7所以是-7這樣 > 但是例如-8 > 實際上面應該要怎麼作呢?我要怎麼知道她是-8 > 是要從-8取補數是自己( 1000 => 1000 )這樣知道的? > 還是應該要從-7-1來取得? > 是該怎麼作? > 想要模擬一個長bit的整數 > 所以想考慮這個問題 sign bit與數值部份要分開, 1000的sign bit 1已經代表負號了, 你不可以把sign bit再拿來當做數值部份使用, 拿來用的數值部份應該是0,求出一補數是111, 二補數則是1000也就是十進位數的8, 於是,(1000)2 = (-8)10 -- 好康訊息! Openfind 提供免費撥接電話:40508888 帳號:openfind 密碼:openfind -- http://bbs.openfind.com.tw ※來源:220.139.*