_数全体の符号(+か、-か。)とは別に、指数部も符号(+か、-か。)を持っていますよね?詰まり、指数部は符号付の数字です。
_ここで、指数部の符号として、1ビットを使ってしまうと、指数部自体の数値しか表現出来ませんが、32ビットの浮動小数点数であるとすると、指数部は、ほぼ真ん中の数値である127を足す事で、指数の -128〜+127の数値の他に、指数部と仮数部との組み合わせを考える事で、2ビットの更なる情報を産み出す事が出来ます。
指数部 0 仮数部 0 → 0
指数部 0 仮数部 0 以外 → 非正規数
指数部 1 ~ 254 → 正規数
指数部 255 仮数部 0 →無限大
指数部 255 仮数部 0 以外 →NaN
_この様に、無条件で一部の数値を足す事をバイアスを掛ける、と言います。この掛けるは、✕ではなく、電圧を掛ける、の掛ける、加える、と言う意味です。足す数値をバイアス数と言います。バイアスは、偏り、と言う意味の英語です。
_バイアス数を加えることで、指数部はビット反転させています。別の言い方をすると、32ビットでは、指数部は7ビットですから、2^7-1=127を足しています。2進数表示で、[1111111(2)]を足しています。
_図では、64ビットなので、指数部は11ビットですから、2^11-1=2047を足しています。2進数表示で、[11111111111(2)]を足しています。
_足す、と言うことを暗に示す為に、初期ビットとして、1が入っています、という事を、「1・・・1 って書いて」表現しようとしています。
情報:IT
高校生
指数部のところに
1・・・1 って書いてありますが、
なぜそうなってるんですか?
□ 浮動小数点数のデータの形式
浮動小数点数を表すデータは, ビットの列を3つの部分に分
けて、 正か負かを表す部分(符号ビット), 「2の何乗か」を表す部
分 (指数部), 仮数を表す部分 (仮数部) で表現する。
TOTAL
01
符号ビット
( 1ビット)
101
指数部 (11ビット)
64ビット
AN
仮数部 (52ビット)
ek is.
図13 浮動小数点数の64ビット表現の例
00
64 ビットの浮動小数点数では,符号ビットは1ビット, 指数部は 11 ビット,
仮数部は52 ビットで表されることが多い。
符号ビットは、値が正または0のとき0,負のとき1である。 浮動小数点では,
1.0111 のように, かならず整数部分を1としているため, 仮数部では, その1
を省略している。
符号
図 1
+ 1.0111 x 22
図14 浮動小数点数とビット列A
回答
疑問は解決しましたか?
この質問を見ている人は
こちらの質問も見ています😉