• ベストアンサー

16進数のAND演算

IPアドレス:176.16.1.20 サブネットマスク:255.255.255.248の場合 ●ネットワークアドレスを求める 1.IPアドレスを16進数 → AC100114 2.サブネットマスクを16進数 → FFFFFF80 1と2のビットごとのANDをとった部分がネットワークアドレスだと思うのですが、この場合、AC100110で良いのでしょうか? ビットごとのANDをとった部分とは、同じ位置の数字を比較して数が小さいほうをとったもので良いのでしょうか?

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

  • ベストアンサー
  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.2

まず、10進数から16進数の変換が間違っていますね。 176.16.1.20 B0100114 255.255.255.248 FFFFFFF8 ビット計算は2進数にした方が解りやすいですね。 B   0   1   0   0   1   1   4 1011 0000 0001 0000 0000 0001 0001 0100 F   F   F   F   F   F   F   8 1111 1111 1111 1111 1111 1111 1111 1000 ですのでネットワークアドレスは、 1011 0000 0001 0000 0000 0001 0001 0000 です。 ビットごとのANDとは1.と2.の両方が1の所を1、そうでない所を0とします。 16進数で表記すると B0100110 10進数で表記すると 176.16.1.16 となります。

superstar
質問者

お礼

ありがとうございました。 全然違うことを書いていましたね。 おかげさまで、理解できました。

その他の回答 (2)

  • JUN-2
  • ベストアンサー率26% (360/1349)
回答No.3

計算は#1の方が合っていると思います。 要はCIDRの計算ですよね? 使えるIPアドレスは  176.16.1.16 ~ 176.16.1.23 の7つだと思います。

  • c_tech
  • ベストアンサー率51% (129/251)
回答No.1

計算してみたんですが、全然違う結果になってしまいました。 176.16.1.20を16進   →  B0100114 255.255.255.248を16進 →  FFFFFFF8 二つのANDをとったら B0100110 ん~ 私が間違ったんですかね

関連するQ&A