• ベストアンサー

IPアドレスを16進数に変換

10.1.2.146を16進数に変換すると0A010292になるとのことですが、計算方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • deltaufp
  • ベストアンサー率39% (136/341)
回答No.5

No.3です。2進数から16進数ですね?またまた、僕の知るやり方になってしまいますが… 今現在、8ビットの2進数で表されていると思います。これを4ビット区切りで重みを考えます。 例えば、0000 1010は左側の0000と右側の1010にわけます。重みは、右側から順に1,2,4,8となります。重み2と8のところにビットが立っていますので、2と8を足します。すると10となり、10は16進数ではAとなりますので0Aという答えが出てきます。同じようにやると答えが92になるはずです。念のため、画像にやり方を書いておきます。

esdrwa11
質問者

お礼

丁寧な回答をありがとうございました。

その他の回答 (4)

  • deltaufp
  • ベストアンサー率39% (136/341)
回答No.4

No.3です。重大なミスをしたので訂正させて頂きます。 0000 0101.0000 0001.0000 0010.1001 0010(2進数表記) ここの部分なのですが、先頭の10を表す0000 0101なのですが正しくは"0000 1010"でした。 訂正前のだと、"10"にならず"5"になってしまうので答えが正しく出てきません。失礼しました。

  • deltaufp
  • ベストアンサー率39% (136/341)
回答No.3

僕なりで申し訳ないのですが… それぞれを8ビットの2進数に直します。その後2進数を16進数に変換します。そしたら答えとおなじになると思いますよ。 10.1.2.146(10進数表記) ↓ 0000 0101.0000 0001.0000 0010.1001 0010(2進数表記) ↓ 0A.01.02.92(16進数表記)

esdrwa11
質問者

お礼

回答をありがとうございます。 1001 0010(2進数)から92(16進数)に変換する方法を教えてもらえますか? 教えていただいたら、BAをさしあげます。 ※基数変換であれこれ計算してみたのですが、どうしても92にならないのです…。

回答No.2

区切りごとに16進数にすればいいだけですが。 基数変換自体が分からないなら、別途調べれば済みます。

esdrwa11
質問者

お礼

回答をありがとうございました。

  • aran62
  • ベストアンサー率16% (485/2911)
回答No.1
esdrwa11
質問者

お礼

回答をありがとうございました。

関連するQ&A