×

tomoロゴ tomo

【高校情報】演算誤差とは?2進数小数のしくみをわかりやすく解説

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。今日はコンピュータの演算誤差についてお話しするわ。

 

コンピュータの演算誤差(えんざんごさ)とは??

コンピュータで計算をすると、正しいはずの計算なのに誤差が出ることがあるの。

例えばこんな現象を見たことはないかしら?

0.1 + 0.2 = 0.30000000000000004

えっ?

0.3じゃないの?

と思うわよね。

 

 

実はこれ、コンピュータのバグではないの。

コンピュータが数を2進数で扱っていることが原因なのよ。

 

このように本来の値とズレが生じることを、

演算誤差(えんざんごさ)

というわ。

 

今回は

をわかりやすく説明するわね。

 

コンピュータは2進数で数を扱う

私たちが普段使っている数は10進数よね。

例えば

0.875

これは

$$0.875 = 0.5 + 0.25 + 0.125$$

つまり

$$0.875 = \frac{1}{2} + \frac{1}{4} + \frac{1}{8}$$

これを2の累乗で書くと

$$0.875 = 2^{-1} + 2^{-2} + 2^{-3}$$

だから

$$0.875 = 0.111_{(2)}$$

つまり2進数で正確に表せる数ね。

 

小数は2進数で表せないことがある

ところが、すべての小数が2進数で表せるわけではないの。

例えば

0.3

これを2進数にすると

$$0.3_{(10)} = 0.0100110011…$$

のように永遠に続く小数になってしまうわ。

 

これは10進数でいう

1 ÷ 3 = 0.333333...

と同じ現象よ。

つまり2進数では割り切れない数なの。

 

コンピュータは桁数が有限

でもコンピュータの中では桁数は無限にはできない

だからある桁で打ち切る必要があるのよ。

例えば小数点以下8桁までとすると

$$0.01001100_{(2)}$$

のようにするの。

これを

丸め処理

というわ。

 

2進数を10進数に戻してみる

この値を10進数に戻すと

$$0.01001100_{(2)}$$

$$= 0\times2^{-1} + 1\times2^{-2} + 0\times2^{-3} + 0\times2^{-4}$$

$$+1\times2^{-5} + 1\times2^{-6} + 0\times2^{-7} + 0\times2^{-8}$$

計算すると

$$0.296875$$

になる。

 

元の値との誤差

元の値は

0.3

だったわよね。

でもコンピュータの中では

0.296875

として扱われているの。

つまり誤差が生まれているということね。

 

演算を重ねると誤差は広がる

さらに問題なのは、計算を繰り返すと誤差が少しずつ広がることなの。

これを誤差の伝播というわ。

だからコンピュータの計算では

といった問題が起こるのよ。

 

まとめ

 

イリエダ
イリエダ
コンピュータは正確に計算しているのに、数の表し方の違いで誤差が生まれるなんて不思議よね。

 

でもこの仕組みを知っておくと、

などの理解がぐっと深まるの。ぜひ覚えておいてね。

 

それじゃあ!

【高校情報】クロック周期・クロック周波数の計算問題まとめ6選

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

今日は「クロック」に関する計算問題を、すっきり整理していきましょう。

クロックの問題は難しそうに見えるけれど、実は全部で6パターンしかないの。

 

 

  1. クロック周期 からクロック周波数
  2. クロック周波数 からクロック周期
  3. CPU実行時間を求める
  4. 必要クロック数を求める
  5. 1秒間に処理できる命令数を求める
  6. 一定時間で処理できる命令数を求める

この6パターンを理解してしまえば、 高校情報Ⅰのクロック計算問題はほとんど解けるようになるわ。

一つずつ落ち着いて見ていきましょうね。

 

①:クロック周期 からクロック周波数を求める計算問題

クロック周期が与えられているとき、クロック周波数は次の式で求められるわ。

$$
f = \frac{1}{T}
$$

 

つまり、周期の逆数が周波数になるの。

 

解き方

$$
f = \frac{1}{0.002}
$$

$$
f = 500
$$

答え:500 Hz

②:クロック周波数 からクロック周期を計算する問題

今度は逆に、クロック周波数から周期を求める計算問題ね。

$$
T = \frac{1}{f}
$$

 

まず GHz を Hz に直すわ。

$$
2GHz = 2 \times 10^9 Hz
$$

周期は

$$
T = \frac{1}{2 \times 10^9}
$$

答え:0.5ナノ秒

③:CPU実行時間を求める計算問題

処理にかかる時間は、次の公式で求められるわ。

$$
実行時間 = \frac{クロック数}{クロック周波数}
$$

$$
実行時間 = \frac{6000}{3 \times 10^9}
$$

$$
= 2 \times 10^{-6}
$$

答え:0.000002秒

④:必要クロック数を求める計算問題

実行時間とクロック周波数が分かれば、必要なクロック数も求められるわね。

$$
クロック数 = 実行時間 \times クロック周波数
$$

 

$$
クロック数 = 2 \times 10^9
$$

答え:20億クロック

 

⑤:1秒間に処理できる命令数を求める計算問題

CPUの性能を考えるときによく出る問題ね。

$$
命令数/秒 = \frac{クロック周波数}{1命令に必要なクロック数}
$$

$$
命令数 = \frac{2 \times 10^9}{0.5}
$$

$$
= 4 \times 10^9
$$

答え:40億命令/秒

⑥:一定時間で処理できる命令数を求める計算問題

最後は少しだけ発展した問題です。

$$
命令数 =
\frac{クロック周波数 \times 時間}{1命令のクロック数}
$$

$$
命令数 =
\frac{3 \times 10^9 \times 10}{3}
$$

$$
= 10 \times 10^9
$$

答え:100億命令

 

イリエダ
イリエダ

クロックの計算問題は、たくさん種類があるように見えるけれど、実はこの6パターンに整理できるの。そして覚える公式はほんの少し。

 

クロック周期とクロック周波数の関係。

それからCPUの処理時間の式。

この2つを理解しておけば、クロック問題はほとんど怖くないわよ。

 

それじゃあね!

【高校情報】クロック数・クロック信号・クロック周波数の違いをわかりやすく解説!

 

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

今日はクロック数、クロック信号、それからクロック周波数について勉強してみましょうか。

これらの言葉、似ているけれど実はそれぞれ違う意味を持っているの。

 

クロック信号・クロック数・クロック周波数の違い

イリエダ
イリエダ
コンピュータはたくさんの装置でできているの。だから、それぞれの装置がバラバラに動いてしまうと困るのよね。

 

だから、CPUやメモリなどの装置がうまく連携して動くためには、

動作のタイミングをそろえる必要あるわね。

そこで使われるのが

クロック信号

なのよ。

クロックという名前は「時計(clock)」から来ているのよ。コンピュータは、時計の秒針のように一定のリズムで動いているからね。

 

クロック信号とは??

クロック信号とは、

コンピュータの動作のタイミングを決める合図の信号

のこと。

イメージとしては、

のようなものね。

CPUは

「カチ」
「カチ」
「カチ」

という一定のリズムに合わせて処理を進めていくの。

 

クロック数とは??

クロック数とは、

ある処理を行うために必要なクロック信号の回数

のこと。

たとえば

というように、処理によって必要なクロック数は変わるわ。

つまり、

その処理が何回合わせたタイミングのリズムが必要なのか

を表しているのね。

 

クロック周波数とは??

クロック周波数とは、

1秒間にクロック信号が何回発生するか

を表したものね。

単位はHz(ヘルツ)

 

例えば

1GHzのCPU

の場合、1秒間に10億回クロック信号が出ていることになるわ。

つまり、

クロック周波数が高いほど、コンピュータの処理は速くなるってこと。

それだけ、1秒間あたりの処理する回数が多いってことだからね。

 

クロック数・クロック信号・クロック周波数の違いの覚え方

えっ、まだ違いがピンと来てない??

 

イリエダ
イリエダ
メトロノームで考えると、とても分かりやすいわよ。

 

 

 

 

クロック信号をメトロノームの

「カチ」

という1回の音だと考えてみましょう。

 

すると、それぞれの意味はこうなるの。

 

つまり、

・クロック信号はリズムの1拍
・クロック数は曲を演奏するのに必要な拍数
・クロック周波数はリズムの速さ

という関係になるのよ。

まとめ

オッケー、最後にクロック数・クロック信号・クロック周波数の違いを表にまとめておきましょう。

 

用語 ポイント 覚え方
クロック信号 CPUの動作タイミングを作るリズム メトロノームの1回の「カチ」
クロック数 処理に必要なクロック信号の回数 曲に必要な「カチ」の数
クロック周波数 1秒間に発生するクロック信号の回数 1秒間の「カチ」の回数

 

リズム(クロック信号)があって、そのリズムが1秒間に何回鳴るかがクロック周波数。そして、そのリズムを何回使って処理するかがクロック数。

 

イリエダ
イリエダ
こう考えると、すっきり整理できるわね。

 

それじゃあ!

【高校情報】標本化周期・標本化周波数の違いをわかりやすく解説

 

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。
今日は「標本化」と「標本化周期」と「標本化周波数」の違いを、落ち着いてゆっくり整理していきましょう。

 

音楽や声などのアナログ信号をコンピュータで扱うためには、その信号をデジタル化する必要があるわ。

そのときに行われる大切な操作が、標本化ね。

今回の

はどちらも「標本化」に関するキーワードなの。

 

えっ、標本化忘れちまった???

そんなときはよかったら「標本化・量子化・符号化の違い」を復習してみて。

 

標本化周期(ひょうほんかしゅうき)とは??

まずは標本化周期からね。

これは、

標本化する時間の間隔

のことを指すわ。

 

つまり、

どれくらいの時間ごとにデータを取り出すか

を表しているのね。

単位は[s](秒)

たとえば

といったように、標本化する間隔を示しているわ。

もちろん、この標本化周期が短いほどより細かく音を記録できて、元のアナログ波形に近い音を再現できるのよ。

 

標本化周波数(ひょうほんかしゅうはすう)とは??

一方で、標本化周波数は

1秒間に何回標本化するか

を表したものよ。

単位はHz(ヘルツ)

たとえば

という意味になるわ。

 

ちなみに、CDの音楽は

44,100Hz(44.1kHz)

で標本化されているのよ。

かなり細かく音を記録していることがわかるでしょう?

 

標本化周期と標本化周波数の違い

ズバリ言っちゃうわ。

標本化周期と標本化周波数は、

逆数の関係にあるわ!

これが違いね。

 

つまり

$$
標本化周波数 = \frac{1}{標本化周期}
$$

という関係になるの。

 

たとえば、標本化周期が

$$
0.001 \text{秒}
$$

だったら、標本化周波数は

$$
\frac{1}{0.001} = 1000
$$

になるわ。

 

標本化周期と標本化周波数の違いの覚え方

 

イリエダ
イリエダ
まだ少しイメージしづらいかしら? じゃあ、A君が旗揚げをしている様子を想像してみて。

 

 

 

A君が赤い旗を

「よいしょ、よいしょ」

と一定のリズムで上げているとしましょう。

このとき、

旗を上げる間隔標本化周期

 

たとえば、

この旗を上げる時間の間隔が周期になるの。

 

一方で、標本化周波数1秒間に旗を何回上げているかを表すわ。

たとえば

という感じね。

 

つまり

こう考えると、違いがスッと理解できるでしょう?

 

まとめ

最後にポイントを整理しておきましょう。

そしてこの2つは

逆数の関係

になってるわね。

 

イリエダ
イリエダ
標本化周期と標本化周波数の違い、きれいに整理できたかしら? デジタル信号の世界は、まだまだ奥が深いのよ。次も一緒に学んでいきましょうね。

 

それじゃあ、またね。

【高校情報】標本化・量子化・符号化の違いと覚え方をわかりやすく解説

 

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。今日は、デジタル信号の基本、「標本化」「量子化」「符号化」についてやさしく解説していくわね。

 

アナログの音や映像をコンピュータで扱うためには、データをデジタル化する必要があるの。

そのときに行う大事なステップが3つあるわ。

それが標本化量子化符号化よ。

この3つの流れを順番に見ていきましょう。

 

標本化(ひょうほんか)とは??

標本化とは、

アナログ信号を一定の時間ごとに取り出すことよ。

音や映像などのアナログ信号は、本来は時間とともに連続的に変化しているわ。

そこで、その信号を一定の時間間隔で区切って、値を取り出していくの。

この操作を標本化(サンプリング)というのよ。

 

例えば映画では、一般的に1秒間に24枚の画像が使われているわ。

つまり、1秒間の動きを24回に分けて撮影しているということ。

これは「1秒間に24回、標本化している」と考えることができるの。

 

イルカが海を泳ぐ様子を撮るとして、1秒ごとに何回も写真を撮って記録するイメージね。

この回数を標本化周波数(サンプリング周波数)と呼ぶわ。

 

量子化(りょうしか)とは?

次に量子化よ。

標本化では「いつの値を取るか」を決めたけれど、量子化では

信号の大きさ(電圧)を段階的な値に丸める

の。

アナログ信号は本来、非常に細かい値をとるわ。

でもコンピュータでは無限の値を扱えないので、

決められた段階の値に近いものへ丸めるのよ。

これが量子化よ。

 

例えば、物差しで長さを測る場面を想像してみて。

本当は「12.345cm」かもしれないけれど、物差しの目盛りが1mm単位なら

12.3cm や 12.4cm

のように、近い値に合わせて測るわよね。

このように、細かい値を段階に合わせて丸めることが量子化なの。

量子化するときに使う段階の数は、量子化ビット数によって決まるわ。

例えば

・8bit → 256段階
・16bit → 65536段階

のようになるのよ。

 

符号化(ふごうか)とは??

最後が符号化よ。これは、

量子化によって得られた数値を、2進数(0と1)で表現すること

ね。

コンピュータは0と1しか理解できないから、データをこの形に変換する必要があるの。

 

音声データなどでは、この方法を

PCM(パルス符号変調)方式

と呼ぶこともあるわ。

 

このプロセスを、言葉の翻訳に例えてみましょう。

例えば、日本語で書かれた本を英語に翻訳するように、

量子化された数値を「0」と「1」の言葉に変える

それが符号化なのよ。

 

標本化・量子化・符号化の覚え方

オッケー、標本化・量子化・符号化の違い、しっくりきたからしら??

最後に、3つの違いを覚えるコツを教えるわね。

 

標本化の覚え方

昆虫の様子を一定の間隔で写真に撮る標本家(ひょうほんか)

 

量子化の覚え方

猟師(りょう)が鹿(しか)の大きさを「小」「中」「大」の3段階で判断する

 

符号化の覚え方

富豪家(ふごうか)が重要なメッセージを0と1に変換して送る

 

このイメージを覚えておけば、

標本化 → 量子化 → 符号化

の違いが自然に理解できるわ。

 

イリエダ
イリエダ
これで、デジタル信号の基本はばっちりね。次はもっと面白いことを勉強していきましょう!

 

それじゃあ、またね!

【高校情報】半加算回路の真理値表をわかりやすく解説!

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

今日は半加算回路についてお話しするわ。

ちょっとだけ本格的なテーマよ。でも大丈夫。ちゃんと順番にいくから安心してね。

 

半加算回路(はんかさんかいろ)とは??

半加算回路とは、

2進数の1ビットどうしを足し算する回路

のことよ。

コンピューターは「0」と「1」しか扱えない。

でもその0と1を足し算することで、大きな計算ができるようになるの。

その一番シンプルな足し算回路が、半加算回路なのよ。

 

まずは1ビットの足し算を見てみましょう

2進数の足し算はこうなるわ。

A B 結果
0 0 0
0 1 1
1 0 1
1 1 10

最後を見て。

1 + 1 = 10

答えが2桁になるのよ。

 

つまり、2進数の足し算の結果は

の2つに分かれるということ。

 

ってことで、2つのA・Bという入力に対して、半加算回路の出力は次の2つがあるわ。

 

半加算回路の真理値表

では、実際の半加算回路を見てみましょう。

 

 

繰り上がりの「C」

この回路、よく見て。

上のAND回路から出ているのがC(繰り上がり)よ。

これはもうわかるわね?

両方が1のときだけ1になる。

 

下の桁のS

じゃあ下の出力S(下の桁)はどうなっているのかしら?

真理値表で確認してみましょう。

A B S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

どう?

これ、さっきの足し算と同じでしょう?

ほら、ちゃんと足し算になっているの。

 

そしてここが今日の一番大事なところ。

この回路、使っているのは、

だけ。

つまり、

今まで学んできた3つの基本回路だけで、足し算ができる

ということよ。

 

コンピューターは特別な「計算回路」を持っているわけじゃない。

AND・OR・NOTを組み合わせて、

計算そのものを作っているの。

 

フフッ、すごいでしょう?

論理回路が、ついに「算数」になった瞬間よ。

 

イリエダ
イリエダ
次は桁が増えたらどうなるか、一緒に見ていきましょう。

NOT回路とは?仕組み・真理値表・回路記号をわかりやすく解説

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

フフッ、今日はNOT回路についてお話しするわ。

AND回路OR回路と違って、ちょっと不思議な回路なのよ。

でも安心して。あたしがわかりやすく説明するわね。

 

NOT回路(ノットかいろ)の基本とは?

NOT回路は、デジタル論理回路の中でもとてもシンプルな回路よ。

入力が「1」なら出力は「0」
入力が「0」なら出力は「1」

つまり、

入力をひっくり返す回路なの。

オンならオフに。オフならオンに。

まるで「あまのじゃく」みたいでしょう?

 

NOT回路の回路記号

NOT回路の記号はこんな形よ。

 

 

三角形の先に小さな丸がついているでしょう?

この丸(バブル)が「反転」を意味しているの。

この記号はインバータ(反転器)とも呼ばれるわ。

 

NOT回路の真理値表

真理値表で見ると、さらにわかりやすいわよ。

入力 A 出力 L
0 1
1 0

見ての通り、入力と出力が逆になっているだけなの。

シンプルでしょう?

 

直感的に考えてみましょう

例えば、ライトを消すスイッチがあると考えてみて。

スイッチがオン(1)になると、ライトは消える(0)。

スイッチがオフ(0)なら、ライトは点く(1)。

普通とは逆の動きをするスイッチ。

それがNOT回路なのよ。

 

まとめ

NOT回路は、

数式で書くなら、

L=¬A

ね。

ひとつの入力を反転する、もっとも基本的な回路。

 

イリエダ
イリエダ
AND・OR・NOT。この3つがそろえば、どんな論理も作れるのよ。コンピューターってすごいでしょう?

 

それじゃあね。また一緒に勉強しましょう~!

【高校情報】3分でスッキリ!OR回路とは何かわかりやすく解説

 

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

フフッ、今日はOR回路についてお話しするわ。

最初に、OR回路ってなんのこっちゃって感じだと思うけれど、あたしがバッチリ解説するから安心してね。

 

OR回路(オアかいろ)の基本とは?

OR回路は、コンピューターのデジタル論理回路の一種。

2つ以上の入力があって、それらのどれか1つでも「1(オン、電流が流れている状態)」があれば、出力が「1」になる

という特徴を持っているわ。

つまり、

どれか1つでもオンになればオッケーよ!

っていう回路ね。

 

OR回路を構成する記号はこんな感じで、ちょっとお洒落でしょう?

 

 

これはORゲートと呼ばれるものなの。

 

そして、真理値表

これは入力に対する出力がどうなるかを表している表よ。

数学のように苦手かもしれないけど、これを見れば一目瞭然だから心配しないで。

 

入力 A 入力 B 出力 L
0 0 0
0 1 1
1 0 1
1 1 1

 

見ての通り、どちらかの入力が「1」なら、出力も「1」になるわよ。

 

じゃあ、どうやって直感的に理解するかしら?

フフッ、みんなと一緒に考えてみましょう。

 

例えば、ライトを付けるためのスイッチが2つあると考えてみて。この2つのスイッチのどちらを押してもライトが点く仕組みがOR回路なの。

つまり、Aを押したら点くし、Bを押しても点くわ。そしてどっちも押したら、もちろん点き続けるの!

こんな感じで簡単に理解できるから、ちゃんと押さえておくのよ。

 

イリエダ
イリエダ
次はAND回路についても勉強していくわよ。楽しみね!

 

それじゃあね!また会いましょう~!

3分でわかる!AND回路の基本と仕組みをわかりやすく解説

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。今日はAND回路をわかりやすく勉強していくわよ!

 

AND回路について詳しく知りたいと思っている?

では、一緒に学んでいきましょう。

 

AND回路(アンドかいろ)の基本とは?

AND回路はデジタル回路で欠かせないロジックゲートのひとつよ。

これを使えば入力が二つとも「1」の場合だけ出力が「1」になるという仕組みなの。

 

AND回路のシンプルな仕組み

AND回路は二つの入力が必要よ。

その入力をAとBとして、出力をLとした場合の式は

L=A∧B

これは二つの入力が「1」なら出力も「1」という意味ね。

 

AND回路の回路記号

AND回路は次のような図記号で表されるわ。

 

 

左側の2本の線が入力AとB。

右側の1本の線が出力Lよ。

このDのような形が「AND」を表す記号なの。

回路図では、この記号を論理ゲートと呼ぶわ。

 

AND回路の真理値表

真理値表はAND回路の動作を表す基本的な方法よ。

A B L (A AND B)
0 0 0
0 1 0
1 0 0
1 1 1

 

まとめ

AND回路は、

つまり、

回路記号は「形」で表したもの。
真理値表は「表」で動きを表したもの。
数式は「式」で論理を表したもの。

同じAND回路を、図・式・表の3つの視点で説明しているのよ。

見方が違うだけで、中身は同じ。

 

イリエダ
イリエダ
コンピューターの世界では、ひとつの仕組みをいろんな形で表せるの。次はOR回路勉強しましょう。

 

そんじゃあね!

真理値表とは?書き方をわかりやすく解説【高校情報】

 

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

今日は「真理値表」って何?というところから始めるわね。

ここを理解すると、コンピューターの計算の仕組みが一気に見えてくるのよ。

 

真理値表(しんりちひょう)とは?

一言でいうと、

入力と出力の関係をすべて書き出した表

よ。

 

 

 

コンピューターは「0」と「1」だけで動いているわよね。

だから、

入力が0や1のとき、出力がどうなるかを全部並べて確認するの。

それが真理値表。

 

例:入力が1つの場合

入力が1つなら、組み合わせは2通りね。

入力 出力
0
1

 

入力が2つの場合

じゃあ、入力がAとBの2つある場合は??

組み合わせは、

全部で4通り

 

A B 出力
0 0
0 1
1 0
1 1

 

これを全部書き出す。

それが真理値表。

 

なぜ必要なの?

コンピューターは、

必ずルール通りに動く

からよ。

だから、

どんな入力でも結果が決まっていないといけない。

その「ルールの一覧」が真理値表なの。

 

真理値表の書き方

イリエダ
イリエダ
ここまでわかれば、次はいよいよ実際に真理値表書いてみましょうか。準備はいい?

 

入力の数を確認する

入力がn個なら、組み合わせは

2ⁿ通り

になるわ。

例:

 

0と1の組み合わせを順番に書く

入力が2つ(AとB)の場合:

A B
0 0
0 1
1 0
1 1

 

ポイントは、

2進数の順番で並べること。

00 → 01 → 10 → 11

と数えていくのよ。

 

ルールに従って出力を書く

例えばAND回路なら。

「両方1のときだけ出力が1になる」

だから、

A B 出力
0 0 0
0 1 0
1 0 0
1 1 1

これで完成よ。

 

よくあるミス

特に「8通りなのに6通りしか書いてない」ミスは多いわよ。

 

イリエダ
イリエダ
真理値表は「2進数を数えるだけ」なの。難しそうに見えるけど、やっていることはシンプルよ。次はAND回路詳しくみていきましょう。

 

そんじゃあね!

【高校情報】文字コードとは?ASCII・JIS・Unicodeをわかりやすく解説

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。

 

今日は高校「情報」でよく出てくる

文字コードとは何か?

を、わかりやすく解説していくわね。

 

文字コードとは何もの??

まず一言でいうと、

文字を数字に変換するルール

これが文字コードよ。

 

コンピューターの中では、

もすべて0と1で表されているの。

 

 

つまり、

「あ」も「A」も「☆」も全部「数字」なのよ。

 

なぜ文字を数字にする必要があるの?

コンピューターは、

数字(2進数)しか理解できない

からよ。

だから、コンピューターに文字を伝えるときは「A」って伝えるんじゃなくて、

01000001

みたいなAに対応した文字コードを伝えるのね。

文字を対応する数字に変換しているの。

これが文字コード。

 

ASCIIとは?

高校情報でまず出てくる文字コードは、

ASCII(アスキー)

ね。

これは、

を7ビットで表すルールよ。

例えば、「A」だったらこんな感じ。

 

A = 65(10進数)
   = 01000001(2進数)

 

JIS8ビットコードとは?

ASCIIをもとに、

日本語の片仮名などを追加したもの

がJIS8ビットコード。

8ビットだから、

2⁸ = 256種類

の文字を表せるわ。

 

でもね。

漢字は何万字もあるの。

1バイト(8ビット)では足りないのよ。

 

日本語の文字コード

そこで、日本語を扱うために、

などが作られたの。

 

例えば、平仮名の「あ」は

 

つまり、同じ「あ」でも、文字コードが違えば数字も違うの。

 

ユニコードとは?

注目すべきはユニコードね。

これは、

世界中の文字を統一的に扱うために作られた文字コード

よ。

ユニコードの種類には、UTF-8やUTF-16などがあるわ。

今のインターネットは、ほぼUTF-8よ。

 

文字化けはなぜ起こる?

ここ、テストに出るわよ。

もし、ユニコードで保存した文章をJISコードとして読み込んだらどうなる??

そう、数字の解釈がズレて、

文字化けが起こる

のよ。おそらく、このようなよくわからない文字が誕生するわ。

�
縺ゅ>
繝�繧ケ

そんな文字たちを見かけたら、

文字化け = 文字コードの読み間違い

を疑いましょうね。

 

まとめ

 

イリエダ
イリエダ
文字コードがわかると、「コンピューターは数字で世界を見ている」って実感できるわね

 

そんじゃあね!

【高校数学】浮動小数点数の計算方法をわかりやすく完全攻略!

イリエダ
イリエダ
こんにちは、イルカの妖精イリエダよ。今日は高校数学の「浮動小数点数」について話していくわね。

 

浮動小数点数って聞くと、少し難しそうに感じるかもしれないけど、心配しないで。

わかりやすく解説するから、一緒に勉強していきましょう!

 

そもそも浮動小数点数(ふどうしょうすうてんすう)って何?

まずはイメージからいきましょう。

 

浮動小数点数とは、

大きい数も小さい数も効率よく表せる2進数の指数表現

のことよ。

実はこれ、みんながすでに知っている「科学記数法」と同じ考え方なの。

科学記数法とは、数を「1以上10未満の数 × 10のべき乗」で表す方法のこと。

 

10進数で考えてみよう

たとえば、

1530 = 1.53 × 10³

こんなふうに書けるわよね?

このとき、

という構造になっている。

 

 

 

つまり、

数 = 仮数 × 10の指数乗

なのよ。

 

 

2進数でも同じことをする

コンピューターは10進数ではなく、2進数の世界で動いている。

だから、

数 = 仮数 × 2の指数乗

という形にするの。

 

 

例えば、15.125 を2進数にしてみましょうか。

 

 

まず10進数を2進数に変換するわ。

整数部分:

15 = 1111₂

小数部分:

0.125 = 0.001₂

 

 

だから、

15.125 = 1111.001₂

 

 

 

 

そして、浮動小数点では、必ず

1.xxxxx × 2ⁿ

の形に直すの。これを正規化(せいきか)というわ。

つまり、仮数(小数部分)の先頭が必ず 1 になる形にそろえるのね。

 

1111.001₂ を正規化すると、どうなるかしら??

左に3つ小数点を移動させて、2の3乗をかけた形にすればいいわね。

 

 

 

1.111001 × 2³

これが浮動小数点の基本形よ。

 

 

32ビット浮動小数点の構造

実際のコンピューターでは、32ビットをこう分けて保存するの。

 

 

 

 

① 符号部

0なら正、1なら負。

 

② 指数部

指数はそのまま入れない。

指数 + 127

を入れるのよ。

これを「バイアス」と言うわ。

今回の指数は3だから、

3 + 127 = 130

130を2進数にすると、

10000010₂

これが指数部になる。

 

③ 仮数部

正規化した形は、

1.111001

だったわね。

でもここで大事なポイントよ。

浮動小数点では、正規化すると必ず先頭は1になるの。

だから、その「1」はわざわざ保存しないのよ。これを隠れた1(hidden bit)っていうの。

つまり、保存するのは小数点の後ろだけ。

111001

ここまでが、実際に必要な情報ね。

 

でもね、仮数部は23ビットって決まっているの。

だから、ビットが足りない分はどうすると思う?

そう、右側を0で埋めるのよ(ゼロ埋め)

11100100000000000000000

こうして23ビットにそろえるの。

後ろに数字がないのは、「それ以上の情報がない」という意味。

だから安心して0を並べていいのよ。

 

最終的なビット列

0 | 10000010 | 11100100000000000000000

これが 15.125 の32ビット浮動小数点表現よ。

 

イリエダ
イリエダ
どう?浮動小数点に慣れてきたかしら?? 次はバイアス値について詳しく勉強していきましょ

 

そんじゃあね!