Modulo-Funktion, Grundlagen, wie geht das?
Mit diesen Zahlen (oben) soll gerechnet werden.
Hallo Freunde. Könnte Jemand vielleicht Aufgabe 3 ausführlich und verständlich erklären?
Eigenes Beispiel: 18 mod 5 = 3, da 18 : 5 = 3, mit rest 3. Also 3*5 = 15, mit Rest 3, 18. Also wieder 18 mod 5 = 3.
Aber warum ist bei Aufgabe 3. a) 1 mod 128 = 1? 128 ist ja größer als 1, das passt ja gar nicht rein, und warum kommt als Rest 1 raus?
Und außerdem, inwiefern soll ich die Binärdarstellung zu Hilfe nehmen?
Mfg, H.A.
2 Antworten
Das Argument ist das gleiche wie bei "3*5 = 15, mit Rest 3":
1 mod 128 => 0 * 128 Rest 1
128, 63, 32 und 16 sind Zweierpotenzen. Schreibe diese Zahlen mal in Binärschreibweise auf. Was fällt dir auf?
Die Operation Modulo 2 testet, ob eine Zahl gerade oder ungerade ist. Im Binärsystem bedeutet das, ob das erste Bit gesetzt ist oder nicht. Was erhältst du bei Modulo 4 als mögliche Reste? 0, 1, 2, 3. Das sind die Zahlen, bei denen keines außer der ersten beiden Bits gesetzt ist. Und bei Modulo 8?
Jetzt klarer?
Ich denke es ist noch wichtig zu ergänzen, warum die Binärdarstellung verwendet werden soll.
Die Zahlen mit denen du mod rechenen sollst sind alles 2er Potenzen. Das Binärsystem arbeitet auch zur Basis 2. Das heißt du kannst alles was links von der Stelle und an der Stelle selbst steht bei der die Zahl mit der du mod machst die 1 hat streichen und hast schon das Ergebnis.