サイズエンドストレージの理解
コンピュータメモリに格納されているデータはすべてマシンバイナリシーケンスであり、c/c++言語を学習するときにいくつかの変数が定義されます.例えば、
int(整形)、char(文字型).....しかし、コンピュータにはどのように格納されているのでしょうか.
コンピュータのメモリアドレスには高低がありますが、1つの整形数がメモリに4バイトを占めているのはどのように記憶されているのでしょうか.低いです
ビットは低いアドレスに置きますか、それとも低いアドレスに置きますか.ここでは、小さなcプログラムで検証することができます.
実行結果は1まず、コンピュータに1という数がどのように格納されているかを見てみましょう.
メモリアドレス0 1 2 3メモリ内容0,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,16進数の例を挙げて定義すれば0 x 1122,3344,その結果、メモリアドレス0 1 2 3のメモリコンテンツ44 33,3311、すなわち、下位は、低アドレスに存在し、このモードがコンピュータの小端記憶モードである.逆に、メモリアドレス0 1 2 3メモリコンテンツ1,000,000,000,000,000,000,000,000,000,1または16進数メモリアドレス0 1 2 3メモリコンテンツ11,22,33,44というパターンが別のメモリである場合大端ストレージと呼ばれるモード
int(整形)、char(文字型).....しかし、コンピュータにはどのように格納されているのでしょうか.
コンピュータのメモリアドレスには高低がありますが、1つの整形数がメモリに4バイトを占めているのはどのように記憶されているのでしょうか.低いです
ビットは低いアドレスに置きますか、それとも低いアドレスに置きますか.ここでは、小さなcプログラムで検証することができます.
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a=1;
char *p = NULL;
p = (char*)&a;
printf("%x
", *p);
system("pause");
return 0;
実行結果は1まず、コンピュータに1という数がどのように格納されているかを見てみましょう.
メモリアドレス0 1 2 3メモリ内容0,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,16進数の例を挙げて定義すれば0 x 1122,3344,その結果、メモリアドレス0 1 2 3のメモリコンテンツ44 33,3311、すなわち、下位は、低アドレスに存在し、このモードがコンピュータの小端記憶モードである.逆に、メモリアドレス0 1 2 3メモリコンテンツ1,000,000,000,000,000,000,000,000,000,1または16進数メモリアドレス0 1 2 3メモリコンテンツ11,22,33,44というパターンが別のメモリである場合大端ストレージと呼ばれるモード