0 Daumen
58 Aufrufe

Was bedeutet Maskieren

Hallo.

Ich lerne gerade C/C++ und stoße jetzt des öfteren auf

"Bit"-Maskierung

Ich habe es auch des öfteren ge-googelt, leider keine befriedigende Antwort für mich gefunden.

Kann man sich das wie eine Schablone vorstellen, die etwas vorhandenes in etwas anderes *gewünschten* ändert?

Schwere Kost.

Mir ist leider keine andere Formulierung eingefallen, sry.

Danke im voraus.

von

1 Antwort

0 Daumen
 
Beste Antwort

Eine Schablone ist laut Wikipedia "ein ausgeschnittenes Muster zur Herstellung oder Bearbeitung gleichgestaltiger Dinge."

Dabei kann nur der Teil bearbeitet werden, der nicht von der Schablone verdeckt ist (also der Teil, wo etwas ausgeschnitten wurde).

Eine Maske macht etwas Ähnliches. Sie ermöglicht es, einen Teil zu verändern, lässt aber einen anderen Teil unangetastet (z.B. dort wo Aussparungen für Augen, Nase, Mund etc. sind).

Beispiel. Ein Computer A hat die IP-Adresse a=192.168.1.129 mit Netzmaske n=255.255.255.0. Er möchte eine Nachricht an Computer B mit IP-Adresse b=192.168.1.128 und eine an Computer C mit IP-Adresse c=192.168.2.129 senden.

In Binärdarstellung sieht das so aus:

  • n = 11111111 11111111 11111111 00000000
  • a = 11000000 10101000 00000001 10000001
  • b = 11000000 10101000 00000001 10000000
  • c = 11000000 10101000 00000010 10000001

Mit der bitweisen und-Verknüpfung & gilt

        a & n = b & n,

also liegt Rechner A im gleichen Netzwerk wie B. A kann deshalb die Nachricht direkt zu B senden.

Im Gegensatz dazu ist

        a & n ≠ c & n.

Der Rechner C liegt deshalb in einem anderen Netzwerk und A muss die Nachricht zum Router schicken mit der Bitte um Weiterleitung.

und-Verknüpfung sind dabei direkt durch Schaltungen im Prozessor realisiert und sehr effizient, da sie nicht durch Software realisiert werden müssen.

von 2,3 k

Durch die bitweise und-Verknüpfung mit der Netzmaske wurde der Netzwerkteil der IP-Addresse unverändert gelassen. Er wurde also von der Schablone verdeckt oder ist auch durch die Maske hindurch sichtbar, je nach dem welche Analogie dir besser gefällt.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community