[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

上位バイト

pointこの用語のポイント

pointバイト単位のデータだよ

point真ん中から真っ二つにしたときの左側だよ

スポンサーリンク

簡単に書くよ

上位バイトとは

アルバイトヒエラルキーの上位層にいるやつ。(嘘)
本当は

何バイトかのデータを真ん中から真っ二つにぶった切ったときの左側の方
です。

image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「ビット」と「バイト」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は、適当に読み飛ばしてください。

ビットは「中身が0か1の箱」です。

上位バイト

コンピュータさんは電気信号のonとoff、つまり、1と0しか判別できません。
しかし、1と0をたくさん組み合わせることで文字や数字を(疑似的に)扱っています。

例えば、1ビットは、0か1が入る箱が1つある状態です。
表現できるのは

1.0
2.1


の2つだけです。
全部アルファベットに置き換えても「a」「b」の2文字しか扱えません。

上位バイト2

これが2ビットになると、箱が2つになります。

1.0・0
2.0・1
3.1・0
4.1・1


の4通りを表現できるようになります。
全部アルファベットに置き換えれば「a」「b」「c」「d」の4文字を扱える状態です。

上位バイト3

3ビットになると、箱が3つです。

1.0・0・0
2.0・0・1
3.0・1・0
4.0・1・1
5.1・0・0
6.1・0・1
7.1・1・0
8.1・1・1


の8通りを表現できるようになります。
全部アルファベットに置き換えれば「a」「b」「c」「d」「e」「f」「g」「h」の8文字を扱える状態です。

上位バイト4

このように、使う箱の数が増えると、扱えるデータの種類も増えるのです。
たくさんの箱を使えば、数字だって文字だって表現できるでしょう。

とはいえ、数字や文字はたくさんあります。
箱もたくさん必要です。

「1億3万2千ビットがさ~」とかの桁数になりかねません。
どこのジンバ○エ・ドルだよ!

そこで、新たに「バイト」という単位が作られました。

1バイトは8ビットです。
箱を8つ集めたものを、大きな箱に入れたイメージですかね。
もともとの箱がビットで大きな箱がバイトです。

上位バイト5

しつこいですが、1バイトは8ビットです。
もともとの箱が8つあるのと同じです。
つまり、1バイトで

1.0・0・0・0・0・0・0・0
2.0・0・0・0・0・0・0・1
3.0・0・0・0・0・0・1・0

(中略)

256.1・1・1・1・1・1・1・1


の256通りを表現できます。

256通りもあれば十分ですね。

アルファベットは26文字です。
大文字、小文字を考慮しても52文字です。
余裕で表現できます。
何だったら、0から9までの数字を追加しても余裕で余りますよ。

そんな中、日本生まれのピヨ太君がいいました。
「日本語も使いたいな~」って。

上位バイト6

ありゃー、困りましたね。
256文字では、すべての漢字を表現するには足りないでしょう。

ですが、ちょっと待ってください。
別に1バイトにこだわる必要はありません。
足りなければ、増やせば良いのです。

例えば、2バイトでは、どうでしょう。
もともとの箱を8つ入れた大きな箱を2つ並べるのです。
実質的に、0か1が入る箱を16個並べたのと同じ状態です。

上位バイト7

これで表現できるのは256通り×256通りで65,536通りです。
おぉ、なんか漢字も表現できそうですね。

もし、足りなくなっても大丈夫です。
3バイトでも4バイトでも増やせば良いのです。

これでコンピュータさんは日本語も扱えるようになりました。

例えば、あなたが「あ」と入力したとしましょう。

上位バイト8

これをコンピュータさんは「1100000 1000010」と解釈します。

上位バイト9

このようにして、コンピュータさんは文字や数字を扱っています。

さて、ここまでを踏まえて2バイトのデータを想像してください。
大きな箱が2つある状態です。

上位バイト10

誰かが、このデータを真ん中から真っ二つにぶった切りました。

上位バイト11

この真っ二つにぶった切ったデータのうち、左側が「上位バイト」です。

上位バイト12

ついでなので書いておくと、右側は「下位バイト」と言います。

上位バイト13

先ほど、ひらがなの「あ」をコンピュータさんは

1100000 1000010

と解釈すると書きました。

0か1が16個(8個×2個)並んでいますよね。
つまり、ひらがなの「あ」は2バイトなデータです。

この

1100000 1000010

のうち、左側の

1100000

が上位バイトです。
右側の

1000010

が下位バイトになります。

なお、今回は2バイトを例に説明しましたが、数が増えても同じです。
奇数は基本的に登場しないので、4バイトとか8バイトになると思いますが、4バイトであれば左側の2バイト、8バイトであれば左側の4バイトが上位バイトです。

image piyo2

一言でまとめるよ

まぁ「上位バイト」って単語が出てきたら「バイト単位のデータを半分にしたときの左側なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク