- ベストアンサー
進数で桁数を求める
例えば、8bitの時、10進数では何桁になるかを計算したいです。 どの様に計算するのでしょうか? 256を使わないで計算したいです。よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
10進数で何桁になるかは元の数がわからなければ求められません。
その他の回答 (1)
- chie65536(@chie65535)
- ベストアンサー率44% (8740/19838)
回答No.1
10進数の「ある数x」が「何桁になるか」は「log」を使います。 例えば、10進数の「123」が何桁か知りたいなら、logを取って求めた数値の整数部に1を足したのが「桁数」になります。 log123=2.08990511144...⇒整数部は2なので、桁数は2+1=3で「3桁」です。 log999=2.99956548823...⇒整数部は2なので、桁数は2+1=3で「3桁」です。 log1000=3⇒整数部は3なので、桁数は3+1=4で「4桁」です。 この計算は「2進数でも同じ」です。 8ビットで表せる最大の数は「2の8乗引く1」つまり「255」です(256だと100000000(2)で、9ビットになるので、256ではありません。 つまりnビットが10進数で何桁になるのかは ・2のn乗を求める ・そこから1を引く ・その数でlogを取る ・求めた値の小数点以下を切り捨てる ・最後に1を足す で求まります。