년, 월, 일은 다음 세 가지의 천체운동주기에서 만들어진다. 년(年) '태양년'은 지구가 태양 주위를 한바퀴 완전히 도는데 걸리는 시간. 월(月)은 보름달과 다음 보름달 사이의 시간. 일(日)은 해가 남중했다가 다음 남중할 때까지의 시간이다.
태양년이 365일에 가깝고 매 4년마다 하루를 더해야 된다는 것을 처음으로 알아낸 사람은 이집트인이었고 이를 도입하게 된 것은 기원전 46년 쥴리어스 시저가 윤년이 도입된 365일제를 채택하면서부터다.
그러나 이 달력도 그렇게 정확한 것은 아니어서 매 4년마다 하루를 더한 것은 오히려 달력이 매년 약 12분 앞서가게 하는 결과를 초래했다.
그래서 교황 그레고리 13세는 달력과 그것을 만드는 방법을 바꾸었다. 즉, 새로운 세기를 시작하는 해 중에서 400으로 나누어지지 않는 해는 윤년으로 되지 않게 하였다. 예를 들면, 2000년은 400으로 나누어지기 때문에 윤년이지만 1900년은 나누어 떨어지지 않기 때문에 윤년이 아니다.
그레고리 달력을 채택함으로써 달력과 계절은 꽤 잘 맞지만 여전히 일년이 이루는 날짜수가 태양주위를 도는 지구의 회전주기와 완전히 일치하지 않는다. 세 가지 천체 주기를 바탕으로 한 달력을 사용하는 한, 매달 또 매 년 마다 날짜 수가 달라지는 것을 피할 수는 없을 것이다.
우리나라에서 실제 달력을 사용한 것은 조선조 효종 4년(1653년)에 청나라에서 수입된 서양천문학에 영향을 받은 시헌력을 사용한 때부터다. 현재 공식적으로 사용되고 있는 양력은 고종 32년(1895년) 부터 쓰고 있다.