CPU
使用しているPCが8年以上経過し、いつ不具合を起こしてもおかしくない頃合なので、そろそろ新しいのを購入しようと思います。ついでにいろいろ調べたことをメモしておきます。 (注:主にCPU関連です) 目次 x86系CPUの製品群を年代順に並べてみる マイクロ…
前回は、マルチプレクサに繋がる7つの配線を、4ビットのオペコードとフラグでどうやって操るの?ってところで終わりました。 この?の部分には、任意のオペコードとフラグが入力されれば、それを解読して必要な信号を出力する装置を入れる必要があります。…
前回までの記事に登場したモノをすべて繋いでCPUの形にしていきたいと思います。しかし「レジスタとクロック」の回でも書いたように、ただ単純に繋ぐだけでは回路が固定であり、処理内容が永遠に同じものになってしまいます。命令によって回路を切り替え…
今回は、プログラムカウンタが動作する様子を見てみましょう。プログラムカウンタのお仕事は、実行すべきプログラムが格納されているメモリアドレスを指し示すことです。もう少し具体的にいうと、プログラムの開始位置となるアドレスから始まり、クロックに…
前回までに「レジスタ」という単語が何回か出てきましたが、レジスタが何者なのかについてはほとんど書いていなかったので、ここらで書いておこうと思います。 なぜCPUの中にレジスタが必要なのか? CPUの中にはデータを一旦保持するためのレジスタが…
今回は、CPUに対しての命令がどのように行われるのか見てみましょう。 アセンブリ言語とは? 皆さんご存知のとおりコンピューターの中で情報は、0と1で表されます。0と1で表現されたプログラムは機械語と呼ばれます。しかし、命令の内容が0と1の羅…
今回は、情報がどのようにして記憶(メモリー)されているのかを調べてみたいと思います。皆さんご存知のとおりコンピューターの中で情報は、0と1で表されます。コンピューターは電気回路なので、電圧が低い状態を0、電圧が高い状態を1としています(回…
前回はトランジスタを利用した基本的な論理ゲートであるAND、OR、NOTの作り方を紹介しました。今回は、その論理ゲートをさらに組み合わせて加算器なるものを作ってみましょう。専門家の方には初歩的過ぎるかもしれませんが、そのあたりはご容赦下さ…
どんな高水準プログラミング言語で書かれたプログラムであっても最終的には機械語に変換され、電気信号となってCPUで処理されます。CPUの中ではレジスタやALUなどが電気信号を処理しますが、じゃあレジスタやALUはそもそも何で構成されているんでしょ…