指数表記、科学的記数法、工学的記数法、浮動小数点数
科学雑誌や理系の教科書やコンピュータ・プログラミングの書物で次のような数値表記を目にすることがよくある。
これらは日本語では指数表記という名前で知られている。英語ではscientific notation(科学的記数法)やstandard index form(標準指数形)と呼ばれている。
指数表記では0以外の数値を次のように10の累乗を掛けた式にして表す。
以下、mを仮数部、10を基数部、nを指数部と呼ぶことにする。
コンピュータ科学の分野ではEまたはeを使って指数部を表記する。
指数表記を通常の記数法へ変換
指数表記を通常の記数法に変換する方法はその指数部が正の数か負の数かで異なる。
指数部が正の数である場合、仮数部(かけられる数)の小数点を指数部の数だけ右へ移動させる。そして空白の桁には0を与える。例えば次のように。
4.9の小数点を右へ6桁移動させると0の桁が5つ加わって4900000になる。これで変換完了。
指数部が負の数である場合、仮数部の小数点を指数部の数だけ左へ移動させる。そして空白の桁には0を与える。例えば次のように。
4.9の小数点を左へ6桁移動させると
指数表記へ変換
通常の記数法で表されている数値を指数表記に変換するには次のようにする。
ここでは203000000を例に挙げる。
- 小数点を最大桁の右隣りまで左へ移動させる。
- その小数点から右に何桁あるか数える。この例では8桁。指数部が8と決まる。
- 有効数字(この例では2.03)を残して残りの0の桁を削除。
これで仮数部が決まる。 - 最後に仮数部と基数部と指数部とを組み合わせて式にすれば指数表記への変換が完了。
ここで言うところの有効数字とは、0以外の数がある桁とそれらに挟まれた0の桁を残してそれ以外の0の桁を省いた数のこと。7036000なら7036が有効数字、0.030052なら30052が有効数字。
小数の場合は次のように変換する。ここでは0.0000683を例に挙げる。
- 小数点より左の0を取り除く。
- 小数点を有効数字の中で最大の桁の右隣りまで移動させる。
- 0の桁を含めて小数点よりも左に何桁あるかを数える。この例では5桁あることが分かる。
- 5に-1を掛けて-5にすると、この-5が指数部の値になる。
- 有効数字以外の左側の0の桁をすべて取り除く。この値が仮数部になる。
- 最後に仮数部と基数部と指数部とを組み合わせる。これで指数表記への変換が完了。
計算機(電卓やコンピュータ)での指数表記
主要な電卓や主要なコンピュータ・プログラミング言語での指数表記では、10の累乗を掛ける代わりにEもしくはeが用いられていることが多い。
例えば次の表記は等式で並べられたもの同士がそれぞれ等しい数を表している。
4900000 = 4.9 * 10^6 = 4.9E6 = 4.9e6 = 4.9e+6 = 4.9e+06 0.0000049 = 4.9 * 10^-6 = 4.9E-6 = 4.9e-6 = 4.9e-06 203000000 = 2.03 * 10^8 = 2.03E8 = 2.03e8 = 2.03e+8 = 2.03e+08 0.0000683 = 6.83 * 10^-5 = 6.83E-5 = 6.83e-5 = 6.83e-05
プログラミング言語の種類によってはこれらと異なる表記法が使われている。
工学的記数法
指数表記の指数部を3の倍数で表す工学的記数法というものがある。英語ではengineering notationとかengineering formと呼ばれているらしい。
指数部が3の倍数となる累乗は単位名称によく使われる接頭辞に次のように対応している。
mE3 | キロ (k) | |
mE6 | メガ (M) | |
mE9 | ギガ (G) | |
mE12 | テラ (T) | |
mE15 | ペタ (P) |
浮動小数点数
計算機で用いられ、プログラミング言語でもお馴染みの浮動小数点数は、指数表記と同じ構造を持っている。
Sの部分は日本語で仮数部、英語ではsignificandと呼ばれ、Bの部分は日本語で基数部、英語ではbaseと呼ばれ、eは日本語で指数部、英語ではexponentと呼ばれている。
ちなみに浮動小数点数は英語ではa floating-point numberと呼ばれている。
浮動小数点数は計算機内ではバイナリーナンバー、つまり2進数として扱われる。2進数の場合、基数部が10ではなく2になり、仮数部と指数部のすべての桁が0か1になる。
コメント
コメントを投稿