Как перевести текущую дату в секундах в дату формата дд/мм/гггг чч/мм/сс?
С помощью системного прерывания 13 я получил текущую дату в секундах. Теперь мне надо преобразовать ее в дату формата дд.мм.гггг чч:мм:сс
Делаю это с помощью команд div и сохраняю в отдельные переменные. Разделил 2 раза на 60, на 24, получил общее количество дней, по идее в остатке 0. Целую часть теперь нужно делить на 30, 31, (в месяце же разное количество дней) чтобы корректно получить количество месяцев, а в остатке дату дня?, далее, я так понимаю, целую часть делим на 12 и прибавим 1970 — получаем год, а в остатке месяц.
Мой код (данная процедура вызывает Исключение в операции с плавающей точкой)
section .seconds_to_date
seconds_to_date:
push eax
push ebx
push ecx
push edx
mov ebx, 60
div ebx ; eax - minutes
mov [seconds], edx ; seconds
div ebx ; hours
mov [minutes], edx ; minutes
mov ebx, 24
div ebx ; eax - days (целое по идее)
mov ebx, 30
div ebx ; eax - month
mov [day], edx
mov ebx, 12
div ebx ; eax number of years
mov [month], edx
mov ebx, 1970
add eax, ebx ; year
mov [year], eax
pop edx
pop ecx
pop ebx
pop eax
ret