質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

メモリリーク

メモリリークは、プログラムファイルがメモリの解放に失敗した時に起こります。

Q&A

解決済

3回答

992閲覧

非実装メモリ=ROM領域? そもそもROM領域って何なんですか?

mr0237

総合スコア164

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

メモリリーク

メモリリークは、プログラムファイルがメモリの解放に失敗した時に起こります。

0グッド

0クリップ

投稿2017/11/23 09:45

編集2017/11/26 14:42

頭があれで、説明が下手ですいませんが、

メモリのしくみと種類  (メモリはどのように動いているのか?)

のページの図2のメモリのアドレスの図に

・実装メモリ
・非実装メモリ

と書かれておりますが、実装メモリ・非実装メモリとは?のページを見ると

実装メモリのほうは、命令・データを自由に入れられる領域だと思いますが(違っていたらすいません)、非実装メモリのほうは

「(すでに命令・データが内蔵されている)領域」はROM領域(デバイス制御用の領域など)と考えた方が良いでしょう。

と書かれていたのですが、そもそもROM領域という言葉がわからなかったのでネットで検索してみたんですが何なのかよくわかりませんでした。

ROM領域とはリードオンリーメモリの略。つまり、読み出し専用のメモリ領域だと思いますがそういうことでしょうか?

わかりやすく説明してください。よろしくお願いします。


追記

メモリのしくみと種類  (メモリはどのように動いているのか?)のページの
図2 メモリのアドレス」 の図をよく見ると

イメージ説明

**アドレス空間(メモリ空間)**の「CPUが指定可能な範囲」のところに「実装」と「非実装」が混在しているのですが、これは一体どういうことなんでしょうか?

回答よろしくお願いします。


再追記

メモリのしくみと種類  (メモリはどのように動いているのか?)のページの
図2 メモリのアドレス」 の図には1つのメモリチップの中に入っているメモリ空間のことを表していると思いますが(間違っていたらすいません)↓
イメージ説明
青い部分で囲んでありますが、実装メモリ(例)の四角の図を見ると

グレーの部分→「実装
白の部分→「非実装

と書かれているんですが、なぜ1つのメモリ空間(実装メモリ(例)の図)の中に**「実装」と「非実装」が混ざっているのがよくわからないのです。
これは
1つのメモリの中の空間にはアドレス(番地)ごとに**
「実装されているメモリ番地(アドレス)」
「実装されてない(なにもない)メモリ番地(アドレス)」
混じっている仕様になっているということなんでしょうか?

もし番地ごとに実装・非実装が混在してるとなると、なぜそういうことになったのでしょうか?
なんか理由があるのでしょうか?


(11月26日 再追記)
何度もすいません。回答のほうに

メモリ空間全体にメモリLSIを実装するとコストが高くなるので、その一部だけにメモリを実装します。

↑この意味が理解できないのですが、メモリ空間というのは1つのメモリチップ(LSI)の中に内蔵されているのではないのですか?
つまりこういうことです。↓

イメージ説明

1つのメモリチップの中身はこんな感じではないのでしょうか?

よろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2017/11/23 10:57

そもそも、「非実装メモリ」という記述は無いですが。
otn

2017/11/23 12:55

はい。「非実装」とは書かれています。「非実装メモリ」はどこにもない。
mr0237

2017/11/23 13:04

このページに書いてある「非実装」とはどういうことなんですか?
guest

回答3

0

ベストアンサー

このページに書いてある「非実装」とはどういうことなんですか?

「実装」とは、「実際に装着されている」ということです。「非実装」とは「装着されていない」ということです。
「メモリを装着する」という意味がわからないのでしょうか?
もしくは、「アドレス空間(メモリ空間)」の意味がわからないのでしょうか?

#追記

これは1つのメモリの中の空間にはアドレス(番地)ごとに

「実装されているメモリ番地(アドレス)」
「実装されてない(なにもない)メモリ番地(アドレス)」
が混じっている仕様になっているということなんでしょうか?

日本語がおかしいので、誤解があるかもしれません。正しく書き直すと、

これは1つのメモリ空間にはアドレス(番地)ごとに

「実装されているメモリ番地(アドレス)」
「実装されてない(なにもない)メモリ番地(アドレス)」
が混じっている状態になっているということなんでしょうか?

.

もし番地ごとに実装・非実装が混在してるとなると、なぜそういうことになったのでしょうか?

なんか理由があるのでしょうか?

メモリ空間全体にメモリLSIを実装するとコストが高くなるので、その一部だけにメモリを実装します。
(厳密には今時のPCだと仮想記憶の仕組みがあるので、正確な説明ではありません)

同じ機種なら、メモリ4GBのPCの方が、16GBのPCより安いですよね。そういうことです。
#追記

↑この意味が理解できないのですが、メモリ空間というのは1つのメモリチップ(LSI)の中に内蔵されているのではないのですか?

つまりこういうことです。↓

全く違います。
メモリチップLSIをPCに繋ぐことを「実装する」と言います。
そんな歯抜けのメモリチップはありません。

メモリ空間とは、CPUがアクセスできるアドレス範囲のことです。
「コンピューター入門」のような書籍を読まれると良いかと思います。

投稿2017/11/23 16:20

編集2017/11/26 14:54
otn

総合スコア84423

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

言葉の使い方が間違っていては理解できません。

実装メモリは、文字通り実装されているメモリのことで、図2はグレーで塗られている部分のアドレスにメモリがつながっていることを表しています。そして、白い部分は「非実装」ということですが、その部分のアドレスには「何もつながっていない」ので当然メモリはありません。ですから「非実装メモリ」などというメモリは存在しません。非実装は非実装です。質問ページでROMと答えた人がいるようですが、それは間違いです。そもそも質問が間違っています。

ROM領域とはリードオンリーメモリの略。つまり、読み出し専用のメモリ領域だと思いますがそういうことでしょうか?

それで合っています。

投稿2017/11/23 12:26

catsforepaw

総合スコア5938

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

通常は、非実装メモリと言うとその名の通り実装してない(積んでいない)メモリのことです。
積んでないのでROMでもRAMでもありません。
ただし単なる言葉ですので、文脈によって大きく変わります。
部分的に読むのではなく、参考ページに書いてあることを一通り読んで判断してください。
一文のみを取り出しても前提が違うので意味がありません。

投稿2017/11/23 10:35

hihijiji

総合スコア4150

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問