HOME»基本情報技術者試験掲示板»2014年平成26年春問12のdについての質問
投稿する

2014年平成26年春問12のdについての質問 [2461]

 fugaさん(No.1) 
アセンブラについての質問になりますが,dの答えは「エ」なのですが,GR3にはLTBLに格納された文字列が入っていると思っているのですが,GR3にPLUSが格納されているとして,
JUMP 0,GR3
でPLUSに分岐できるのでしょうか?
私はLD命令ではPLUSという文字列がGR3に格納されるから,多分「イ」の
LAD GR3,LTBL,GR3
だと思ったのですがどうやらLD命令でできるようです.
2020.09.07 15:31
メタルさん(No.2) 
FE ブロンズマイスター
まだ読んでるかわからないけど書いておきます。
これは文字列ではなく、ラベル、つまりコードの何行目かを示すアドレスの代わりをするものです。
CASL2では文字列は  '  (アポストロフィー)で両端をくくります。
アポストロフィーでくくってないのでラベルとして扱われます。
アドレス番号を直接扱うとズレたりするので、ラベルを使います。
機械語に変換つまりアセンブルされた時点でアドレスに変わります。
アドレスとほぼ同じ扱いができると考えてください。
>>JUMP 0,GR3
>>でPLUSに分岐できるのでしょうか?
できます。
>>私はLD命令ではPLUSという文字列がGR3に格納されるから,多分「イ」の
>>LAD GR3,LTBL,GR3
>>だと思ったのですがどうやらLD命令でできるようです.
ややこしいですが、LTBLの最初のアドレス+GR3に格納されているラベル、例えばPLUSのラベルがある命令の行のアドレスをGR3に格納するのはLD命令のほうで、
LADだとLTBLのアドレス+GR3のアドレスが格納されるためLTBLのアドレスがGR3に格納されるため意味を成しません。
2020.09.15 22:48
返信投稿用フォームスパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
© 2010- 基本情報技術者試験ドットコム All Rights Reserved.

Pagetop