Công cụ này làm gì
Công cụ nhận một mốc ngày và giờ ban đầu rồi cộng (hoặc trừ) một khoảng thời gian trôi qua được tính bằng ngày, giờ, phút và giây. Kết quả trả về là ngày trên lịch, giờ đồng hồ và thứ trong tuần tương ứng. Công cụ sử dụng lịch Gregory mở rộng (proleptic Gregorian) và xem mỗi phút đúng bằng 60 giây (không tính tới giây nhuận). Phần tính toán mang tính phổ quát; bộ chọn niên hiệu tùy chọn chỉ giúp bạn nhập năm theo nhãn niên hiệu hoàng gia Nhật Bản như Minh Trị (Meiji), Đại Chính (Taisho), Chiêu Hòa (Showa), Bình Thành (Heisei) hay Lệnh Hòa (Reiwa) — các nhãn này sẽ được quy đổi sang năm Tây lịch (CE) trước khi tính.
Cách sử dụng
Chọn niên hiệu (để nguyên ở "Tây lịch (CE)" nếu dùng năm thông thường), sau đó nhập năm, tháng, ngày, giờ, phút và giây của mốc bắt đầu. Chọn chiều thời gian: "Sau (+)" để tiến về phía trước, "Trước (-)" để lùi về phía sau. Nhập số ngày, giờ, phút và giây trôi qua. Để giá trị 0 cho bất kỳ ô nào không cần dùng. Bấm tính để xem mốc thời gian kết quả cùng thứ trong tuần.
Giải thích công thức
Ngày bắt đầu được quy đổi sang Số Ngày Julius (JDN) — một dãy đếm ngày liên tục. Sau đó số ngày này được kết hợp với thời điểm trong ngày để tính ra tổng số giây. Số giây trôi qua (có dấu) được cộng vào, rồi tổng được tách ngược lại thành số ngày và thời điểm trong ngày bằng phép chia lấy phần nguyên (floor), nhờ vậy các giá trị âm (trừ qua nửa đêm, qua mốc tháng hay năm) vẫn cho ra ngày hợp lệ. Cuối cùng JDN được quy đổi lại thành năm, tháng, ngày theo lịch Gregory, còn thứ trong tuần được suy ra trực tiếp từ JDN.
$$\begin{gathered} T_{\text{result}} = T_{\text{start}} + \text{Dir} \cdot \Delta \\[1.5em] \text{where}\quad \left\{ \begin{aligned} Y &= \text{Era} + \text{Year} \\ T_{\text{start}} &= \text{JDN}(Y,\,\text{Mon},\,\text{Day}) \cdot 86400 \\ &\quad + 3600\,\text{Hr} + 60\,\text{Min} + \text{Sec} \\ \Delta &= 86400\,\text{Days} + 3600\,\text{Hrs} \\ &\quad + 60\,\text{Mins} + \text{Secs} \end{aligned} \right. \end{gathered}$$
Ví dụ minh họa
Mốc bắt đầu là 2024-06-15 00:00:00, chiều Sau, thời gian trôi qua 0 ngày 11 giờ 40 phút 30 giây. JDN của ngày 2024-06-15 là 2.460.477. Cộng thêm 42.030 giây vẫn giữ nguyên ngày và cho ra 11:40:30. Kết quả là 2024-06-15 11:40:30, rơi vào ngày thứ Bảy.
$$\Delta = 3600 \times 11 + 60 \times 40 + 30 = 42030 \,\text{s}$$
Câu hỏi thường gặp
Công cụ có xử lý năm nhuận không? Có. Phép quy đổi Số Ngày Julius tự động áp dụng đầy đủ quy tắc năm nhuận của lịch Gregory.
Tôi có thể trừ thời gian không? Có. Chọn "Trước (-)" và toàn bộ khoảng thời gian trôi qua sẽ được trừ đi, lùi chính xác qua các mốc ngày, tháng và năm.
Còn múi giờ và giờ tiết kiệm ánh sáng ban ngày (DST) thì sao? Phép tính chỉ là một thời điểm lịch thuần túy, không điều chỉnh múi giờ hay DST, nên kết quả luôn nhất quán.