![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんにちは。
今回は基本的なことを伺います。
とあるサイトで下記の記事を見つけました。
32bitは2の32乗で約43億通りの組み合わせて表現できる。
サイズは4Gバイトとなる。
近年のメモリーは限界容量の4Gバイトにまで達しており、64bitコンピューティングへの普及が進んでいる。
ここで疑問なのですが、私は8bitは1バイトということが頭から離れず、
32bitは32×4の128バイトでない理由を知りたいと思います。
これがなぜ4Gバイトなのでしょう?
初歩的なことで申し訳ございませんが、よろしくお願いします。
No.1ベストアンサー
- 回答日時:
>これがなぜ4Gバイトなのでしょう?
すでに、質問分の中に書いてあります。
>32bitは2の32乗で約43億通りの組み合わせて表現できる。
からです。
>32bitは32×4の128バイト
は間違いではありませんが、「128バイト」というのは「メモリサイズ」という「数値」を扱う為の「入れ物の大きさ」になります。
ここで扱える数値が約43億なので4Gバイトのメモリを利用できるということになります。
どうもありがとうございました。
メモリーのアドレス空間と番地(1番地につき1バイト記憶可能)という
ことは知りませんでした。
これでなぜ4Gバイトになるのか理解できました。
No.5
- 回答日時:
>32bitは32×4の128バイト
32(アドレス)x4(=32/8:データ)
ですか?考え方はいいのですが、計算方法が違っています。
メモリには1単位毎(ここでは「単位」としておきます)に番号(アドレスと呼びます)が振ってあります。あるメモリの内容を知りたい、内容を書き換えたい、というときは、その番号を指定します。
その番号を何bit使うか(幅と呼びます)、で32bit,64bitといっています。
(今回はメモリの話なので、アドレス幅だけで話を進めます。細かいことを言うとややこしいので。例えば、8bitCPUでもアドレスは16bitだったりします)
使用できるアドレスは
1bitなら2通り 0,1
2bitなら4通り 00,01,10,11
3bitなら8通り 000,001,010,011,100,101,110,111
...と、1bit増えるごとに2倍ずつ増えます。
32bitでは2の32乗で約43億通り(4G)..というのはご質問にある通りです。
そこで、1アドレスを割り当てる単位なのですが。
32bitなのだから、32bit(=4byte)毎にすれば 4Gアドレス x 4Byte=16GB という考え方もあります。
が、現在一番使われているCPUが1byte毎にアドレスを振っているので、 4Gアドレス x 1Byte=4GBが最大となります。
どうもありがとうございました。
メモリーのアドレス空間と番地(1番地につき1バイト記憶可能)という
ことは知りませんでした。
これでなぜ4Gバイトになるのか理解できました。
文字の世界(半角文字は1バイト,8bit)しか知りませんでした。
それで32bitは32×4の128バイト、と計算してしまいました。
No.4
- 回答日時:
32ビットで表現できるメモリアドレス空間が4Gバイトなのです。
【メモリマップ図】
↓8ビット=1バイト
0番地……00000000
1番地……00000000
2番地……00000000
:
:
2の32乗-1番地……00000000
2の32乗-1=4294967295
CPUが直接アクセスできるメモリ空間が32ビットで表現されるということは、最大メモリアドレスは「2の32乗マイナス1」となります。だから、メモリは0番地から4294967295番地まであることになり、1番地につき1バイト記憶できるので、メモリサイズは4Gバイトとなります。
どうもありがとうございました。
メモリーのアドレス空間と番地(1番地につき1バイト記憶可能)という
ことは知りませんでした。
これでなぜ4Gバイトになるのか理解できました。
No.3
- 回答日時:
32bit の2進数で 0~4,294,967,295 の数値が表現できるとして,それがなぜ 4Gビットではなくて 4Gバイトなのか,というお話ですね?
アドレスとデータの関係を関係はご存じでしょうか?
メモリはアドレスを与えることで個々のデータにアクセスできることを思い出してください.つまり,メモリのサイズは「アドレスの総量 x 個々のデータサイズ」となります.
CPUによりますが,IntelのCPUは「バイトアドレッシング」と呼ばれる方式を取っています.これはつまりメモリの個々のデータサイズが 1バイト であることを示しています.
結局,IntelのCPUで32bitのアドレス範囲(総量)を持つ場合,メモリの総量は,
4,294,967,296 x 1バイト = 4G バイト
となります.
==
蛇足ですが,ほかにもCPUによっては「ワードアドレッシング」などを採用している物もあり,これはつまりメモリの個々のデータサイズが 4バイト であるようなCPUですが,もしそんなCPUの場合は32bitコンピューティングであったとしてもメモリの総量は
4,294,967,296 x 4バイト = 16G バイト
となります.
32bitコンピュータだからといって,必ずメモリの最大が4Gバイトというわけではありません.
どうもありがとうございました。
メモリーのアドレス空間と番地(1番地につき1バイト記憶可能)という
ことは知りませんでした。
これでなぜ4Gバイトになるのか理解できました。
No.2
- 回答日時:
メモリにアクセスする時に メモリのアドレスを指定してアクセスします。
1バイト単位で 0番地のメモリ 1番地のメモリ という風に (実際は32ビットOSの場合は 一度に 4バイト単位で アクセスしてますが ちょっと置いといて)
32ビット 2の32乗 で 表現できる番地の範囲が 0 ~ 4294967295 であるので 4294967296 B(バイト) のメモリを使用することが出来るということになります。
4294967296 B = 4194304 KB = 4096 MB = 4GB
どうもありがとうございました。
メモリーのアドレス空間と番地(1番地につき1バイト記憶可能)という
ことは知りませんでした。
これでなぜ4Gバイトになるのか理解できました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 英文和訳についての質問です。 2 2023/06/23 06:38
- その他(プログラミング・Web制作) Visual Studio Code 関数の使い方について 3 2023/05/31 13:15
- Excel(エクセル) Excel 2019 32-bit版を64-bit版にするには? 8 2023/07/28 14:20
- Visual Basic(VBA) VBAでArrayListを使う為の「mscorlib.tlb」の参照設定について 3 2022/03/23 19:45
- TOEFL・TOEIC・英語検定 bitとlittleは両方ともに同じ 1 2022/08/10 13:03
- その他(AV機器・カメラ) オーディオインターフェイスの24bitなど量子化bit数はどこで設定できるのでしょうか? 1 2022/06/26 07:58
- 英語 わからない英文があります。 4 2022/11/16 07:25
- スピーカー・コンポ・ステレオ DAC[について・・・ 1 2022/08/29 11:44
- 会社・職場 バイトを1ヶ月ほど休んでおりそのまま辞めたいです 7 2023/02/24 05:46
- その他(IT・Webサービス) hi-bitの契約について 1 2023/05/04 21:48
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELでの16進数取り出し、上...
-
文字の容量(サイズ)についての...
-
ダウンロード時間の計算方法
-
携帯電話の略語であるMBって英...
-
1バイトは何ビット?
-
音声のコーデックについて
-
KBのMB違いって
-
KBとMB
-
1Mバイトって何バイト?
-
CSV データのバイト数を調べる...
-
16進数どうしの乗算
-
実行計画の「COST」と「BYTE」...
-
文字数5000字、文字コードが2バ...
-
ネット用語で「k」とは?
-
GB と Gbの違いの意味
-
【有効数字について】 授業で、...
-
ワードの改行について
-
2ビット、3ビット、4ビットのグ...
-
改行削除の便利な方法について
-
有効数字は最後答えを出すとき...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELでの16進数取り出し、上...
-
KBのMB違いって
-
文字の容量(サイズ)についての...
-
携帯電話の略語であるMBって英...
-
1Mバイトって何バイト?
-
JIS、SHIFT-JIS、EUCはなぜでき...
-
実行計画の「COST」と「BYTE」...
-
K KB MB について詳し...
-
GB と Gbの違いの意味
-
KBとMB
-
電子透かしを使用した場合の著...
-
32bit = 4GB(バイト)?
-
Excel_VBAで改行コードの無いフ...
-
(*^_^*) キロバイトと字数の...
-
メモリーの単位を解説してくだ...
-
文字数(バイト数)の数え方が...
-
1バイトは何ビット?
-
シフトjisコードで記載された40...
-
アルファベット30文字は何バイ...
-
DVD-R 4.7GBって、何byte でし...
おすすめ情報