【情報Ⅰ】CPUの仕組みは動かして覚える!無料ツール「4bit CPUトレーナー」で命令の流れを完全理解

【情報Ⅰ】CPUの仕組みは動かして覚える!無料ツール「4bit CPUトレーナー」で命令の流れを完全理解 未分類

CPUの仕組みは、用語を暗記するより、実際に動かして見るほうが早く理解できます。この記事では、命令が1つずつ処理される様子をブラウザで確かめられる無料ツール「4bit CPUトレーナー」を紹介します。

「プログラムカウンタ」「命令レジスタ」など、CPUの単元には聞き慣れない言葉がたくさん出てきます。教科書の図を眺めても、それぞれがいつ・何をしているのかがつかみにくく、言葉だけを覚えて終わってしまいがちです。

4bit CPUトレーナーを使うと、ボタンを1回押すごとにCPUが1段階だけ進みます。どの部品が動いたかが光り、何が起きたかが日本語で表示されるので、教科書の図が「動く図」になります。

4bit CPUトレーナーとは

4bit CPUトレーナーは、教科書に出てくる「CPUとメモリ」のモデルをそのまま動かせるシミュレータです。インストール不要で、パソコンでもスマホでも使えます。

扱うコンピュータは、学習用に小さくしたものです。

部品このツールでの中身
メモリ16番地(0〜15番地)。1つの番地に8bitを記憶
命令8bit。上位4bitが命令コード、下位4bitが番地
データ4bit(0〜15)
レジスタPC(プログラムカウンタ)、IR(命令レジスタ)、A、B
フラグZ(計算結果が0)、C(桁あふれ)
命令の種類8種類(LOAD、STORE、ADD、SUB、JMP、JZ、HALTなど)

画面の左側がCPU、右側がメモリです。CPUは「制御装置」と「演算装置」に分かれていて、教科書の図と同じ構成になっています。

  • オレンジ色の枠:今の段階で動いた部品
  • メモリ表の▶:PCが指している番地(次に取り出す命令)
  • 青色の行:メモリから読み出した番地
  • 緑色の行:メモリに書き込んだ番地

ランプの点灯で2進数の値が、横の数字で10進数の値が分かるようになっています。

▶ 全画面で開く(スマホ・iPadはこちらがおすすめ)

使い方

まずは「観察」モードでサンプルを1つ動かしてみましょう。手順は次の4つだけです。

  1. 「観察」タブでサンプル(例:足し算 5+3)を選ぶ
  2. 「1段階」ボタンを押す
  3. オレンジ色に光った部品と、下の説明欄を見る
  4. HALT命令で止まるまでくり返し、答えがメモリのどこに入ったかを確かめる

説明欄には、今の段階で起きたこと、その段階が一般に何をする段階なのか、次に押すと何が起きるかの3つが表示されます。次に何が起きるかを予想してから押すと、理解がぐっと深まります。

ボタンの役割

ボタンできること
1段階取り出し・解読・実行のどれか1つだけ進める
1命令3段階をまとめて進め、命令を1つ実行する
▶ 実行停止するまで自動で進める(速さを調整できる)
↶ 戻る1段階前の状態に戻す
リセット最初の状態に戻す

3つのモード

モード内容おすすめの人
観察足し算・カウントダウン・かけ算などのサンプルを動かして見るはじめての人
ミッションお題に合うプログラムを作り、自動採点で確かめる(全6問)仕組みを理解できたか試したい人
自由編集命令を文字で入力して、自分で考えたプログラムを動かすもっと試したい人、先生

ミッションでは、入力の値を変えて何回か実行して採点します。答えの数を直接書き込むだけでは正解になりません。

共通テスト対策としての使い方

「コンピュータの仕組み」は、知識と考え方の両方が問われる分野です。共通テストの問題は、初めて見る仕組みが会話文や図で説明され、その場で読み取って考える形式が中心です。用語を覚えているだけでは、見慣れない図が出たときに手が止まってしまいます。

このツールで「PCが次の番地を指す」「IRに命令が入る」「実行でメモリが書き換わる」といった流れを一度自分の目で確かめておくと、問題文の図を読むときの土台になります。仕上げに、ミッションで自分の理解を確かめてみてください。

まとめ

CPUは、命令を「取り出し→解読→実行」の3段階で処理し、それをHALT命令までくり返しています。4bit CPUトレーナーを使えば、この流れを1段階ずつ自分の目で確かめられます。

  • まずは「観察」モードで、足し算のサンプルを最後まで動かしてみる
  • 気になった言葉は、上の各記事で詳しく確認する
  • 最後に「ミッション」に挑戦して、理解できたかを確かめる

教科書の図だけでは分かりにくかった部分も、動かしてみると「なるほど」と思える瞬間があるはずです。ぜひ授業の予習・復習や共通テスト対策に使ってみてください。

コメント

タイトルとURLをコピーしました