平成29年春期午後問2
kuroさん
(No.1)
https://www.fe-siken.com/kakomon/29_haru/pm02.html
平成29年春 午後試験 問2 ハードウェアについてです。
設問2の回答を見ても納得のいく理解ができません。
表2の動作概要には、読み書きする値まで指定されていますが、フローチャートでは
そこまで指定していません。INPUT/OUTPUTとポート番号のみの指定です。
サルでも分かる解説できる方、いましたらご教授お願い致します。
平成29年春 午後試験 問2 ハードウェアについてです。
設問2の回答を見ても納得のいく理解ができません。
表2の動作概要には、読み書きする値まで指定されていますが、フローチャートでは
そこまで指定していません。INPUT/OUTPUTとポート番号のみの指定です。
サルでも分かる解説できる方、いましたらご教授お願い致します。
2021.10.24 20:26
ろいさん
(No.2)
これはフローチャートだけ見るとなんのことかさっぱりですねw
自分はこの問題を解く時に、表2に注目しました。
まず、「GR ← 1(GRに1を設定)」は読み飛ばします。
次の処理で「OUTPUT 2」
表3の「命令の形式」にある通り「OUTPUT」の隣にある「2」が「I/Oポート番号」になります。
つまり表2の「I/Oポート番号」から「2」に書いてある動作概要を参照できます。
2の中の一番上の動作概要のみ「書き込むと」というワードがありますね。
処理が「OUTPUT」なので基本的に関係があるのはこちらのみになると思います。
「番号2のI/Oポートに値1を書き込むと、A/D変換が開始される」なので、
表3「OUTPUT」の命令動作を確認すると「GRに設定したデータを、番号で指定したI/Oポートに接続されている機器に書き込む」とあり
「GRに1が設定されていれば、A /D変換が開始される」と解釈できます。
最初に読み飛ばした「GR ← 1」で1が設定されていますので、フローチャートの「A/D変換開始」の通りの処理になりますね。
次に「INPUT 2」の処理がきます。
こちらも先ほど同様に表2の「I/Oポート番号 2」のところを確認すると、今度は「読み込んだ値が」という
ワードが含まれる動作概要が2つありますね。
今度はINPUTなのでこの2つが関係ある動作概要となります。
表3INPUTの命令の動作を確認すると「番号で指定したI/Oポートに接続されている機器からデータを読み込み、GRに設定する」とあります。
つまりINPUTの処理の中で「GR=読み込んだ値」に設定が変わっているようです。
表2の内容で、この後の分岐の条件に絡んでくるものですが、「0ならば」と「0以外ならば」のどちらかしかありません。
dの分岐は、「0」か「0以外」かを判断することになると思います。
つまり、「GR = 0」しかありえないのです。(GR = 0 の場合は「変換中」、GR ≠ 0 の場合は「出力値が確定」)
dの分岐で「No(出力値が確定)」の場合のみ進み、次の「INPUT 3」の処理に入ります。
表2の動作概要の通りの処理となります。
その後「変換処理」として「A/D変換きの出力値を形状データαに変換」する処理が入ります。
さらに「GR ← α」の処理で、「GRに形状データを設定」されたことがわかります。
最後のeの処理ですが、表2の残っている「I/Oポート番号 1」の動作概要を見てみると、
「番号1のI/Oポートに形状データを書き込むと、出力ポートの格ビットに値が設定され、LEDの格セグメントの点灯と消灯が行われる。」とあります。
「形状データを書き込むと」の表現からわかる通り、処理は「OUTPUT」となります。
そしてI/Oポート番号は「1」を指定してあげれば良いので「OUTPUT 1」が解答になると思います。
こちらの解説でご納得いただけたら、幸いです!
一緒に試験勉強がんばりましょうね!!
自分はこの問題を解く時に、表2に注目しました。
まず、「GR ← 1(GRに1を設定)」は読み飛ばします。
次の処理で「OUTPUT 2」
表3の「命令の形式」にある通り「OUTPUT」の隣にある「2」が「I/Oポート番号」になります。
つまり表2の「I/Oポート番号」から「2」に書いてある動作概要を参照できます。
2の中の一番上の動作概要のみ「書き込むと」というワードがありますね。
処理が「OUTPUT」なので基本的に関係があるのはこちらのみになると思います。
「番号2のI/Oポートに値1を書き込むと、A/D変換が開始される」なので、
表3「OUTPUT」の命令動作を確認すると「GRに設定したデータを、番号で指定したI/Oポートに接続されている機器に書き込む」とあり
「GRに1が設定されていれば、A /D変換が開始される」と解釈できます。
最初に読み飛ばした「GR ← 1」で1が設定されていますので、フローチャートの「A/D変換開始」の通りの処理になりますね。
次に「INPUT 2」の処理がきます。
こちらも先ほど同様に表2の「I/Oポート番号 2」のところを確認すると、今度は「読み込んだ値が」という
ワードが含まれる動作概要が2つありますね。
今度はINPUTなのでこの2つが関係ある動作概要となります。
表3INPUTの命令の動作を確認すると「番号で指定したI/Oポートに接続されている機器からデータを読み込み、GRに設定する」とあります。
つまりINPUTの処理の中で「GR=読み込んだ値」に設定が変わっているようです。
表2の内容で、この後の分岐の条件に絡んでくるものですが、「0ならば」と「0以外ならば」のどちらかしかありません。
dの分岐は、「0」か「0以外」かを判断することになると思います。
つまり、「GR = 0」しかありえないのです。(GR = 0 の場合は「変換中」、GR ≠ 0 の場合は「出力値が確定」)
dの分岐で「No(出力値が確定)」の場合のみ進み、次の「INPUT 3」の処理に入ります。
表2の動作概要の通りの処理となります。
その後「変換処理」として「A/D変換きの出力値を形状データαに変換」する処理が入ります。
さらに「GR ← α」の処理で、「GRに形状データを設定」されたことがわかります。
最後のeの処理ですが、表2の残っている「I/Oポート番号 1」の動作概要を見てみると、
「番号1のI/Oポートに形状データを書き込むと、出力ポートの格ビットに値が設定され、LEDの格セグメントの点灯と消灯が行われる。」とあります。
「形状データを書き込むと」の表現からわかる通り、処理は「OUTPUT」となります。
そしてI/Oポート番号は「1」を指定してあげれば良いので「OUTPUT 1」が解答になると思います。
こちらの解説でご納得いただけたら、幸いです!
一緒に試験勉強がんばりましょうね!!
2021.10.24 22:33
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告