平成21年 秋期 基本情報技術者 午後 問12
問12 CASL次のアセンブラプログラムの説明及びプログラムを読んで,設問1,2に答えよ。 〔プログラムの説明〕 連続したn語を 16 × n ビットのビット列とみなし,ビット列Aとする。 ビット列Aの(p+1)ビット目からのqビットを,別のqビットのビット列Bで 置き換える副プログラム REPLACE である。置換えの概要を図1に示す。 ここで,p≧ 0,1 ≦q≦ 16,p+q≦ 16 ×nとする。
図1 置換えの概要 (2) ビット列Bは GR0 に左詰めで設定され,GR0 の残りの部分は0で埋められて主プログラムから渡される。 ビット列Bと GR0 の関係を図2に示す。
図2 ビット列Bと GR0 の関係 (4) 副プログラムから戻るとき,汎用レジスタGR1〜GR7 の内容は元に戻す。
〔プログラム〕
(行番号) 1 REPLACE START 2 RPUSH 3 LD GR4,GR2 ; GR4 ← p 4 SRL GR4,4 ; GR4 ← p/16 5 ADDA GR1,GR4 ; GR1 を置換え対象語(第 i 語)に位置付ける。 6 AND GR2,=#000F 7 LD GR4,=16 8 SUBA GR4,GR2 9 LD GR5,GR0 10 LD GR6,=#8000 11 SUBA GR3,=1 12 SRA GR6,0,GR3 13 LD GR7,GR6 14 SRL GR0,0,GR2 15 SRL GR6,0,GR2 16 SLL GR5,0,GR4 17 SLL GR7,0,GR4 18 LD GR2,0,GR1 19 GR6,GR2 ; 第i語のうち 20 GR6,GR2 ; ビット列Bを入れる部分を0にする。 21 OR GR2,GR0 22 ST GR2,0,GR1 23 LD GR2,1,GR1 24 GR7,GR2 ; 第(i+1)語のうち 25 GR2,GR7 ; ビット列Bを入れる部分を0にする。 26 OR GR2,GR5 27 ST GR2,1,GR1 28 RPOP 29 RET 30 END 設問1 次の記述中の に入れる正しい答えを,解答群の中から選べ。 主プログラムから渡されたp,qの値及び GR0 の内容は,次のとおりであった。
p: 55 q: 12 GR0: 1011000111010000 行番号8の SUBA の実行直後における GR2 の値は, であり, GR4 の値は である。 行番号 17 の SLL の実行直後における GRO の内容は, であり,GR5 の 内容は である。 a,b に関する解答群 エ 9 オ 11 カ 15 ウ 1010000000000000 エ 1110100000000000
設問2 プログラム中の に入れる正しい答えを, 解答群の中から選べ。 解答群 オ SLL 力 SRL キ XOR
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
|