LoginSignup
0
1

More than 1 year has passed since last update.

n進数から10進数への変換・10進数からn進数への変換[日本一分かり易い基本情報・応用情報技術者試験対策]

Posted at

n進数から10進数への変換・10進数からn進数への変換

n進数から10進数への変換・10進数からn進数への変換について、具体例付きで解説していきます。コンピュータや基本情報・応用情報午前問題の基礎となる部分です。

基数

コンピュータには、主に2進数が使われているということや、2進数や16進数の数え方については、基礎のため理解しているという前提で話を進める。

ここでは、n進数を10進数へ、n進数を10進数へ変換する方法を説明していく。

n進数から10進数へ

2進数1010を10進数へ

ここでn進数から10進数に変換する際の公式的なものを紹介。

1000の位 100の位 10の位 1の位 . 小数第一位 小数第二位 少数第三位
n進数 1 0 1 0 . 0 0 0
n進数への乗数 n⁰ n∖1 n²∖1 n³∖1

n進数を10進数へ変換する際は、上の表のように桁に合わせて数字をかけていき、それぞれの積を全て足し合わせる。そうするとその数は10進数になっている。

したがってこの問題では

0(1の位)*2⁰+1(10の位)*2¹+0(100の位)*2²+1(1000の位)*2³

=0+2+0+8=10

となる。よって、2進数1010を10進数へ変換すると10になる。

表ではn進数への乗数をn⁰などとしているように、8進数の場合はnに8が入る。その後は同じように積を求め、全て足し合わせれば10進数の値が出る。

また小数点も出てくる値では、表のように分数をかける必要がある。その後積を求めて足し合わせていくことは同じだが、小数部と整数部は分けて計算しなければならない。例えば、整数部で14、小数部で2が出た場合、10進数に直すときは

14.2

となる。

10進数からn進数へ

10進数をn進数へ変換する方法は、二通りあるが、ここでは一通りのみ紹介する。

10進数11.25を2進数へ

10進数からn進数への変換も、整数部と小数部を分けて考える。
10進数からn進数へ変換する際の公式的なものはこれ。(整数部)
ここで、aは最初の10進数、a,b,cは商を表し、d,e,fはあまりを表す。

x ÷ n=a・・・d
=a ÷ n=b・・・e
=b ÷ n=c・・・f

このとき、10進数xを2進数に変換するとfedとなる。(かけている訳ではなく、隣り合わせで書いているだけ。 101 などのような感じ。)

つまり、最初の10進数を、変換する進数で商が0になるまで割り続け、あまりを最後から順に書いたものがn進数、ということである。

続いて、小数部のn進数の求め方。
ここで、xは最初の10進数、a,b,cは積を表す。

x×n=a
a
×n=b
b×n=c
c
×n=・・・(積が1になったら終了)

このとき、10進数xを2進数に変換するとabcとなる。
こちらは、2進数にする際は最初から順に書いていく。また、積が1を超えた場合、nにかける際は整数部を0として計算し、2進数で表す際はそのまま1をかく。

どういうことか詳しく説明。

例えば、10進数0.375を2進数に直す際、

0.375×2=0.75
0.75
×2=1.5

式の途中で、積が1を超える。

このとき次は、

1.5×2= ではなく
0.5
×2= で計算する。

したがって、まとめると次のようになる。

0.375×2=0.75
0.75
×2=1.5
0.5×2=1

このとき、2進数に直す際はそのまま積の値を取り出すので、10進数0.375を2進数に直すと、0.011になる。ということである。

それでは続いて、10進数11.25を2進数へ変換していく。

まず整数部から求める。

11÷2=5・・・1
5÷2=2・・・1
2÷2=1・・・0
1÷2=0・・・1

より、1011である。

小数部は、

0.25×2=0.5
0.5×2=1

したがって、0.01である。

小数部と整数部を足し合わせれば良いので、10進数11.25を2進数に変換すると

1011.01

となる。

n進数の変換についてはここまで。2進数から8進数に、16進数から2進数にする方法などもあるが、必ず理解しておかなければならない訳ではない。n進数から10進数、10進数からn進数へ変換する方法さえ知っていれば、計算量が増えるだけで解くことは出来る。


Twitterフォローよろしくお願いします


0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1