нет, 24 в шестнадцатиричной с/с. Почему? Потому, что BCD арифметика. (так сложилось исторически - DS1307 на борту. Соотв. все константы в BCD. ). В минуты все перевести MegaJohn предлагал - не уверен - остаток FLASH катастрофически мал (Mega88 - 300 слов осталось, кучу впихнуть надо :(
А про 24h идея была такая - если отрезок [23h:22h;02h:45h] и текущее время 00h:23h просто сделать отрезок [23h:25h;26h:45h] и время 24h:23h и просто сравнивать. Т.к. на асме, все равно через регистры работать легче, посему исходные значения не попортим. Это IMHO