「箱のようなもので、データを一時保管する場所」とうのが一般的であり共通した認識だと思う。
「変数とはノートのように一時情報を記録する場所」、「メモリのようなもの」ということも言える。
共通しているのは、「一時的に情報を記憶しておく場所」とうことだ。
でも
「なぜ変数がプログラミングには必要なのか?」
「なぜ一時的にある情報を記憶しておく必要があるのか?」
という疑問の答えではない。
ITpro 第2回 変数の性質を理解しよう
「補助記憶装置に記憶されたデータをコンピュータが利用するときには,必要なものだけを主記憶装置(メモリー)に読み込んで利用します。やみくもに読み込むだけでは,何がどのデータだかわかりにくくなってしまいます。(中略)メモリーの一部を,自分が付けた名前で扱えるようになっています。これが変数です。」
一般的な説明よりは、ハードウエアとソフトの概念を結びつけてわかりやすくしてあるが自分が求める答えではなさそうだ。
マシン語にはレジスタという概念がでてくるがこれもメモリの一種である。
なぜ「変数」と「レジスタ」と同じメモリなのに違う呼び方をしているのか??
そもそも同じ物なのか??
疑問は増える一方である。
「メモリ」というのは、アーキテクチャでも重要な役割をし、自作PCでも欠かせない、プログラミングにも出てくる。。。とにかくコンピュータとは切っても切り離せない物であることはわかる。
いったい「メモリ」とは何のために作られたのだろう?
またあらたな疑問がでてきた。
その答えは、「マシン語」、「チューリングマシン」というキーワードのあたりにありそうだ。
0 件のコメント:
コメントを投稿