2017-04-19 2 views
1

私は私の学校のプロジェクトを持っており、紙の上にそれはそう3行目では、命令セットでBEQがMIPS/UP16分岐命令

pc += sign_ext(immed) + 1; 

ので、PCがあること、wouldntのある

1 nop 
2 add $1, $2; //RF[1]=RF[1]=RF[2] 
3 beq $1, $3, #1 //if (RF[1]==RF[3]) skip inst 5 
4 nop 
5 add $4, $1  //RF[4]=RF[4]+RF[1] 
6 add $5, $1  //RF[5]=RF[5]+RF[1] 

を書きました命令5をスキップするのではなく、(3 + 1 + 1)= 5で?

答えて

0

あなたはMIPSが分岐する前に、次の命令が必ず実行されることを意味します遅れ枝を、持っているかどうかを手動で探す必要がありますので、不審なnopは、beq後にあります。そして、この命令はpcの方にカウントされます。

(ちょうど私がMIPSを知らないので、推測、しかしWikipedia does。)

+1

Wikipediaの記事が面白いです。私は記事のこのラインが好きです... "と、最近デザインされたアルファ" –