看板 Grad-ProbAsk 關於我們 聯絡資訊
https://i.imgur.com/P1DuBsy.jpg https://i.imgur.com/WpQse79.jpg 各位大大好, 請問這題第三行解答 goto 的 address 部分 當 bne 被執行的時候,pc 不是已經在下一行(+4) 了?也就是要 goto 的 address 應 該是 pc + 100? 我的想法是 [bne 的 address] + 4 + 100 才是要跳的 address,不知道正不正確 謝謝~~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.217.254.162 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1541253446.A.4F9.html
skyHuan: 你想的沒有錯 PC+4就是指下一行 11/03 22:24
skyHuan: 你執行這個指令的時候PC在beq 11/03 22:27
skyHuan: 下個clock變成PC+4 然後會加上imm16 11/03 22:27
skyHuan: 所以是(PC+4) + 100 11/03 22:27
skyHuan: 如果要跳的話下個clock才會進ALU算目的位址 11/03 22:27
befdawn: 所以是剛load到這行指令時,pc還在這一行,所以就是加4 11/04 19:48
befdawn: 就好了 11/04 19:48
befdawn: 十分謝謝s大 11/04 19:48