見出し画像

【#34】基本情報技術者「クロック」

おはようございます!
データサイエンスを学んでいる、大学4年生のUKIです。

今日は、『基本情報技術者「クロック」』というテーマでお話ししたいと思います。

今週の模試の結果!

先週から始めた、「毎週末、基本情報技術者の模試を受ける」ということで、今週も受けました!

結果は、正答率72.5%で、見事合格でした!

前回が55%で不合格だったので、大きくスコアを伸ばすことができたのですが、実は、前回と問題が同じでした。。。

問題の順番は変わっていたのですが、中身はすべて同じで、勉強した分だけスコアが伸びた、という分かりやすい結果になりました。

正答率が70%を超えて、合格ラインには乗っているのですが、理解して解けている問題はまだ少なくて、たまたま当たった問題を除くと、正答率は52.5%になりました。なのでこの後も、この問題の分からない問題を中心に勉強して、正答率100%になるまではやろうかと思います。

そして、正答率100%になったら、基本情報技術者 過去問道場というサイトに移って、こちらで勉強していこうと思います!

というわけで、ひとまず順調に勉強が進んでいます!という報告でした。

学んだこと

さて、ここからはいつも通り、模試の問題を用いながら学んだことの共有です。

問題「クロック」

今回紹介する問題は、こちらです。

問題)クロックの立上りエッジで、8ビットのシリアル入力パラレル出力シフトレジスタの内容を上位方向へシフトすると同時に正論理のデータをレジスタの最下位ビットに取り込む。また、ストローブの立上りエッジで値を確定する。各信号の波形を観測した結果が図のとおりであるとき、確定後のシフトレジスタの値はどれですか。ここで、数値は16進数で表記している。

A.63
B.8D
C.B1
D.C6

出典 令和元年 秋期 午前 基本情報技術者試験 問: 21

この問題は、問題文に知らない単語が多くて、何を言っているのか分からなかったので、適当に回答して、案の定、間違えていました。

というわけで、今回は問題を理解するところから勉強していこうと思います。おそらく今日はこの1問で終わります。

まず、「立上りエッジ」というワードが問題文中に2回出てきています。(「クロックの立上りエッジ」と「ストローブの立上りエッジ」)この「立上りエッジ」というのは、図中にある、ストローブとクロックそれぞれの横線の上に「凸」みたいな形で飛び出ている部分のことらしいです。

次に、「レジスタ」についてです。「レジスタ」は、一時的に命令を格納しておけるものです。

そして、「シリアル入力」は、一つ(1ビット)ずつ順番に0か1を入力していくことで、「パラレル出力」は、まとめて(今回は8ビット)出力すること、「シフトレジスタ」は、入力があるたびにどんどんシフトしていくレジスタのことです。(今回は「最下位ビットに取り込む」とあるので、最下位ビットから取り入れて、右から左にシフトしていく)

最後に、「正論理のデータ」は、電圧がかかった状態を真または1、電圧がかからない状態を偽または0として定義したデータのことで、逆になったものを「負論理のデータ」ともいうそうです。

ということで、問題の図を再掲します。

出典 令和元年 秋期 午前 基本情報技術者試験 問: 21

クロックの横線が上に上がっている時のデータの値(0か1)を入力として、ストローブが上に上がっているタイミングでまとめて出力するという形になります。

ということは、入力される値は、「110001101」となります。
ここで注意が必要なのが、入力される値が9桁(9ビット)になることです。

今回の問題では、「8ビットのシフトレジスタ」が使われているので、1ビット分ずれることになります。
今回の問題では、「データを最下位ビットに取り込む」とあるので、「110001101」の一番左の「1」が押し出されて、最終的に出力されるのは、「10001101」になります。

最後に、この2進数の「10001101」を16進数に変換します。
「1000」と「1101」に分けて考えると、「8」と「D」になるので、答えは、「B.8D」になります。

いやー、今回の問題は難しかったですね。
そもそも問題が理解できなかったのでお手上げ状態でしたが、なんとか理解できました。ここまで苦労したら、これからは解けそうな気がします。

今回の参考資料はこちらです。

匿名で質問募集します!

最後にお知らせをさせてください!
昨日から、「マシュマロ」という質問箱アプリで質問の募集を開始したので、何か聞いてみたいことがある方は、ぜひお気軽にメッセージお願いします!
匿名で質問できます!

まとめ

最後まで読んでいただき、ありがとうございました。
今日は、『基本情報技術者「クロック」』というテーマでお話しさせていただきました。

今後も日々の活動や学び、考えていることなどを発信していくので、よろしくお願い致します。

また、X(旧:Twitter)でも発信しているので、フォローお願いします。

匿名で質問募集中です!
聞いてみたいことなど、お気軽にメッセージください!


この記事が気に入ったらサポートをしてみませんか?