問21 シフトレジスタの値はどれか
これを見た瞬間、用語がわからんすぎて、絶句したのを今でもはっきり覚えています笑
先日、職場の先輩に解説してもらって少し理解できたのでアウトプットします!!
教えてくださった先輩は以下の順番で解決していくといいと教えてくださりました。
- わからない用語を抜き出す
- 図を読む
- 計算する
今回はこれにそってどういう風にこの問題を理解したのか追っていきます!!
わからない用語を抜き出す
- シフトレジスタ
- シリアル入力パラレル出力シフトレジスタ
- 正論理
- 立ち上がりエッジ
シフトレジスタ
電子計算機の構成要素の一つで数値や計算指令を表す一連の2進数字の記憶装置をレジスタという。フリップフロップを並べたレジスターに適当な論理回路を付加して、桁送り信号(シフトパルス)がくるごとに記憶内容が右または左に1つずつ移動するようにしたものをシフトレジスタという。SFQ回路では、SFQ(単一磁束量子)が回路内に在るか無いかを2進数字の「1」「0」に対応させ、これを左右にシフトさせることでシフトレジスタを実現している。
引用: Weblio シフトレジスタ
簡単にいうと1か0が入る箱がレジスタで、データが更新していくと、右か左に値がシフトしていく記憶装置だそうです!
シリアル入力パラレル出力シフトレジスタ
データを1ビットずつ順番に入力していき、出力は一度に複数ビットで伝達する方式
正論理
論理回路において 1を真(Hi, High),0を偽(Log)として論理回路を構成することを正論理 (positive logic, Active Hight)といい, 逆に,0を真(High),1を偽(Low)として論理回路を構成する場合を 負論理(negative logic, Active Low)と呼ぶ.
ブール代数の双対性から,正論理と不論理の間には単純な関係が成立する.
参考:http://www.ee.t-kougei.ac.jp/tuushin/lecture/lcircuit/3/index.html
立ち上がりエッジ
デジタル信号において、電位がLowレベルからHighレベルへ遷移することを指す。一般的にデジタル回路(同期回路)の動作は、ある信号の立ち上がりエッジや立ち下がりエッジに同期して、別の信号の状態が変化する、という繰り返しになる。
図を読む
クロック:データをシフトレジスタに取り込むタイミング(問題文より)
ストローブ:値を確定する(問題文より)
データ:凸の部分を1、凹の部分を0とする(正論理より)
このデータを8ビットのシリアル入力パラレル出力シフトレジスタに取り込みます。
以上によって、確定後のシフトレジスタは、10001101ということがわかりました!!
計算する
2進数から16進数へ!
2進数から16進数にするには3ステップあります!
- 2進数の数値を4桁ずつに分割
- 2進数から10進数に変換
- 10進数から16進数に変換
解は 「イ.8D」でした!!
まとめ
少しまとめが丁寧すぎたかなと思いつつ、しっかり理解ができたと思います!!