hotti: 'Wenn die Minute 64 Sekunden hätte...

Beitrag lesen

Mit "umdrehen", meinst Du da jetzt den umgekehrten Fall - also die Umwandlung von Sekunden in Stunden, Minuten und Sekunden ohne Fließkommafunktionen, lediglich mit Bitshift, Addition, Subtraktion und Modulo?

Ja ;-)

Aber das muss ohne Modulo gehen. wir haben v.l.n.r. 6 Bit für die Stunden, 6 Bit für die Minuten und 6 Bit für die Sekunden. Wenn da das Hin- und Hergeshifte vorher nicht gewesen wäre bräuchten wir nun Masken um die Zahlen da wieder rauszuziehen;

|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|_|  Sekunden insgesamt SG
 h h h h h h m m m m m m s s s s s s

1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0   Stundenmaske   HM
 0 0 0 0 0 0 1 1 1 1 1 1 0 0 0 0 0 0   Minutenmaske   MM
 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1   Sekundenmaske  SM

Wenn die Minute 64 Sekunden hätte (tja...) sähe das so aus:

Stunden H = (SG & HM) >> 12
Minuten M = (SG & MM) >> 6
Sekunden S = SG & SM

Aber so einfach gehts nicht. Hast Du Lust da weiterzumachen, oder führt dieser Ansatz in eine Sackgasse?

Rolf