|
符号拡張(ふごうかくちょう、''Sign extension'')とは、符号付の数値を表現するビット列が格納領域のビット幅より短い場合に、隙間を適切に埋めることによって数値としての同一性を維持する手法である。 例えば、8ビットの (-10)10 という値は2の補数表現では以下のようになる。 11110110 これを16ビットに符号拡張すると以下のようになる。 11111111 11110110 符号拡張しないで16ビットの領域に格納した場合、以下のようになる 00000000 11110110 これを整数として解釈すると (246)10 となってしまい、数値としての同一性が維持されない。 符号拡張にはしばしばマイクロプロセッサやコンパイラのバグが隠れていることがある。 == ビットシフトでの符号拡張 == 算術ビットシフトで右シフトを行う場合、MSBが空く。 これを符号拡張で埋める。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「符号拡張」の詳細全文を読む スポンサード リンク
|