Hallo Zusamen!
also als erstes wieder die Zahlen in Binärsystemumwandeln:
24 = 00011000
56= 00111000
88 = 01011000
wie bekommt man jetzt y?
in der Lösung steht y = z_4 + z_3 + nicht z_2 + nicht z_1 + nicht z_0 (das + steht für und)
Wie kommt man auf dieses Ergebnis?
Die drei Zahlen sind im Format z_7 z_6 z_5 ... z_0 dargestellt.
Es soll bei allen dreien ein Ausgangssignal erzeugt werden. Dies geschieht das erste Mal (in einem Durchlauf des Zählers), wenn die 24 erreicht ist, weil dann das Und-Gatter durch die 11000 entsprechend beschaltet ist und einen positiven Ausgangspegel/eine "1" erzeugt.
Nun wird weitergezählt: 11001, 11010, etc. Hierbei werden die 5 LSBs erst wieder die Formation 11000 einnehmen, wenn die 56 erreicht ist, also zwischendurch der Übertrag in z_5 entstanden ist. Für alle Zahlen zwischen 24 und 56 gilt, dass z_5 bis z_0 nicht 11000 werden.
Nun wird weitergezählt: 111001, 111010, etc. Hierbei werden die 5 LSBs erst wieder die Formation 11000 einnehmen, wenn die 88 erreicht ist, also zwischendurch der Übertrag in z_5 und somit in z_6 entstanden ist.
Die Zahl 1111000, bei der der nächste Impuls generiert werden würde, wird gar nicht erreicht, da (1111000) > 90 (dezimal) ist.
Hier wurde also der Trick angewendet, dass diese drei Zahlen binär die gleichen LSBs haben und somit die höheren "Überträge" gar nicht beachtet werden müssen, um sie zu erkennen. Rick würde nun bestimmt von Äquivalenzklassen oder so anfangen (er wollte an dieser Stelle einfach mal genannt werden
).
Die Lösung ist somit eine recht optimierte Lösung in Bezug auf Platz und Zeit.