Re: [理工] 計組 數值範圍之計算問題
※ 引述《jim790917 (AUPT)》之銘言:
: 想請問一下,
: 暫存器 $t0 = 1010 1101 0001 0000 0000 0000 0000 0010
: 若是要使下列指令中的$t2 = 1
: slti $t2, $t0, X
: X的範圍如何計算?
: ---
: 這是白算盤第四版的exercise 2.16.2的題目
: 答案為 0x7FFF ~ 0x8000
: 請問是怎麼算出這個範圍的?
手邊只有第五版的,沒有這題目
不過這題解答的範圍0x7FFF~0x8000應該是指all value
也就是X從 0111 1111 1111 1111 = 32767
到 1000 0000 0000 0000 = -32768
都可以讓$t2 = 1
如果用2's complement轉成正數來看也很合理
X僅有16bit根本不可能大於0101 0010 1110 1111 1111 1111 1111 1110
故-32768~32767的範圍內皆大於-1391460350
P.S 對了 張凡有說過
→
,
其實mips可以接受寫成16進制喔
只是怕學校教授也搞不清楚所以當成不能就好
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.135.175.163
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1493053603.A.619.html
※ 編輯: shownlin (220.135.175.163), 04/25/2017 01:12:12
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
理工
4
12