基本情報技術者試験の過去問と解説
[TOP] [午前分野別] [午後分野別] [キーワード索引] [令和元年秋午前] [令和元年秋午後]

平成15年 春期 基本情報技術者 午後 問13
問13   CASL

 次のアセンブラプログラムの説明及びプログラムを読んで,設問1〜3に答えよ。

〔プログラムの説明〕

 副プログラム BMOVE は,次に示すように,語1のビット列 A を語2の B の位置に移動する。 x,y,z はそれぞれビット数を表す。

(1) GR1 〜GR5 には,それぞれ次の内容が設定されて,主プログラムから呼ばれる。

GR1:語1 のアドレス

GR2:語2 のアドレス

GR3:x

GR4:y

GR5:z

(2) x ≧ 0,y ≧ 0,z ≧ 1 とする。

(3) x + z ≦ 16,y + z ≦ 16 とする。

(4) 語1 と語2 は異なる語である。

(5) 副プログラムから戻るとき,汎用レジスタの内容は元に戻す。

〔プログラム〕

(行番号)
 1 BMOVE	START		;
 2		PUSH	0,GR6		; レジスタの内容を保存
 3		PUSH	0,GR7		;   "
 4		LD	GR6,=#8000	; 1 のビットを z 個並べる 
 5		 	;   "        
 6		LD	GR7,GR6		;
 7		SRL	GR7,0,GR4	; 語2の部分 B のビットを
 8		XOR	GR7,=#FFFF	; ゼロにする
 9		AND	GR7,0,GR2	;
10		 	;  語1のビット列 A を取り出す
11		AND	GR6,0,GR1	;
12		SLL	GR6,0,GR3	; 取り出したビット列を
13		 	;  B の位置にシフト
14		OR	GR6,GR7		;
15		ST	GR6,0,GR2	;
16		POP	GR7		; レジスタの内容を元に戻す  
17		POP	GR6		;
18		RET			;
19		END			;

基本情報技術者試験


設問1  プログラム中の に入れる正しい答えを, 解答群の中から選べ。

解答群

ア SLA  GR6,0,GR3    イ SLA  GR6,0,GR4

ウ SLL  GR6,0,GR3    エ SLL  GR6,0,GR4

オ SRA  GR6,-1,GR3    カ SRA  GR6,-1,GR5

キ SRL  GR6,-1,GR5    ク SRL  GR6,0,GR3

ケ SRL  GR6,0,GR4

解答 a ←クリックすると正解が表示されます

解答 b ←クリックすると正解が表示されます

解答 c ←クリックすると正解が表示されます

基本情報技術者試験


設問2 主プログラムから渡された語1,語2,x,y 及び z の内容が次のとき, 行番号 12 の命令( SLL )実行直後の GR6 の内容として正しい答えを,解答群の中から選べ。

語 1 0010 0110 1101 0111
語 2 1100 1101 0111 1010

x = 9

y = 3

z = 5

解答群

ア 
0000 0000 0001 0101
  イ 
0000 0000 0101 0100
ウ 
0001 0101 0000 0000
  エ 
1010 1000 0000 0000
解答 ←クリックすると正解が表示されます

基本情報技術者試験


設問3 副プログラム BMOVE を使用して, 語1のビット列 A と語2のビット列 B を入れ替えるプログラム BSWAP を作成した。 に入れる正しい答えを,解答群の中から選べ。 ここで,GR1〜GR5 には,BMOVE と同じように各パラメタが設定されて呼ばれる。

(行番号)
 1 BSWAP	START		;
 2		RPUSH			;レジスタを退避
 3		LD	GR6,0,GR2	;
 4		ST	GR6,WORD	;語2を WORD に保存
 5		CALL	BMOVE		;
 6		LD	GR2,GR1		;語1のアドレスを語2のアドレスとする
 7		  	; WORD のアドレスを語1のアドレスとする
 8		PUSH	0,GR4		;
 9		  	;  x と y を入れ替える
10		POP	GR3		;
11		CALL	BMOVE		;
12		RPOP			;レジスタを復元
13		RET			;
14 WORD	DS	1		;
15		END			;

解答群

ア LAD  GR1,WORD    イ LAD  GR4,WORD

ウ LD   GR1,WORD    エ LD   GR3,GR4

オ LD   GR4,GR3    カ LD   GR4,WORD

キ POP  GR4      ク PUSH  0,GR3

解答 d ←クリックすると正解が表示されます

解答 e ←クリックすると正解が表示されます


[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]