HOME»基本情報技術者試験掲示板»平成22年秋期 ハードウェアについて教えてください
投稿する
平成22年秋期 ハードウェアについて教えてください [4032]
さささん(No.1)
平成22年秋期午後問題のハードウェアで
設問3のA/D変換器から読み込んだデータは10進数で80になることまでは分かったのですが
それ以降の16進表記で0800になることや、回答が0050になる部分が分かりません。
説明できる方いらっしゃいましたら、お願いいたします。
設問3のA/D変換器から読み込んだデータは10進数で80になることまでは分かったのですが
それ以降の16進表記で0800になることや、回答が0050になる部分が分かりません。
説明できる方いらっしゃいましたら、お願いいたします。
2022.03.18 15:21
nsさん(No.2)
★FE シルバーマイスター
本問の焦点は図3の「INPUT 3」~「CALL DISPLAY」の部分になります。
問題文から情報を拾い集めると、以下のように分かります
INPUT 3
A/D変換器の出力値をGRへ書き込む・・・①
CALL DISPLAY
GRに書き込まれている値をBCD変換し、図4のような形式にする・・・②
プログラム内の定義(詳細な定義は問題文にはありません)をもとに図4→図5の形式に変換する・・・③
設問に戻ると、
c:②で変換後のGRの内容は(図4で既に埋まっている"0000"の部分も含めて)何ですか?
d:①でGRに書き込まれた値は何ですか?
ということです。
問われてる順番と、実際のプログラムの処理順が逆転しているので、プログラムの処理順で説明します。
d
さささんもご理解のように、A/D変換器の出力値は80(10進)です。ただし、表1の注にあるように、データは全て16bitの2進数表記です。つまり、GRへ書き込まれるのは"0000 0000 0101 0000"というデータになります。これを16進数表記したものが答えの"0050"です。
c
②の操作では80という値ではなく、8と0という2つの値として2進数に変換します。
上位けたBCD:80の上位けた→8→1000
下位けたBCD:80の下位けた→0→0000
となるので、変換後のGRの内容は"0000 1000 0000 0000"というデータになります。これを16進数表記したものが答えの"0800"です。
問題文から情報を拾い集めると、以下のように分かります
INPUT 3
A/D変換器の出力値をGRへ書き込む・・・①
CALL DISPLAY
GRに書き込まれている値をBCD変換し、図4のような形式にする・・・②
プログラム内の定義(詳細な定義は問題文にはありません)をもとに図4→図5の形式に変換する・・・③
設問に戻ると、
c:②で変換後のGRの内容は(図4で既に埋まっている"0000"の部分も含めて)何ですか?
d:①でGRに書き込まれた値は何ですか?
ということです。
問われてる順番と、実際のプログラムの処理順が逆転しているので、プログラムの処理順で説明します。
d
さささんもご理解のように、A/D変換器の出力値は80(10進)です。ただし、表1の注にあるように、データは全て16bitの2進数表記です。つまり、GRへ書き込まれるのは"0000 0000 0101 0000"というデータになります。これを16進数表記したものが答えの"0050"です。
c
②の操作では80という値ではなく、8と0という2つの値として2進数に変換します。
上位けたBCD:80の上位けた→8→1000
下位けたBCD:80の下位けた→0→0000
となるので、変換後のGRの内容は"0000 1000 0000 0000"というデータになります。これを16進数表記したものが答えの"0800"です。
2022.03.18 16:18
さささん(No.3)
≫ns様
詳細な説明をありがとうございます!
16進数にするということをすっ飛ばしていたため、ずっと迷走しておりましたが、
ns様の説明で謎が解けました!!
ありがとうございましたm(_ _"m)
詳細な説明をありがとうございます!
16進数にするということをすっ飛ばしていたため、ずっと迷走しておりましたが、
ns様の説明で謎が解けました!!
ありがとうございましたm(_ _"m)
2022.03.18 17:32
さささん(No.4)
16進数でなく16ビットでした…。
ありがとうございました!
ありがとうございました!
2022.03.18 17:39