Je nach Datentyp ist 255+1 = 0 Man spricht dann m.W. vom Überlauf. Wie ist nun ein künstlich herbeigeführter Überlauf zu bezeichnen? Beispiel: a = 42; if (++a > 42) a = 0; http://en.wikipedia.org/wiki/Wrapping_%28overflow%29
künstler schrieb: > Wie ist nun ein künstlich herbeigeführter Überlauf zu bezeichnen? > > Beispiel: > > a = 42; > > if (++a > 42) > a = 0; Hm, der Compiler wird wohl sagen "statement is always true" und entsprechend optimieren?
Es mag sein, dass er das machen würde, wäre obiges Beispiel ein echtes Programm. Darum geht es aber doch gar nicht.
Mathematike würden das wohl "Rechnen in einer Restklasse zur Basis 42" oder so ähnlich nennen.
Wenn es sich um ganzzahlen handelt ist die eine "Endlicher Körper" http://de.wikipedia.org/wiki/Endlicher_K%C3%B6rper Oder ein Galoiskörper zur Basis 42. Mathematisch würde man das dann aber her so schreiben:
1 | x = (x + 1) % 42 |
Aber was ist daran künstlich?
Läubi .. schrieb: > Aber was ist daran künstlich? Weiß ich auch nicht. Ich denke er braucht einfach nur eine Bezeichnung für eine Doku. Ich würd ganz einfach schreiben, das xyz einen Wertebereich von 0 bis 41 aufweist. Alles andere folgt dann für den Kundigen daraus.
Karl heinz Buchegger schrieb: > Ich denke er braucht einfach nur eine Bezeichnung für eine Doku. Dann würde ich das einfach mit einem Zähler Modulo 41 bezeichnen wenn immer nur ++ gerechnet wird, oder ein Zähler mit CTC Mode ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.