talosのプログラミング教室

【基本・応用情報技術者】基数変換(10進数から2進数/8進数/16進数への変換)

スポンサーリンク

こんにちは。たろすです。

今回は基数変換(10進数から2進数/8進数/16進数/n進数への変換)について説明します。

2進数/8進数/16進数/n進数から10進数への変換についてはこちらで説明しています。

talosta.hatenablog.com


整数部の変換

10進数 ⇒ 2進数

10進数からn進数に変換する方法です。

例えば52を2進数にします。

f:id:talosta:20210218224002p:plain

2で割れなくなるまで割り続け、割れなくなったらあまりを順に読み上げるだけです。

つまり52を2進数にすると「110100」になります。

10進数 ⇒ 8進数

2進数のときは2で割り続けましたが、8進数のときは8で割り続けます。

f:id:talosta:20210218224019p:plain

375を8進数にすると「567」になります。

10進数 ⇒ 16進数

16進数のときは16で割り続けます。

f:id:talosta:20210218224030p:plain

924を16進数にすると「39C」になります。

※ 16進数ではA⇔10、B⇔11、C⇔12、D⇔13、E⇔14、F⇔15と対応しています。併せて覚えておきましょう。

小数部の変換

小数部は整数部とは別で計算する必要があります。

例えば0.625を2進数にするときは以下のように計算します。

f:id:talosta:20210218224856p:plain

0.625は2進数にすると「0.101」になります。

8進数では8、16進数では16を小数部が0になるまでかけ続ければOKです。

おわりに

今回は10進数からn進数への変換を説明しました。

基本情報技術者試験応用情報技術者試験ではよく問われるのでしっかり覚えておきましょう。

2進数/8進数/16進数/n進数から10進数への変換についてはこちらで説明しているので、よかったらこちらも読んでみてください。

talosta.hatenablog.com