Also, was wann gesendet wird, weiß du ja scheinbar. Hier steht es auch nochmal: http://www.giangrandi.ch/electronics/dcf77/signal.html
Das Abspeichern läuft (in Assembler) so ab:
Eine Zählvariable wird bei jeder empfangenen '0' oder '1' um 1 erhöht- wenn du das Signal der 59.Sekunde empfängst, wird die Zählvariable bei der nächsten Sekunde(0) auf 0 zurückgesetzt. Du hast damit in der Zählvariable immer die aktuelle Sekunde stehen.
Wenn zu beispielsweise die Minute wissen möchstest, dann fragst du ab, ob gerade die Minute gesendet wird (Das ist der Fall wenn deine Zählvariable im Bereich 21..27 steht). Wenn dies der Fall ist, verwendest du ein Register und schiebst per ror-Befehl das aktuell empfangene Bit "von links" ein. Wenn alle 7 Bits empfangen wurden, musst du natürlich nochmal eine '0' nachschieben, weil das Register ja nicht 7 sondern 8 Bit hat.
Danach hast du die Minute BCD-codiert in deinem Register stehen.
Genauso kannst du es auch mit Stunden, Tag, Jahr usw. machen.

Ich hoffe das war einigermaßen verständlich erklärt