作者bochengchen (LFII)
看板Grad-ProbAsk
標題[理工] 101清大計系8
時間Tue Dec 31 12:58:29 2019
想請問各位大大
https://imgur.com/6DDREJM.jpg
這題C要求有號數x-y
我是把y先換成2進位,再取y的2捕數,變成-y
再算x+(-y),轉回Hex,得到的答案跟b小題一樣 0x85B3
但是看補習班的答案發現答案不一樣,也看不懂是怎麼算的,為什麼答案會在十六進位前面再加上負號呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 124.199.106.66 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Grad-ProbAsk/M.1577768311.A.E79.html
1F:推 shinle14: sign- magnitude B=1011 所以是負數 12/31 15:06
我好像把sign magnitude跟2補數法搞混了!
所以答案應該是0xEE5F嗎?
※ 編輯: bochengchen (124.199.106.66 臺灣), 12/31/2019 15:16:54
3F:→ shinle14: 這樣子~ 12/31 17:31
4F:→ bochengchen: s大為什麼前面的負號不用放進16進位表示法 12/31 22:18
6F:→ shinle14: 因為是定義呀 這樣子你應該就知道了~ 01/01 12:07
s大我的問題就是,算出來結果是-0x6E5F,這樣在sign-magnitude中,不是應該寫成0xEE5f嗎?
因為正負號也包含在這個16bit裡面!但是用-0x6E5F是把負號獨立出來了
※ 編輯: bochengchen (124.199.106.66 臺灣), 01/02/2020 10:31:33