様々な学問/勉強課目をシミュレーションで解説!シミュレーター/ツール/ゲームで、いろんな学問を楽しく分かりやすく解説するサイトです!思考の改善や、効率化の話題も!
⇒ 本ブログの詳細/連絡先はコチラ!
学問系TOP AI/ChatGPT 数学 物理 統計学 コンピューター 経済学 Webツール
  1. ホーム
  2. 〇学問シミュレーター/改善・効率化
  3. 情報科学/コンピューター
  4. データ型
  5. 整数データ型「Int」「Long」とは何かをシミュレーションで解説![コンピューターの原理基礎]
■注目記事一覧

高校数学 教科書用シミュレーターの制作に携わりました!!

ページングをシミュレーターで体感しよう!

コンピューターの全理基礎:半加算器の原理をシミュレーターで理解しよう!

コンピューターの半理基礎:半加算器の原理をシミュレーターで理解しよう!

ストレージのRAID5構成をシミュレーターで理解しよう!

浮動小数点型の仕組みをシミュレーターで理解しよう!

本サイトの「サイコロ シミュレーター」が熊本の特別教育テレビ授業で使われました!
 
全テーマ共通記事一覧

整数データ型「Int」「Long」とは何かをシミュレーションで解説![コンピューターの原理基礎]

$$\newcommand\CB[1]{\textcolor{blue}{#1}} \newcommand\CR[1]{\textcolor{red}{#1}} \newcommand\CG[1]{\textcolor{magenta}{#1}}$$

コンピューターは2進数の世界で動いています。2進数は1001101101みたいな感じで0と1の羅列ですね。

前回は1ビット/1バイトとは何かを説明しました。今回はその発展で、Int型とLong型をシミュレーターを交えて解説します!

整数データ型「Int」「Long」とは何かをシミュレーションで解説![コンピューターの原理基礎]

おさらい:「1バイト = 2進数8桁」

1バイト(1byte)は↓のように8つの箱(ビット)を組み合わせたデータになります。

8個の箱を組み合わせて、表せる数は\(2^8 = 256\)種類になります。0~255までの数ですね。
1ビットがデータの最小単位ではりますが、基本的にはこの1バイトを基本単位としてコンピューターのメモリサイズやストレージサイズは表されます!

整数型Int = 4バイト(32bit)で表される数字!

1バイトで表せる数字は0~255までです。これでは普通に使う分には小さすぎます。そこでコンピューターでよく使うデータ型Intでは、↓のように4つのバイトをまとめて、1つの数字を表すようにしています。

Intは↓のような特徴を持ちます。

Int型の特徴
  • 1バイトを4つ組み合わせるので\(256^4=4,294,967,296\)パターンと大きな数を表せる
  • 標準では0~4,294,967,295の数を表せる
  • 符号付き(マイナスを含める場合)は-2,147,483,648~2,147,483,647の数を表せる

マイナスの数も表す場合は、その分下に寄せないといけないので、表せる最大値は半分になるわけです。このあたりの負数の表し方については別記事で解説します。

整数型Intで表せる数をシミュレーターで確認してみよう!

実際に4バイト(32bit)を使うIntがどのような状態になるのか、シミュレーターで確認してみましょう!(ビックエンディアンの場合でシミュレート。この用語については別記事で解説します)

シミュレーターの説明
  • 各バイトを16進数の数で指定すると、それに対応したビットの状態が出力されます
  • 同時に指定した4バイトで表される数値を10進数と16進数で表示します

1byte目
00
2byte目
00
3byte目
00
4byte目
0C

シミュレーターからわかること

4つのバイトが組み合わさったことで、巨大な数が表せる!

これは当たり前のことですね。1バイトでは256パターンしか表せなかったのに、4バイトでは4,294,967,296パターンの数が表せます。バイト数を増やすと掛け算的に表せる数が伸びていくんです。

16進数は2桁単位で、各バイトの状態を表せている

これは16進数の解説でも述べたことです。10進数の数を見ても、各バイトの状態は分かりにくいですが、16進数であれば↓のように2桁ごとにバイトの状態がすぐにわかります!だからこそ16進数は便利なんですね!

整数型Long = 8バイト(64bit)で表される数字!

もう一つの整数型Longも考え方は同じです。ただ、より大きな数を表すために、長さが2倍になっています。

Longは↓のような特徴を持ちます。

Int型の特徴
  • 1バイトを8つ組み合わせるので\(256^8=18,446,744,073,709,551,616\)パターンと大きな数を表せる
  • 標準では0~18,446,744,073,709,551,615の数を表せる
  • 符号付き(マイナスを含める場合)は-9,223,372,036,854,775,808~9,223,372,036,854,775,807の数を表せる

基本的にIntでは扱えないような、超巨大な数を扱うときに使います!

まとめ:「Int = 4バイト(32bit)で表される数字」「Long = 8バイト(64bit)で表される数字」

今回はコンピューターで一番基礎的なデータである整数型のIntとLongについて解説しました。結局は、Intは1バイトを4つ集めたもので、Longは1バイトを8つ集めたものです。それによって表せる数値の範囲が格段上がるわけです!

Int = 4バイト。\(256^4=4,294,967,296\)パターンの数値を表せる
Long = 8バイト。\(256^8=18,446,744,073,709,551,616\)パターンの種類の数を表せる

基本的にはIntを使い、それでも足りない場合はLongを使うという認識でよいと思います!

まとめ

  • 「Int = 4バイト(32bit)で表される数字」「Long = 8バイト(64bit)で表される数字」

 

[関連記事] コンピューターのデータ形式
4.整数データ型「Int」「Long」(本記事)

 


⇒「データ型」カテゴリ記事一覧

その他関連カテゴリ




お気軽にコメントお願いします!

Your email address will not be published. Required fields are marked *




記事カテゴリ