Как раз решение вопроса. Вот из rexx:
(BORNDATE - дата рождения): возвращает количество полных дней (не включая текущий день), начиная от даты рождества Христова (Январь 1, 0001), включая её. Результат выдается в формате ДДДДДД (без начальных нулей). Это формат удобен тем, что выражение вида DATE(B)//7 в качестве результата будет всегда иметь число из диапазона 0-6, где 0 соответствует понедельнику, а 6 - воскресенью (то есть, по сути, является номером дня недели). Поскольку дата '1 Января 0001 г.' основана на Григорианском календаре, который не существовал до 1582 года, количество дней, истёкших ‘от рождества Христова’, вычисляется следующим образом: 365 дней в году плюс 1 дополнительный день на каждые четыре года (исключая годы, символизирующие век: 100, 200 и т.д.) плюс 1 дополнительный день на каждый 400-ый год (400, 800 и т.д.). В расчёт не принимаются ошибки в существовавшей ранее календарной системе, которые и привели к созданию Григорианского календаря.
Сегодня идёт 738143 день. И вообще ни каких проблем, и ни когда (во вменяемом будущем) их не будет. 6 байт или 3 байта + очень лёгкие расчёты с ней.

