• ベストアンサー

レジスタとメモリについて

私、大学生一年でパソコンを詳しくなりたいと思ってます。 ・レジスタって何故必要なんでしょうか? ・またレジスタとメモリってどう違うのですか? ・またレジスタとメモリって似ている所あるのでしょうか? どなたか教えていただけないでしょうか?

noname#229062
noname#229062

質問者が選んだベストアンサー

  • ベストアンサー
  • you-m
  • ベストアンサー率58% (190/327)
回答No.4

めちゃめちゃ噛み砕いて説明するとこんな感じですかね。 そもそも、一言にメモリっていっても、いろいろあります。 1.いわゆる主記憶(メインメモリ) 2.2次キャッシュとか3次キャッシュとかのキャッシュメモリ 3.補助記憶装置で使われるフラッシュメモリやEPROM、EEPROM等 4.いわゆるレジスタ 一般にメモリといえば、大抵1.をさすわけですが、レジスタもまたメモリの一種なのです。(実際のコンピュータにおいては、CPUという部品を構成する一部になっっていますが。) 違いは、他の方もかかれていますが役割です。まあ、素材が違うとか大きさ(容量も物理的なサイズも)が違うとか、そういう違いもありますけど。 役割の違いをたとえ話にすると、こんな感じですかね。 メインメモリというのは、よーするにテーブルです。そこで様々な作業をする為に、必要なものを棚とか倉庫(これはHDDに相当するかな)から道具や材料(プログラムやデータ)持ってきて広げるわけですが、広さには限度がありますから、テーブルの広さ以上のものは置けないわけです。一度にたくさんのものを広げる(たくさんのプログラムを実行する、大きなあるいはたくさんのデータを扱う)為には、テーブル自体の面積を広げる(メモリを増設する)しかありません。 しかし、そうはいってもテーブルは簡単に広くなりませんので、あまり使わないものを作業していない間、床に置いておくことにします。それが必要になったら別の使わないものを床に追い出して、またテーブルの上におきます。これが仮想メモリの考え方です。 作業をするに当たって、当然テーブルの中でも、自分の手の届く範囲に、今やっている作業に関係するものをまとめて置いておく方が作業効率がいいでしょう。なので、「関係しそうなもの」をテーブルの中でも自分の近くに予めまとめて置きます。これがキャッシュメモリの考え方です。 そして、実際に一つ一つの作業を行う為に、手に必要なものをもちます。道具と材料かもしれませんし、箸と食べ物の皿かもしれません。この「手」に相当するのがレジスタというわけです。 実際のレジスタは、手のように万能ではありません(そもそも自分では動かない単なる置き場ですし)から、役割別にいくつかの種類があります。しかし、CPU(頭)が本当の意味で作業時に直接的に触りにいける(コントロールできる)領域は、基本的にここだけです。あらゆるデータは、レジスタに一旦格納されてはじめて処理対象となることができます。レジスタは単なるメモリですが、他のメモリとの大きな違いは、まさにそこになります。逆に必要性という意味では、レジスタを手(正確には手に相当する場所)に例えたことで、わかっていただけるかと。 まとめるとこんな感じで。 ・レジスタがなぜ必要なのか→CPUはレジスタに置かれたデータしか処理対象にできない。 ・レジスタとメモリの違い→意味的な違いは、必要性に見られる特徴が大きな違い。 ・レジスタとメモリの似ているところ。→どちらもメモリ(データを記憶する場所)には違いない。 この説明は、何もわからない人向けにめちゃめちゃ噛み砕いている上に、細かく知っていると、あまり正しいとは思えない表現をしているところもあります。 先に回答している諸氏や、各種CPUに詳しい方の中には、我慢ならんと思われる方もいらっしゃるかもしれませんが、私の私見では導入段階の理解なんて、この程度で十分だと思われます。 つながりがなんとなく分かれば、その先に出てくる様々な専門用語もおいおい理解できるようになってくると思います。 ご理解の一助になれれば幸いです。

noname#229062
質問者

お礼

なるほど、詳しく教えていただきありがとうございます。

その他の回答 (4)

回答No.5

レジスタは「そろばん」みたいなものです。 一時的にしか記憶できません。 メモリは「ノート」みたいなものです。 しかし、そのノートは閉じると消えてしまいます。 HDDは「閉じても消えないノート」です。

  • sego
  • ベストアンサー率29% (371/1269)
回答No.3

レジスターとは、CPUなどで、数値を一時記憶するための、記憶回路で、高速で数が多くありません。メモリーは、長く記憶するためで速度より価格と量が重視される保存用のメモリーです。高速なCPU内部メモリと低速な外部メモリーの速度差を埋めるための仲立ちのようなメモリがキャッシューメモリーです。 1+2=○を計算するとき これを記憶しているところをメモリに置き これを計算するためのプログラムもメモリー上におきます。 計算するとき、計算をする回路(レジスターの高機能版)をアキュムレータと呼びますが、1をアキュムレータに2をレジスター1に記憶します。そしてアキュムレータ値とレジスター1を加算回路に通すと、アキュムレータが加算されて3になります。それを先ほどのメモリーの答えの位置に書き込みます。(パソコン用のCPUではこのようなやり方を行いませんが参考として) レジスターとメモリーの定義は 大よそCPU内部にあるメモリをレジスターとよびます。ただしパソコンなどの高機能CPUでは、コアーブロックの内部に入っているものを指し、コアブロック周辺にはいって入る周りのメモリをキャッシュメモリーと呼んでいます。 パソコンの場合レジスターとメモリは構造がかなり違いますが構造の違いによる呼び名の違いではありません。役割の違いです。

noname#229062
質問者

補足

レジスターとメモリーの似ている所ってどんな所なんですか?

  • ftomo100
  • ベストアンサー率41% (297/723)
回答No.2

レジスタはパソコンの中でもCPUの心臓部ですね。 突き詰めればパソコン=コンピュータは、どこまで行っても「計算機」なんです。自動計算機。記憶されたプログラムにしたがって計算をし、その結果を表示しているに過ぎないのです。 その計算に必要なのが「レジスタ」で、計算機そのものをあらわします。ソロバンでいうと玉ですね。 メモリは、その計算結果を保持するのに使用します。いうなれば、紙(と鉛筆)。 レジスタは、個数が決まっているのです。ですから、いくつもの数を合わせた計算をする場合や、いくつもの結果が必要な場合などには、メモリからレジスタに保存してレジスタで計算してその結果をメモリに保存します。 レジスタにも本当はいくつも種類がありますが、CPUによっても違ったりしますので省略します。 http://ja.wikipedia.org/wiki/%E3%83%AC%E3%82%B8%E3%82%B9%E3%82%BF_(CPU)

noname#229062
質問者

補足

計算をするためにレジスタが必要って事ですか?

  • wsws
  • ベストアンサー率9% (256/2568)
回答No.1

メモリからレジスタに来て処理します。 マシン語 機械語 他で検索してください。

関連するQ&A

  • メモリアドレスレジスタについて。

    メモリアドレスレジスタの説明について、テキストには、「命令が処理対象とするアドレス(実効アドレス)は、メモリアドレスレジスタで計算される。」とありますが、全く分かりません。 噛み砕いて教えて頂けないでしょうか?

  • キャッシュメモリとレジスタの実体としての違い

    キャッシュメモリとレジスタはどちらも SRAM でできていると認識していますが、 用途が違うだけで実体としては同じと考えて良いのでしょうか

  • ハイパースレディングのレジスタについて

    ハイパースレディングのレジスタについて ハイパースレッデイングのCPUで2つのスレッドA,Bを動かすとする。 このときAの実行状態を示す汎用レジスタやプログラムカウンタと     Bの実行状態を示す汎用レジスタやプログラムカウンタの扱いはどうなのでしょうか。 次の2つの方法が考えられる。 (1) レジスタのロード、実行、レジスタのセーブを繰り返す方法。     CPU内に高速なメモリを持ち、実行前にレジスタに値をロードして、命令を実行して、レジスタの値を保存を繰り返して、A,Bのスレッドを実行する方法。 (2) A用のレジスタとB用のレジスタを2組用意して、相互に切り替えながら実行する方法。     Aを実行するときはA用のレジスタを使用して、Bを実行するときはB用のレジスタを使用する方法。 の2つが考えられるが、それとも他の方法があるのでしょうか。 それに関連して、1度に実行する機械語命令の個数はいくつなのでしょうか。 スレッドAの機械語命令を実行して、切り替えてBの機械語命令を実行するときに、 Aの1命令を実行してから、Bの1命令を実行する。1命令毎に切り替えるのでしょうか、 それともAの数個の命令を実行してから、Bの数個の命令を実行するのでしょうか。 このときスレッドを切り替える際に1度に実行する機械語命令の個数はいくつでしょうか。 ご存知の方がおりましたら、教えて下さい。

  • レジスターのジャーナルは必要?

    飲食業をやっているのですが、この度ジャーナルを取り出せるレジスターを導入しました。 1レシート型なのですが、清算後にメモリーされたジャーナルを出すことができるレジスターを買いました。 長いジャーナルを手で巻き取るのが大変なので特に必要無いなら省いてしまいたいのですがどうなのでしょうか? よろしくお願いします。

  • パソコンをPOSやレジスターに

    こんにちは。 小さなお店に行くと、パソコンをPOSやレジスターにしているところがあるのですが、パソコンをどうやってPOSやレジスターにするのでしょうか? http://www.page.sannet.ne.jp/pocketu/tm_reg/tm_reg10.htm ここを見ると、「例.DOS/Vパソコン+PCキーボード+プリンタを既に所有、引出は使用しない 機械価格=0円」に当てはまるのですが、スキャナーはどうやって購入するのでしょうか? また、レジスターにするプログラムはどうするのでしょうか? 質問攻めで申し訳ありませんが、教えてください。 よろしくお願いします。

  • レジスターの売り上げ記録の消去について教えてほしいのですが、レジスター

    レジスターの売り上げ記録の消去について教えてほしいのですが、レジスターをリース契約で使っていましたが、ルース期間終了のため返却しなくてはなりません。しかし、リース会社側から売り上げ等のデータを消去してから、返さないとならないのですが、消去の仕方が分かりません。取り扱い説明書はありますが、データの消去の方法は載っていません。リース会社側にデータの消去を頼むこともできますが、不景気の折、経費節約ため自分でやりたのです。よろしくお願いします。当方、パソコン関係の知識は初心者クラスです。レジスターの機種は、アスター、C-REG21、型式はC21MSです。

  • x64のレジスター設定について

    電源を入れたときにユーザ選択画面が表示されないまま起動が完了します。 起動時の動作を決めるレジスターの設定が必要なのでしょうが、x86と同じではだめのようです。 x64では、どのように設定すれば良いのか教えてください。或いはレジスター設定のマニュアルが有れば知りたいのですが・・・

  • シフトレジスタとタップ

    こんにちは。 カテ違いだったらすみません。 勉強しながらシフトレジスタの作成を試みているのですが タップ数というのが良く分かりません。 色々調べてみると「M系列」とかに関与しているみたいなのですが 「M系列」も「Σ」とかと絡んでいて良く分かりません。 「タップ」の意味も理解していないので そもそもシフトレジスタに「タップ」が必要なのかどうかも分かっていません。 「タップ」って何でしょうか? メリットとかあるのでしょうか? なぜシフトレジスタに関係するのでしょうか? 詳しい方、教えて頂けると助かります。 また、M系列にも精通してなきゃダメでしょうか? もしそうであれば、「Σ」とか詳しくないので初心者向けのサイトなどを紹介して頂けると助かります。 以上、宜しくお願いします。

  • パソコンをレジスター代わりに使いたい

    お世話になります。見た目の良いレジスターが無いのでパソコンで代用しようと思いますが、どのようにすれば良いのかわかりません。何か専用ソフトがあるのでしょうか?登録する分類は10種類くらいで、金額を入力し、合計が出るくらいの簡単なもので、ドロアの連動も必要ありません。理想はパソコンとシンプルなソフトがあって、入力すればレシート用のサーマルプリンタから出てくると言うものです。 また、レシート用のサーマルプリンタは高額なので、他に代用出来る方法があれば教えて下さい。よろしくお願いします。

  • アドレスレジスタは物理的に存在しますか?

    情報系の勉強している、初心者です。 アドレス修飾というところを今勉強中です。 命令が読み出しから実行終了までのステップを    段階      関係するレジスタ等 1. 命令の取り出し:命令アドレスレジスタ,命令レジスタ 2. 命令の解読:デコーダ,演算装置(演算命令の場合) 3. 有効アドレス計算:アドレスレジスタ,主記憶装置 4. データの取り出し5. 命令の実行:演算装置(演算命令の場合) 6. 演算結果格納:主記憶装置 ・・と説明しています。(一部省略している部分があります。)  そこで、この流れが意味することがいまいちつかめないし、覚えられないので パソコンの中をみて確かめようと思いました。 使っているノートパソコンのメモリーは取り出せました。が、一番知りたかったCPUはどこにあるのか分からなかったので、インターネットでアドレスレジスタや命令レジスタを視覚的にとらえられないかといろいろ調べましたが・・イメージ図は出てくるのですが写真は見つけられませんでした。 アドレスレジスタ・デコーダ等が実際に存在するのか、アドバイスお願いします。