10代と話して驚いたこと

なぜ、0x3d0a9 の文字列を変換すると 250025 の数字になるのかをを教えてください。

A 回答 (5件)

16進数と10進数の関係は以下のようになります。



16進数-10進数
0→0
1→1
2→2
3→3
4→4
5→5
6→6
7→7
8→8
9→9
A→10
B→11
C→12
D→13
E→14
F→15

また、16進数の複数桁は次のようになります。

16進数-10進数(10進数)
10→16(1x16)
100→256(1x16x16)
1000→4096(1x16x16x16)

ですから、たとえば
D000→53248(13x16x16x16)
と、なります。
    • good
    • 0
この回答へのお礼

理解できました。
大変ありがとうございました。

お礼日時:2010/09/07 13:38

3*16^4 + 13*16^3 + 0*16^2 + 10*16^1 + 9*16^0

    • good
    • 0

16進数だから。


windowsを使っているなら、アクセサリの電卓で確かめると良いですよ。
    • good
    • 0
この回答へのお礼

理解できました。
大変ありがとうございました。

お礼日時:2010/09/07 13:59

0xで始まるから16進数表現の値と言うことです。


16進数で、3d0a9は250,025です。
    • good
    • 0

0x3d0a9の先頭にある0xがコンピュータ内で16進法であると判断して後の文字を解読します。

よって
3d0a9を16進→10進法に直すと250025となります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報