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

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

〔プログラムの説明〕

偶数パリティを設定する副プログラム EPAR である。

(1) EPAR は,GR1 中の1であるビットの個数が全体として偶数となるように, GR1 のビット番号 15 にパリティビットを設定する。

すなわち,GR1 のビット番号 0 〜 14 の中で1であるビットの個数が 奇数ならば1を,偶数ならば 0 をビット番号 15 に設定する。

(2) 主プログラムは,GR1 のビット番号 0 〜 14 にビットデータ列を, ビット番号 15 に 0 を設定して EPAR を呼ぶ。

(3) 副プログラムから戻るとき,GR2 の内容は元に戻す。

〔プログラム〕

EPAR  START
      PUSH   0,GR2
      ST     GR1,TMP
      LAD    GR2,0 ; カウンタの初期化
LP1   PUSH   0,GR1
      AND    GR1,=1
      JZE    NCNT
      ADDL   GR2,=1
NCNT  POP    GR1
      SRL    GR1,1
      JNZ    LP1
      LD     GR1,TMP
      
      JZE    FIN
      OR     GR1,=#8000 ;      ← α
FIN   POP    GR2
      RET
TMP   DS     1
      END

基本情報技術者試験


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

解答群

ア AND GR1,=1    イ AND GR2,=1    ウ SLL GR1,1

エ SLL GR2,1     オ SRL GR1,1    カ SRL GR2,1

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

基本情報技術者試験


設問2 次の記述中の に入れる正しい答えを,解答群の中から選べ。

誤って GR1 のビット番号 15 が1に設定されて主プログラムから呼ばれたとき, この副プログラムは正しい結果を返さない場合がある。 GR1 に #A010 が設定されて呼ばれた場合,主プログラムに戻るときの GR1 の内容は となる。

GR1 のビット番号 15 が1に設定されて主プログラムから呼ばれた場合でも, ビット番号 15 にパリティビットが正しく設定されるようにしたい。 このためには, α で示される1行を と修正すればよい。

a に関する解答群

ア #2010    イ #4020    ウ #5008    エ #A010

オ #C020    カ #D008

b に関する解答群

ア AND GR1,=#8000    イ OR GR1,=#4000

ウ XOR GR1,=#8000    エ SLL GR1,1

オ SRL GR1,1

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

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


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