[問題] 組語的一個小問題, 關於陣列位址

看板Programming作者 (超哥)時間11年前 (2014/01/11 21:15), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
大家好: 小弟很久沒碰組語了,最近正在看。 有看到講義上有一行C code轉組語 是這樣的: C code: while(save[i]==k) i+=i; 而i in $s3, k in $s5, save的位址為$s6 轉換成MIPS code: Loop: sll $t1, $s3, 2 add $t1, $t1, $s6 lw $t0, 0($t1) bne $t0, $s5, Exit addi $s3, $s3, 1 j Loop Exit: ... 我想問的是,為何要先將i的位址左移兩位阿 謝謝~!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.42.96

01/11 21:20, , 1F
陣列元素大小是 4 所以轉位址要 *4 → <<2 ?
01/11 21:20, 1F

01/11 21:30, , 2F
喔喔~~對吼...謝謝
01/11 21:30, 2F
文章代碼(AID): #1IqKFjZc (Programming)
文章代碼(AID): #1IqKFjZc (Programming)