2

アセンブリでスワップを作成しましたが、コードが正しいかどうかわかりません。これがコードです。

swap:  mov r1, -(sp)   

   mov (sp) r1
   mov 2(sp) (sp)
   mov r1 2(sp)

   mov (sp)+, r1
   rts pc

swapはスタックからポインタを受け取ります

4

1 に答える 1

1

spはスタックポインターですか?通常、コマンドがありますldw rA, 0(rB)(0はオフセット、rBはロード元のアドレス、実際のデータはrAになります)。ldwはワード全体をメモリにロードし、ldbはバイトをロードし、stw rA, 0(rB)ワードを格納します。mov通常、あるレジスタを別のレジスタにコピーします。

于 2010-05-27T20:35:47.683 に答える