平成20年 春期 基本情報技術者 午後 問09
問09 CASL次のアセンブラプログラムの説明及びプログラムを読んで,設問に答えよ。 〔プログラムの説明〕 文字列中の単語を切り出して,単語管理テーブルを作成する副プログラム TOKEN である。 (1) 文字列は英字,数字,空白文字(間隔文字)の0文字以上の並びで,最後にピリオドが 置かれる。単語は,1文字以上の空白文字で区切られた英数字の並びとする。 (2) 単語管理テーブルには,文字列中に現れる単語ごとに,3語からなる要素を作成し, 単語の先頭アドレス,長さ,属性の順に格納する。属性は,単語が数字だけか らなるときは0,英字が含まれるときは1とする。単語の切出しが終了したとき, 単語管理テーブルの終了を示すマークとして−1を格納する。 (2) 主プログラムは,文字列の先頭アドレスを GR1 に,単語管理テーブルの 先頭アドレスを GR2 に設定して,TOKEN を呼ぶ。 (4) 副プログラム TOKEN から戻るとき,汎用レジスタ GR1 〜 GR7 の内容は元に戻す。 副プログラム TOKEN の実行例を図に示す。
注 文字列の先頭アドレスを 100 番地とし,数字は 10 進表記である。 図 副プログラム TOKEN の実行例 〔プログラム〕
TOKEN START
RPUSH
LD GR3,=-1 ; 単語の処理中を示すフラグの初期化
; 0: 数字だけの単語を処理中である。
; 1: 英字を含む単語を処理中である。
; -1: 単語の処理中ではない。
LAD GR1,-1,GR1
LP LAD GR1,1,GR1
LD GR4,0,GR1 ; 1文字を取り出す。
CPL GR4,='.' ; 終了判定
JZE FIN
CPL GR4,=' '
設問 プログラム中の a に関する解答群
エ JZE ACHK オ JZE ALNUM カ JZE LP
ウ LD GR3,=0 エ LD GR3,=1 オ LD GR3,0 カ LD GR3,1
ウ LAD GR2,1,GR2 エ LAD GR2,3,GR2 オ LD GR1,GR6 カ LD GR2,GR6
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2025 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
|
