新しく質問する

CASLIIのLD GR3,0,GR1とLD GR3,GR1の表記法の違いについて

役に立った:0件
  • 質問者:good_listener
  • 投稿日時:2006/10/09 15:37
  • 困り度:すぐに回答が欲しいです
  • 友達に紹介
  • ブログに書く
  • 教えて!gooお気に入り

こんにちは、CASLIIを勉強しているのですが疑問点が出てきたので質問させて頂きます。

例えば
LD GR3,0,GR1
LD GR3,GR1
のように、LDのレジスタ間の間に0を入れることがありますが、有効アドレスを算出するときに0を加算しても同じ結果なのでこれは意味がないのではありませんか?これを入れる必要性がわかりません。

GR1が目的のデータではなく、目的のデータが格納されているアドレスのときにこういう表記をしなくてはならないとあったのですが、これもその為ですか?

拙い文章で申し訳ありませんが、どなたかご理解のある方は教えてください。よろしくお願いします。

この質問への回答は締め切られました。
このQ&Aは役に立ちましたか?(役に立った:0件)
  • 参考になった:0件

No.2ベストアンサー20pt

  • 回答者:BLUEPIXY
  • 回答日時:2006/10/09 16:50

LD GR3,GR1
の場合は、GR1 の内容がGR3にロード(設定)されます。
LD GR3,0,GR1
の場合は、実効アドレス(0+GR1の内容をアドレスとして)の内容がGR3にロードされます。
アドレスが、BUF のようにラベルで判っていれば
LD GR3,BUF
で良いわけですが、参照したいアドレスがレジスタに格納されている時は
LD GRn, 基準アドレス,指標アドレス
の様に指定して基準アドレス+指標アドレス が実際にアクセスするアドレスになります。(なので実効アドレスという)
この場合、GR1 にBUF のアドレスが入っているとしてそのアドレスをそのまま使ってアドレスの内容を持ってくればいいのですが、
そのために0 を指定しています。

通報する

この回答へのお礼

レス有難うございます。
丁寧なレスでとても理解できました。
ありがとうございます。

  • 参考になった:0件

No.1ベストアンサー10pt

  • 回答者:osamuy
  • 回答日時:2006/10/09 16:13

例えば、GR1=2でアドレス2番地に4が格納されていたら、

LD GR3,GR1→GR3=2
LD GR3,0,GR1→GR3=4

――になるかと。
直接と間接の違い。

通報する

この回答へのお礼

レス有難うございます。
なるほど、番地か内容かの違いですね。

  
このQ&Aは役に立ちましたか?(役に立った:0件)

このページのトップへ

Facebook公式ページ

公式Twitter