- ベストアンサー
2進法・10進法・16進法
FF0000(16),0000FF(16),008000(16) これを2進法と10進法に変換するやり方を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
やり方より位取りの仕組みを理解すれば出来ると思います。 10進法では数字が□□□□と並んでいると 右から1の位、10の位、10の2乗=100の位、10の3乗=1000の位となっています。 100の位が5なら100が5個で500というわけです。 2進法では数字が□□□□と並んでいると 右から1の位、2の位、2の2乗=4の位、2の3乗=8の位と考えてください。 0100ならば8の位が1で10進法であらわすと8、 1010ならば16×1+2×1=18ということです。 16進法では数字が□□□□と並んでいると 右から1の位、16の位、16の2乗=256の位、16の3乗=84096の位と考えてください。 16進法では10以上の数をアルファベットで表し、A=10、B=11、C=12・・・F=15ということなので たとえば000FFならば16の位がF(15)個+F(15)なので10進法で表すと16×15+15=255というわけです。 これで16進数を10進法にするのはできますよね。 10進法を2進法に変えるのは2でどんどん割っていって余り(0または1)を順に書き並べる方法が一般的です。
その他の回答 (2)
- bob_n
- ベストアンサー率35% (610/1732)
1 0001 6 0110 B 1011 2 0010 7 0111 C 1100 3 0011 8 1000 D 1101 4 0100 9 1001 E 1110 5 0101 A 1010 F 1111 におきかえると2進になります。 10進にするには、 1 1 2 16 3 256 4 4096 その桁とかけて足していきます。 0F51は 0x4096+Fx256+5x16+1x1=3921 10進に直すと、 Aは10 Bは11 Cは12 Dは13 Eは14 Fは15
ここが詳しいですね。