数字についてもう少し触れておきます。
「●進数」という表現があります。
普段私たちが使っている数字は、「10進数」です。
1~9までを使って表現し、「10」になろうとすると桁上がりするからです。
つまり、二文字を使わないと表現できないということです。
では、「2進数」はいくつで桁上がりするでしょうか。
2になろうとすると桁上がりします。
例えば、「2進数」表記では、以下のように表現します。
0・・・0
1・・・1
2・・・10
3・・・11
4・・・100
5・・・101
同じように・・
「4進数」表記では、
0・・・0
1・・・1
2・・・2
3・・・3
4・・・10
5・・・11
「8進数」表記では、
0・・・0
1・・・1
2・・・2
3・・・3
4・・・4
5・・・5
6・・・6
7・・・7
8・・・10
9・・・11
10・・・12
なんとなく分かりましたか?
最後に「16進数」表記を見てみます。
16進数では、「0~9」、と「A~F」で表します。
先ほどと同じように16を表現しようとすると桁上がりします。
16進数だけちょっとややこしいですね。
これらの「●進数」の問題は、「2進数から8進数への変換」や「16進数から→2進数への変換」などが問題にでます。10進数(私達が普段使っている進数)や2進数に戻したりして変換してみましょう。
<例1>
「10進数では13。では16進数ではいくつになるか?」
答え⇒「D」 みたいな。
<例2>
2進数 ⇒111
10進数 ⇒(4×1)+(2×1)+(1×1)=7
8進数 ⇒7
16進数 ⇒7
2進数は簡単で、
1ケタ目:2の1乗
2ケタ目:2の2乗
3ケタ目:2の4乗
4ケタ目:2の8乗
を計算します。
最後に合計すればOKです。
<例3>
2進数 ⇒11111111
10進数 ⇒255
(1+2+4+8+16+32+64+128=255)
<例4>
2進数⇒1100
10進数⇒12(4+8)
16進数⇒C
※16進数は「10」が「A」になると覚えましょう。
<例5>
16進数⇒3A
10進数⇒(16×3)+(1×10)=58
↓少しだけ難しい
・小数点の「●進数」の表し方
小数点から左にいくにつれて、1倍、2倍、4倍、8倍と”重み”がありましたね。
その逆で、小数点から右にいくにつれて、1/2倍、1/4倍と表現します。
2進数⇒0.1
10進数⇒1/2
2進数⇒0.11
10進数⇒1/2+1/4=3/4
2進数⇒0.111
10進数⇒1/2+1/4+1/8=7/8
8進数表記の「0.01」なら、
「1/16」となります。
★計算するときは、「小数」を無理に使うのはあまりオススメできません。計算するときは「分数」がよいです。といいうのも、少数で計算すると途中で割り切れないときが出てきたり、解答欄も「分数」から選ぶようになっていたりするからです。計算は分数で!
さて、次の問題はどうでしょうか。
10進数⇒0.375
2進数⇒0.011
(ややこしい・・)
上のように「小数点のある●進数を、2進数にしろ~」と言われたら、小数点が「0」になるまで、ひたすら「2」をかけ続けてください。そして、整数の部分だけ抜き出していきます。
※8進数に変換せよといわれたら、ひたすら8をかける。
0.375×2=0.75 ⇒0
0.75×2=1.5 ⇒1
0.5×2=1.0 ⇒1
⇒0.011
最初は「0.」となります。
小数点ですから、何進数にしようが、「0.~」から始まるはずです。
★もし不安でしたら、逆の計算を(2進数→10進数)してみましょう。
<0.011>
0×1/2=0
1×1/2×1/2=1/4
1×1/2×1/2×1/2=1/8
↑大丈夫そうですね。
もうひとついきます。
10進数・・・0.3
8進数・・・
0.3×8=2.4
0.4×8=3.2
0.2×8=1.6
0.6×8=4.8
0.8×8=6.4
0.4×8=3.2
え~・・・
0.231463・・・と続くみたいです。
「0.4×8」が2回でてきたので、どうやら永遠に続くようです。(笑)
このように、割り切れない少数を「無限小数」といいます。
↑テストにでます
逆に、割り切れる少数なら「有限小数」といいます。
『無限小数はどれか?』
『有限小数はどれか?』
と聞かれたら、4択を片っ端から解いていくしかないです。
<例7>
10進数⇒1.6875
2進数⇒
0.6875×2=1.375
0.375×2=0.75
0.75×2=1.5
0.5×2=1.0
⇒1.1011
また、難しいのいきます。(笑)
<例8>
2進数⇒1100.01
8進数⇒14.2
まず、2進数から8進数に変換したいなら、2進数を3ケタずつ区切ってください。
もちろん、整数と少数は区別します。
そうすると、「001」「100」.「010」となります。
両端の空白は0で埋めると分かりやすいです。
次に、3桁ずつを2進数で計算します。
001→1
100→4
010→2
⇒答え:14.2
●16進数→10進数への変換
16進数⇒3A.5C
10進数⇒(16×3)+(1×10)+(5/16)+(12/256)
=58+23/64
=3735/64
★有限小数と無限小数
○進数にしたときに割り切れるのが、「有限少数」。
○進数にしたときに割り切れないのが、「無限少数」。
↑さっきも述べましたが。。
10進数⇒0.3
これを8進数にしようとすると・・
0.3*8=2.4
0.4*8=3.2
0.2*8=1.6
0.6*8=4.8
0.8*8=6.4
0.4* ・・・と無限ループになります。無限小数です。
10進数⇒0.5
これを8進数にしようとすると・・
0.5*8=4.0
割り切れましたから、これは有限小数です。
最後に!
●次の式は何進法で表現しているか。
「131-45=53」
つまり、何進数で計算したらこうなるかという問題です。
・・難しいですね。
「45+53=131」で考えてみましょう。
最後の1ケタに注目します。
「5+3=1」になるのはどれか?
8になると、繰り上がって、1の位が1になってしまう。
ということは、「7進数」ということ。
●10進数
5+3=8
●6進数
5+3=12
(1の位が2になるから違うという)
●7進数
5+3=11
●8進数
5+3=10
以上
長かったですね(笑)
yamatunes