[理工] 101清大計系8

看板Grad-ProbAsk作者 (LFII)時間6年前 (2019/12/31 12:58), 6年前編輯推噓3(303)
留言6則, 2人參與, 7年前最新討論串1/1
想請問各位大大 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://www.ptt.cc/bbs/Grad-ProbAsk/M.1577768311.A.E79.html

12/31 15:06, 6年前 , 1F
sign- magnitude B=1011 所以是負數
12/31 15:06, 1F
我好像把sign magnitude跟2補數法搞混了! 所以答案應該是0xEE5F嗎? ※ 編輯: bochengchen (124.199.106.66 臺灣), 12/31/2019 15:16:54

12/31 17:31, 6年前 , 2F

12/31 17:31, 6年前 , 3F
這樣子~
12/31 17:31, 3F

12/31 22:18, 6年前 , 4F
s大為什麼前面的負號不用放進16進位表示法
12/31 22:18, 4F

01/01 12:07, 7年前 , 5F

01/01 12:07, 7年前 , 6F
因為是定義呀 這樣子你應該就知道了~
01/01 12:07, 6F
s大我的問題就是,算出來結果是-0x6E5F,這樣在sign-magnitude中,不是應該寫成0xEE5f嗎? 因為正負號也包含在這個16bit裡面!但是用-0x6E5F是把負號獨立出來了 ※ 編輯: bochengchen (124.199.106.66 臺灣), 01/02/2020 10:31:33
文章代碼(AID): #1U2jLtvv (Grad-ProbAsk)