#離散数学ってなに?
離散数学とはとびとびの数字を扱う数学の分野。
コンピュータは0と1の2種類の数字で全てを表現してるから、離散数学によってデータを処理しています。 ・・・ふーん。以下用語の整理。
基数 n進数におけるnのこと。
正規化 ある形式に従って数値を変換すること。
固定小数点数表現 小数点と数字だけで小数を表現する方法
浮動小数点数表現 固定小数点数表現と基数のべき乗で小数を表現する方法
1-1 補数
補数とは! 足したときに位が上がる最も小さい数。
つまり2桁の10進数では15の補数は85、33の補数は67ということ。
同じ様に、6桁の2進数では001111の補数は110001、100001の補数は011110となる。
(足し算をすると100000000になる数字)
2進数の補数は1を0に、0を1に反転させたものに1を足すと求められる!
33-15=18の計算をするときに、2進数の補数を使って
100001 - 001111
= 100001 + (-001111)
= 100001 + 110001 - 1000000 (引く数の補数を足して、溢れた7桁目の1を消去)
= 100010
っていう風に計算してるんやって。
つまり、補数は引き算とか負の数を表すときに使う!!
1-2 誤差
桁落ち 近い二数の和を求めることにより有効桁数が減るために生じる誤差
情報落ち 極めて小さい数の加減が反映されないために生じる誤差
丸め誤差 切り捨てや四捨五入により小さな桁を削除するために生じる誤差
打ち切り誤差 無限級数の計算を途中で打ち切ることにより生じる誤差
オーバフロー 演算結果が有限の桁内で表現できなくなること
アンダーフロー 浮動小数にて指数部が小さくなりすぎて表現できなくなること
1-3 論理和と論理積
論理和(OR)
各ビットごとに、どちらか一方が1なら1とする。
例) 1001 OR 0100 = 1101
論理積(AND)
各ビットごとに、両方が1なら1とする。
例) 1001 AND 0101 = 0001
排他的論理和(XOR)
各ビットごとに、どちらか一方が1なら1とする。
例) 1001 XOR 0101 = 1100