作者gn00618777 (123)
看板Grad-ProbAsk
標題Re: [理工] [計組]-MIPS語言
時間Tue Sep 22 00:25:08 2009
※ 引述《gn00618777 (123)》之銘言:
: ※ 引述《gn00618777 (123)》之銘言:
: : Pseudoinstruction what is accomplishes Solution
: : mov $t5,$t3 $t5=$t3 add $t5,$t3,$zero(值為0)
: : clear $t5 $t5=0 add $t5,$zero,$zero
: : li $t5,small $t5=small addi $t5,$zero,small
: :
li $t5,big $t5=big lui $t5,upper-hulf(big)
: ori $t5,lower-hulf(big)
: :
lw $t5,big($t3) $t5=Memory[$t3+big] li $at,big
: add $at,$at,$t5
: lw $t5,0($at)
: : addi $t5,$t3,big $t5=$t3+big li $at,big
: :
: : 92年成大資工
:
仔細去研究發現更多問題..
(1)如果不看題目,怎麼知道哪一個是虛擬碼和可以執行的碼,虛擬碼的指令
也會用在可以執行的上面,例如:li
(2)指令格式 op rs rt rd shamt funct,我查某學校的專題發表..
他說 rs是第一個來源運算元暫存器
rt是第二個來源運算元暫存器
rd是目的暫存器,用來儲存運算結果
例子: add $t0,$s1,$s2
照他上面這麼解釋$s2不就變成儲存結果的暫存器
阿不是$t0才是儲存的暫存器嗎?
(3) 我有查很多MIPS指令,就是沒看到過li
(4) 上面的程式碼 li $t5,big 需要分lui和ori來做,既然都有li $at,big
位啥不直接 li $at,big 然後 add,$t5,$zero,$at?
(5)都已經是固定的R-type指令的 op rs rt shamt funct
6 5 5 5 6 位元
為何可以執行add $t5,$t3,$at 指令,$at可以儲存更大的"big"
表示他不是5位元了?
先暫時問這樣好了= = 怕嚇到大家
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.60.118
1F:→ ianwuzack:(2)組合語言的順序跟機器語言的順序是不一樣的吧?是嗎 09/22 01:27
2F:→ ianwuzack:(5)5位元不是代表暫存器的數目嘛有2^5個壓? 09/22 01:30
3F:→ ianwuzack:有錯大家來討論吧XD 原PO問題都想到我沒想到的地方QQ 09/22 01:31
4F:推 polomoss:2. 有念完第五章了嗎? 後面會畫圖欄位應該可以輕鬆記~~" 09/22 08:59
5F:→ gn00618777:第5章章節較啥? 我只是讀高銘的詳細補充講義而已 09/22 09:10