2進数を簡単に16進数に変換してみよう 0.4

ソーラー 「16進数っておもしろいね。


5AAなどのように数字とアルファベットがはいっている。


これがまたかわいらしいんだな。」


アレサ 「そうおもわれますか。


数字と文字で数値を表すのが16進数の人気の秘訣かもしれません。


それでは


2進数1000000000を16進数200に変換してみましょう。



2進数で1000000000(512)は


=(10進数)2×2の8乗


=(10進数)2×(2×2×2×2)×(2×2×2×2)


=(10進数)2×16の2乗となっています


(10進数)2×16の2乗は16進数であらわすと


(10進数)2×16の2乗+0×16の1乗+0×16


=(16進数)200


つまり


2進数1000000000=16進数200となっています。


2進数表示と16進数表示を|をひき、比べてみると・・・


2進数    10|0000|0000  (4つの数値ごとに|をひく)=

16進数で    2|0|0     (1つの数値ごとに|をひく)


👆2進数と16進数の関係は


『 10| 』と『 2| 』

『 |0000| 』と『 |0| 』

『 |0000 』と『 |0  』


が左から上下順順に対応しているのがうかがえますの


(ここで2進数10=16進数2


2進数0000=16進数0とうまい具合に


|で区切られた部分の数値同士が等しくなっています。)



では他の数値で2進数と16進数の関係をみていきましょうか。


例として2進数1011111010ならどうでしょうか。


2進数1011111010を

4つの数値ごとに|でお部屋に区切ってみると

=2進数10|1111|1010となります。


この

2進数10|1111|1010を


2進数10=10進数2=16進数2

2進数1111=10進数15=16進数f

2進数1010=10進数10=16進数A

をつかって

さきほどの対応関係とおなじように

16進数に変換してみると


             🍒2進数 10|1111|1010=


             🍅16進数 2|f|A


とあらわすことができます。」


ソーラー 「簡単に2進数を16進数に変換できちゃった」



アレサ「ここで16進数の仕組みを観察!


16進数2|f|Aは


10進数であらわすと


2×16の2乗+f×16の1乗+A×16の1乗とあらわすことができ


16のn乗(n=1,2,3・・・)単位のお部屋で区切られてるのがわかります。



2進数1011111010は


10進数であらわすと


1×2の9乗+0×2の8乗

+1×2の7乗+1×2の6乗+1×2の5乗+1×2の4乗

+1×2の3乗+0×2の2乗+1×2の1乗+0×2の0乗


となっていて


2のn乗(n=1,2,3・・・)単位で表現されているのがわかります。


つまり


2進数1011111010を


16進数に変換するということは


2のn乗(n=1,2,3・・・)単位のお部屋で区切られているものを


16のn乗(n=1,2,3・・・)=


24のn乗単位のお部屋で区切りなおす


ことをあらわしています。


ですので

16のn乗(n=1,2,3・・・)=24のn乗単位で


2進数1011111010を分割していくと


2進数10|1111|1010=


10進数

1×2の9乗+0×2の8乗|

+1×2の7乗+1×2の6乗+1×2の5乗+1×2の4乗|

+1×2の3乗+0×2の2乗+1×2の1乗+0×2の0乗


10進数

=(1×2+0)×2の8乗|

+(1×2の3乗+1×2の2乗+1×2の1乗+1)×2の4乗|

+(1×2の3乗+0×2の2乗+1×2の1乗+0)×2の0乗


10進数

=(1×2+0)×(24)2

+(1×2の3乗+1×2の2乗+1×2の1乗+1)×21

+(1×2の3乗+0×2の2乗+1×2の1乗+0)×(24)0


ここで

10進数1×2=2進数10

10進数(1×2の3乗+1×2の2乗+1×2の1乗+1)=2進数1111

10進数(1×2の3乗+0×2の2乗+1×2の1乗+0)=2進数1010

より


=2進数10×(24)2

+2進数1111×21

+2進数1010×《(2の4乗)の0乗》

となり


=2進数10×

+2進数1111×

+2進数1010×


ここで

2進数10=16進数2

2進数1111=16進数f,

2進数1010=16進数A

=16進数100

=16進数10

=16進数1


より


=16進数2×16進数100|

+16進数f×16進数10|

+16進数A×16進数1


=16進数200|

+16進数f0|

+16進数A|


=2|f|Aとなります。


よって


2進数10|1111|1010は


16進数表示では


2|f|Aとなるわけです。」





  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます