Da gibt es jeden Menge verschiedene ansätze, ist aber nicht wirklich kompiziert. Ich gehe meistens dazu über, die Stunden, Minuten und Sekunden je in einem Register abzulegen.
Dann ist es einfach zu handhaben
http://www.schoeppl.info/elektronik/...-quarzuhr.aspx
Da habe ich mal die Sache mit dem Uhrenquarz dokumentiert.

Und die Subtraktion ist auch nicht schwer.
Sekunde = r21
Minute = r22
Stunde = r23

Deine Zeit lädst du in:
Sekunde=r18
minute =r19
stunde=r20

Die differenz:
sub r18, r21
// ergebnis kann 0, <0 oder >0 werden
cpi r18, 60
brlo nothingtodowithsecond
add r18, 196 ; sprich, wenn die Sekunde negativ übergelaufen ist, einfach 196 dazu und sie liegt wieder zw. 0-59 natürlich muss nun die Minute erniedrigt werden
dec r19
nothingtodowithsecond:
// jetzt minute vergleichen
sub r19, r22
cpi r19, 60
brlo nothingtodowithminute
add r19, 196
dec r20
nothingtodowithminute:
sub r20, r23
cpi r20, 24
brlo nothingtodowithhour
add r20, 232

Habs grad aus dem Kopf geschrieben, hoffe dass kein fehler drinn ist.

Natürlich gibts noch tausend andere Wege nach Rom, der ist aber einfach nachzuvollziehen.

lg

Alex