- ベストアンサー
記憶装置について。
記憶装置の用語説明のところに 「記憶装置に格納されているプログラムとデータは一見して区別することはできない」 とあるのですが、それは何故でしょうか? どうしてもいまいちピンとこないので質問しました。 どうぞよろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
この場合の記憶装置とは、メモリーの事だと思います。 マシン語の入力とかされた方でないと、わからないと思います。 0か1の集まりですから、逆アセンブルでもしないとわかりません。 例えば、こんな感じ。どこからどこまでがデータなのかわかりますか? B4 09 BA 0B 01 CD 21 B4 4C CD 21 91 E5 89 BA 97 65 8E 71 82 CD 8F 97 8E 71 83 41 83 69 82 CC 92 86 82 C5 88 EA 94 D4 83 4C 83 8C 83 43 82 C5 83 58 83 65 83 4C 81 F4 0D 0A 24
その他の回答 (4)
- Bubuca
- ベストアンサー率59% (532/898)
こんばんわ #2です。 わたしの言葉が足らなくて誤解をさせてしまったかもしれません。 締め切り後になってしまいましたが、お詫びのつもりで補足の投稿してます。 わたしがRAMなどではなくてディスク装置として回答したのは、RAM上にある データやプログラムはOSがFAT(ファイルアロケーションテーブル)に従って 読み込んだものだからです。またアプリケーションは自分で使用するRAMエリ アを知っていますから、データが格納されるエリアはかなり限定されます。 ファイル(プログラムやデータ)は分断されること無くメモリー上のアドレス に従って格納されていますから判別しやすいと思います。不要になったデータ やプログラムは適期的にパージされますから、残っていることは少ないでしょう。 ですからOSの設計者やアプリケーション開発者、ハードウエアに詳しい人たち は、RAM上のどこに何が書かれているか知っています。わたしもメモリーマッ プを作成したりしてましたので、メインメモリーやVRAMのどこに何が書かれ ているか知っていました。16進ダンプのアスキー表示や逆アセンブルで内容 も把握できますし、2バイト対応のダンプを見ますと日本語のテキストデータ すら読むことができます。 これがディスク上になりますと、FATに従ってセクターを追いかけないとファ イルを把握できませんから手作業でファイル判別は不可能に近い物となります。 ファイルとして判別できないデータはプログラムかデータかの判定以前に有効 なデータかどうかすら判定できません。削除されたはずのゴミデータを見てい ても全く気がつきません。 どうも詰めが甘いものですから、わかりにくくてすみません。
記憶装置に格納されてるドイツ語とフランス語は区別する事はできない 結局見てる人が理解できるかどうかです。プログラム(マシン語)も見る人が見ればわかるわけですし
お礼
回答どうもありがとうございました。
- Bubuca
- ベストアンサー率59% (532/898)
こんばんわ 記憶装置とはRAMなどではなくてディスクなどを想定しますね。 どのレベルの話なのか明確ではないのですが、記録された信号レベルでしたら それこそセクターの始まりも長さもわかりません。 フォーマットの規則に当てはめてセクターが判別できるようになりますが、 その中に書かれたデータも何でどう読むかによって意味があったりなかったりします。 まして、そのセクターがファイルの一部であるかどうかは判別できません。 ある程度人間がわかるように8ビットずつ区切って16進数で表してみても まだなんだかわかりません。 ファイルが格納してあるとしても、どこからどこにつながっているのか、始 まりも終わりもわかりません。ましてプログラムだかデータだかなんて区別 がつきません。ファイルアロケーションテーブルに従って読み込んでみて初 めて1つのファイルが区別できるようになります。 そのファイルがどういうファイルなのかはディレクトリ情報に書いてありま す。そこまでたどりついて初めてデータファイルなのかプログラムファイル なのかがわかります。 多くの規則に従って順番に解析して初めてファイルとして成立し、その種別も明確になります。試しにフロッピーディスクでトラックをまるごと読み込 んで解析してみるとよくわかると思います。 ハードウエアの基本的な説明の中で書いてあることでしたら、このように解 釈をすればいいのかな、と思います。
お礼
回答どうもありがとうございました。
- wsws
- ベストアンサー率9% (256/2568)
検索窓に「ダンプリスト」と打ち込んでください。 それらのリストを見ると数字とAからFしか見えません。 その中に命令とデータが入っています。 コマンドのような物です。 足し算の命令が3に対応しているとして 3をたすと03 03となります。 どこの番地から読み書きするかが重要と言う事でしょうか。 詳しくはアセンブラなどを検索して解析してください。
お礼
回答どうもありがとうございました。
お礼
回答どうもありがとうございました。 例を示してくださったおかげでとても納得できました。