基礎理論 - 1.基礎理論 - 1.離散数学 - 1.基数

Last Update : January 02 2021 16:00:15

     

a. ビットとバイト

0 または 1 の 2 種類を表せる情報量を 1 ビットという。
1 ビット・・・0 , 1 の2種類の情報
2 ビット・・・00 , 01 , 10 , 11 の4情報
3 ビット・・・000 , 001 , 010 , 011 , 100 , 101 , 110 , 111 の8種類
n ビット・・・2n種類
8 ビット を 1 byte という単位にまとめる。
8ビット・・・28種類 = 256 種類 = 1 byte


【SI接頭辞】

記号 接頭辞   2n 10n 漢数字表記
(命数法)
十進数表記
Y ヨタ yotta 280 1024 一秭(じょ) 1 000 000 000 000 000 000 000 000
Z ゼタ zetta 270 1021 十垓(がい) 1 000 000 000 000 000 000 000
E エクサ exa 260 1018 百京 1 000 000 000 000 000 000
P ペタ peta 250 1015 千兆 1 000 000 000 000 000
T テラ tera 240 1012 一兆 1 000 000 000 000
G ギガ giga 230 109 十億 1 000 000 000
M メガ mega 220 106 百万 1 000 000
k キロ kilo 210 103 1 000
h ヘクト hecto   102 1 00
da デカ deca,
deka
  101 1 0
      20 100 1
d デシ deci   10-1 十分の一(分) 0.1
c センチ centi   10-2 百分の一(厘) 0.01
m ミリ milli   10-3 千分の一(毛) 0.001
μ マイクロ micro   10-6 百万分の一 0.000 001
n ナノ nano   10-9 十億分の一 0.000 000 001
p ピコ pico   10-12 一兆分の一 0.000 000 000 001
f フェムト femto   10-15 千兆分の一 0.000 000 000 000 001
a アト atto   10-18 百京分の一 0.000 000 000 000 000 001
z ゼプト zepto   10-21 十垓分の一 0.000 000 000 000 000 000 001
y ヨクト yocto   10-24 一秭分の一 0.000 000 000 000 000 000 000 001

b. 2 進数・8 進数・10 進数・16 進数

2進数とは、0 と 1 の 2 種類の数字だけを使って、数値を表現する方法をいう。
0 → 1 と数えて その次は 10 と桁上がりする。2 進数の場合、2 の倍数になったとき、桁上がりする。


10進数: 0 1 2 3 4 5 6 7 8 9 10
2進数:011011100 101110111100010011010

このように、数を組み立てる基になる数を基数という。
2 進数の場合は、基数は 2 、10 進数の場合は 10 が基数になる。
n を基数とする数え方を n 進数と呼ぶ。

  • 基数・・・基数とは数体系の基になる値で、数値一桁で数えられる数の個数である。
    各桁の数値はそれぞれ基数のべき乗で表現することができる。
    (例、23,22,21,20)これを各桁の重みという。
  • 基数変換・・・ある進数の数値を別の進数の数値に置き換えること。
  • 10 進数・・・10 を基数とする数の表現方法で、0 から 9 までの10個の数で表す。
  • 2 進数・・・2 を基数とする数の表現方法で、0 と 1 の 2つだけで数を表す。
  • 8 進数・・・8 を基数とする数の表現方法で、0 から 7 の 8つの数字で数を表す。
  • 16 進数・・・16 を基数とする数の表現方法で、0 から 9 の数字と A から F までのアルファベットで数を表す。

2進数8進数10進数16進数
1111
10222
11333
100444
101555
110666
111777
10001088
10011199
10101210A
10111311B
11001412C
11011513D
11101614E
11111715F
10000201610
10001211711
10010221812
10011231913
10100242014

c. 10 進数から n 進数へ

1. 10 進数から 2 進数へ

 整数の場合
これは、対象の10 進数を 2 で割り算を行い、この商が 2 より小さくなるまで繰り返して、余りを右に倒す。
下は、10 進数 37 を 2 進数へ変換する過程を表す。

10TO2.GIF - 2,341BYTES

上記の余りを右へ倒して、100101(2)となる。8進数(8で割り算)と16進数(16で割り算)も同様に行う。

 小数の場合
小数の場合は、対象の10進数を 2 で乗じて整数部を順次取り出す。この処理を小数部が「0」になるまで繰り返す。
0.375(10)を2進数へ変換する場合
0.375×2=0.75
0.75×2=1.5
0.5×2=1.0
よって、上記の太字の部分を上から並べて、0.011(2)となる。
※小数の場合は、必ず変換出来るとは限らない。このことを、無限小数という。例えば、10進数で有限小数を2進数へ変換した場合、必ず有限桁で表現出来るとは限らない。

小数点を含む 10進数から 2進数へ基数変換するには、まず整数部分と小数部分に分けて考える。 整数部分は 2 で割っていく操作、小数部分は 2 を掛けていく操作で変換することができる。 たとえば、10進数 5.625 を 2進数へ基数変換する場合、整数部分と小数部分に分けて計算していく。



 整数部分の基数変換は、2で割り続けるのでいつかは必ず商が 0 となるが、小数部分は、2を掛け続けても .0 とならない場合がある。 例えば、10進数 0.2 を 2進数に基数変換すると、0.2 × 2 = 0.4、0.4 × 2 = 0.8、 0.8 × 2 = 1.6、0.6 × 2 = 1.2、0.2 × 2 = 0.4 ・・・ となり、一番最初の計算と戻ってしまう。 つまり、2進数では、0.001100110011 ・・・ と“0011”が繰り返されるので循環小数(無限小数)になる場合がある。
10 進数の 0.1 や 0.01 等は 2 進数に直すと無限小数になる。

2進小数が有限小数になるのは、乗算結果の小数部が乗算を繰り返す途中で0になる場合だけである。0.5、0.5の1/2の0.25、その1/2の0.125など、またこれらを加算した0.75や0.375などは有限小数となる。


d. n 進数から 10 進数へ

1. 2 進数から 10 進数へ

 2 進数から 10 進数への変換は、桁の重みづけを使って計算する。
 重み付けとは、各桁の値に基数のべき乗をかけて計算することを言う。
 基数が n であれば、桁数の数値に n の 桁数 - 1 の乗じたものを重みづけという。。
 2 進数の 3 桁目の重みづけは 1 に 23-1 をかける。
 たとえば、1011(2) の 2 進数を 10 進数にする場合、

1 0 1 1
1 × 23 0 × 22 1 × 21 1 × 20
8 0 2 1
11


2. 8 進数から 10 進数へ

 8 進数から 10 進数への変換も、桁の重みづけを使って計算する。

1 2 3 4
1 × 83 2 × 82 3 × 81 4 × 80
512 128 24 4
668

3. 16 進数から 10 進数へ

 16 進数から 10 進数への変換も、桁の重みづけを使って計算する。

1 A C 4
1 × 163 10 × 162 12 × 161 4 × 160
4096 2560 192 4
6852

e. n 進数から m 進数へ

1. 2進数から8進数

 2進数の桁を右から3桁 (3ビット) づつに区切り、その3桁を8進数一桁に直す。

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1
3 7 7
377(8)

2. 2進数から16進数

 2進数の桁を右から4桁 (4ビット) づつに区切り、その4桁を16進数一桁に直す。

1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1
F F
FF(16)

3. 8進数から2進数

 8進数の1桁を3桁の2進数に変換する。3桁に満たない場合は左に0をつけて3桁にする。

231(8)
2 3 1
1 0 0 1 1 0 0 1

1 0 0 1 1 0 0 1

4. 16進数から2進数

 16進数の1桁を4桁の2進数に変換する。4桁に満たない場合は左に0をつけて4桁にする。

A8(16)
A 8
1 0 1 0 1 0 0 0

1 0 1 0 1 0 0 0

・8進数1桁は、2進数3桁で表現される。
・16進数1桁は、2進数4桁で表現される。


f. 2 進数の四則演算

 2進数の計算もまた、10進数と同じように行うことが出来ます。違いは10でなくて、2になったら桁が上るというところだけです。1よりも大きくなったら桁が上る。
2進数では2×2の4パターンしかない。四則演算を全て合わせてもわずか16パターンになる。2進数は10進数と比べてかなり単純なものとなっている。
 2進数での四則演算の全パターンは以下の通り。 除算は「/」で表している。

加算
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 10

減算
0 - 0 = 0
0 - 1 = -1
1 - 0 = 1
1 - 1 = 0

乗算
0 * 0 = 0
0 * 1 = 0
1 * 0 = 0
1 * 1 = 1

除算
0 / 0 = 不定
0 / 1 = 0
1 / 0 = 不能
1 / 1 = 1


  [ 例題 ] 
  1. 平成30年度秋期 問01  基数変換
  2. 平成27年度秋期 問01  基数変換 ビットシフト
  3. 平成26年度春期 問01  基数変換 無限小数
  4. 平成26年度秋期 問01  基数変換 小数
  5. 平成24年度春期 問01  基数変換
  6. 平成24年度春期 問02  2進数 掛け算
  7. 平成24年度春期 問25  7セグメントLED
  8. 平成22年度春期 問01  基数変換
  9. 平成22年度秋期 問01  基数変換
  10. 平成20年度春期 問02  基数変換 小数


     

www.it-shikaku.jp