基本情報でわかる 7セグメントLED 「 1 と 0 を書き込めば点灯するパターンがわかる」
error
この記事は基本情報技術者試験の旧制度( 2022 年以前)の記事ですが、試験対策ではなく、技術用語を理解する上では問題ないと考えています。
試験対策としてお読みになる場合は、現在の試験制度では出題されない午後問題を一部題材にしているので、ご注意ください。
この連載では、基本情報技術者試験によく出題されるテクノロジー関連の用語を、午前問題と午後問題のセットを使って解説します。
午前問題で用語の意味や概念を知り、午後問題で技術の活用方法を知ってください。それによって、単なる丸暗記では得られない明確さで、用語を理解できるようになります。
今回のテーマは、 7 セグメント LED です。
7 セグメント LED とは?
7 セグメント LED は、 7 つのセグメント( segment = 部分)から構成された LED( Light Emitting Diode = 発光ダイオード)による表示器です。 7 つの細長い LED の点灯パターンで、数字や英字を表します。多くの場合に、ドットを表す円形の LED も 1 つあります。
以下は、 7 セグメント LED で、 0 ~ 9 の数字と A, b, C, d, E, F の英字を表した例です。これらの点灯パターンを使えば、 16 進数の 1 桁を表せます。
試験には、 2 進数のデータで 7 セグメントを LED を点灯させる問題が出ます。
8 ビットの 2 進数の 1 桁が、 7 セグメント(ドットも含めると全部で 8 セグメント) LED の 1 つの LED に対応付けられます。 7 セグメント LED の種類によって、 1 で点灯するものと、 0 で点灯するものがあります。どちらであるかは、問題文に示されます。
7 セグメント LED に関する午前問題
以下は、 7 セグメント LED に関する午前問題です。
8 ビットの 2 進数の各桁に P7 ~ P0 という名前を付け、 7 セグメント LED の各 LED に a ~ g および Dt という名前を付けています。 2 進数の P7 ~ P0 と LED の a ~ g および Dt の対応は、問題の左側の図に示されています。
ここでは、 2 進数の各桁をポートと呼び、ポートが 1 のとき LED が点灯します。 16 進数で 6D を出力したときの LED の点灯パターンを求めるという問題です。
7 セグメント LED 点灯回路で,出力ポートに 16 進数で 6D を出力したときの表示状態はどれか。ここで,P7 を最上位ビット ( MSB ), P0 を最下位ビット ( LSB ) とし,ポート出力が 1 のとき, LED は点灯する。
16 進数の 6D は、 2 進数で 01101101 です。
この 0 と 1 を問題の左側に示された図の P7 ~ P0 に書き込むと、以下のようになります。 P7 が最上位桁で、 P0 が最下位桁であることに注意してください。
1 で点灯し、 0 で消灯なので、問題の右側に示された図で、点灯する a, c, d, f, g の LED を塗ると、数字の 5 の点灯パターンになります。したがって、選択肢ウが正解です。
解答ウ
7 セグメント LED に関する午後問題
以下は、 7 セグメント LED に関する午後問題(一部抜粋)です。温度モニタのシステムの表示器として7セグメント LED が使われています。
0 ~ 70 °C の温度を 8 段階のレベルに対応させ、 1 ~ 8 の数字で示します。ここでも、先ほどの午前問題と同様に、 2 進数の各桁をポートと呼び、ポートが 1 のとき LED が点灯します。問題文を読んでから、設問 1 を解いてみましょう。
温度モニタに関する次の記述を読んで,設問 1,2 に答えよ。
タイマ割込み発生時に起動される割込みプログラムが,温度検出器の出力値を A/D 変換器を介して取り込み,対応した値を 7 セグメント LED (以下, LED という) に表示するシステムである。温度の検出範囲は 0 ~ 70 °C とし,検出された温度 (以下,検出温度という) を 8 段階のレベルに対応させて, “1” ~ “8” の数字で表示する。割込みプログラムが起動されてから表示処理の完了までの時間は,タイマ割込み間隔に比べて十分に短いものとする。
LED の各セグメントは,対応する出力ポートのビットの値が 1 のとき点灯し, 0 のとき消灯する。LED に “1” ~ “8” の数字を表示するために,数字の字形に合わせて,対応する 8 ビットのデータを出力ポートのビット 0 ~ 7 に設定する。このデータを形状データといい,出力ポートのビット 7 を最上位ビットとする 2 桁の 16 進数で表記する。
設問 1
次の記述中のに入れる正しい答えを,解答群の中から選べ。
温度基準値(°C) | AD変換器出力( 2 進表記) | レベル | |
---|---|---|---|
0 | 000 | 1 | |
10 | 001 | 2 | |
⋮ | ⋮ | ⋮ | |
70 | 111 | 8 |
a に関する解答群
ア 66 イ BE ウ DA エ F2 オ FE
b に関する解答群
ア 010 イ 011 ウ 100 エ 101 オ 110
c に関する解答群
ア 40 °C 以上 50 °C 未満
イ 45 °C 以上 55 °C 未満
ウ 50 °C 以上 60 °C 未満
エ 55 °C 以上 65 °C 未満
オ 60 °C 以上 70 °C 未満
図 1 の 7 セグメント LED を 6 の形状で塗り、点灯している配線に 1 を、消灯している配線に 0 を書き込むと、以下のようになります。
ビット 7 が最上位ビットなので、これは 10111110 という 2 進数であり、 16 進数で示すと BE です。したがって、空欄 a は、選択肢イが正解です。
表 1 を見ると、 A/D 変換器の出力の 000 ~ 111 がレベル 1 ~ 8 に対応していることがわかります。
7 セグメント LED に 6 が表示されているときの A/D 変換器の出力は、 101 です。したがって、空欄 b は、選択肢エが正解です。
問題文に、
14 °C は 10 °C に、15 °C は 20 °C に、(中略)近似される
と示されています。
表 1 を見ると、レベル 6 は、温度基準値が 50 °C であることがわかります。 50 °C に近似されるのは、 45 °C 以上 55° C 未満です。したがって、空欄 c の正解は、選択肢イです。
解答設問 1 a ― イ, b ― エ, c ― イ
いかがでしたか?
1 と 0 を書き込んで 7 セグメント LED が点灯するパターンを求める方法を、しっかりと理解できたでしょう。
この連載では、今後も、多くの受験者が苦手としている用語を取り上げて行きます。それでは、またお会いしましょう!
label 関連タグ免除試験を受けた 74.9% の方が、 科目A免除資格を得ています。
基本情報でわかる IPアドレス と サブネットマスク
update基本情報でわかる ホワイトボックステスト
update基本情報でわかる トランザクション
update基本情報でわかる コンパイラ 最適化
update基本情報でわかる CRC 「具体例を見て体験すれば仕組みがわかる」
update基本情報でわかる 浮動小数点 「3つの情報で1つの数を表す仕組みを知れば、浮動小数点数がわかる」
update基本情報でわかる MIME タイプ 「電子メールの仕組みを知れば役割がわかる」
update基本情報でわかる 7セグメントLED 「 1 と 0 を書き込めば点灯するパターンがわかる」
update基本情報でわかる 論理演算 「真理値表を書けば、半加算器と全加算器の仕組みがわかる」
update基本情報でわかる SMTP / POP3 「ITエンジニア視点で見れば役割がわかる」
update『プログラムはなぜ動くのか』(日経BP)が大ベストセラー
IT技術を楽しく・分かりやすく教える“自称ソフトウェア芸人”
大手電気メーカーでPCの製造、ソフトハウスでプログラマを経験。独立後、現在はアプリケーションの開発と販売に従事。その傍ら、書籍・雑誌の執筆、またセミナー講師として活躍。軽快な口調で、知識0ベースのITエンジニアや一般書店フェアなどの一般的なPCユーザの講習ではダントツの評価。
お客様の満足を何よりも大切にし、わかりやすい、のせるのが上手い自称ソフトウェア芸人。
主な著作物
- 「プログラムはなぜ動くのか」(日経BP)
- 「コンピュータはなぜ動くのか」(日経BP)
- 「出るとこだけ! 基本情報技術者」 (翔泳社)
- 「ベテランが丁寧に教えてくれる ハードウェアの知識と実務」(翔泳社)
- 「ifとelseの思考術」(ソフトバンククリエイティブ) など多数