基数変換 【radix conversion】 number base conversion / 進数変換
概要
基数変換(radix conversion)とは、ある基数(n進数のn)で表記された数値を、別の基数による表記に変換すること。人間は10進数、コンピュータは2進数を基本とするため、IT分野では2進数、8進数、10進数、16進数などの間でよく変換が行われる。位取り記数法における基数(radix)は各桁の重みを表しており、10進数であれば各桁の重みが右隣の10倍、左隣の1/10倍となり、2進数ならそれぞれ2倍、1/2倍となる。
基数変換ではこの各桁の重みを利用して、ある基数による数の表記を別の基数で表していく。例えば、2進数の「1101」を10進数に変換する場合、1×2<3 + 1×2<2 + 0×2<1 + 1×2<0 となり、結果は「13」となる。
また、2進数と16進数の場合、16進数の「0」は2進数の「0000」、「F」は「1111」というように2進数の4桁が16進数の1桁に相当するため、2進数を4桁ごとに区切って対応する16進数に、あるいはその逆に置き換えることで容易に相互の変換を行うことができる。
基数変換は数の表記の仕方を変えるだけであるため、原則として変換の前後で数の大きさそのものに変化はない。ただし、小数を扱う場合はある基数で有限小数であるものが別の基数に表すと循環小数になってしまう場合があり、有限桁で正確に表すことはできなくなってしまう。
(2021.11.21更新)