MCP ile bağlan →

Hesaplamaya Girin

Belirli bir anı dönüştürmek için varsayılan değeri bırakın ya da güncel zamanı milisaniye olarak girin.

Formül

Reklam

Sonuç

Unix Zaman Damgası (Epoch)
1.700.000.000
1 Ocak 1970 UTC'den bu yana geçen saniye
Milisaniye 1.700.000.000.000
Epoch'tan bu yana geçen dakika 28.333.333
Epoch'tan bu yana geçen saat 472.222
Epoch'tan bu yana geçen gün 19.675

Unix Zaman Damgası Nedir?

Unix zaman damgası (epoch zamanı veya POSIX zamanı olarak da bilinir), 1 Ocak 1970 günü saat 00:00:00 UTC'den — yani "Unix epoch" anından — bu yana geçen saniye sayısıdır ve artık saniyeler bu sayıma dahil edilmez. Bilgisayarların zaman dilimlerinden bağımsız olarak bir anı tek bir sayı şeklinde saklamasının evrensel yoludur. Bu araç, milisaniye cinsinden bir değeri standart Unix zaman damgasına (saniye) dönüştürür; ayrıca epoch anından bu yana geçen dakika, saat ve gün karşılıklarını da gösterir.

1 Ocak 1970'te sıfırdan başlayan ve sayacı şimdiki ana doğru artan zaman çizelgesi
Unix zaman damgası, başlangıç noktası olan 1 Ocak 1970 UTC'den bu yana geçen saniyeleri sayar.

Nasıl Kullanılır?

Milisaniye cinsinden bir zaman değeri girin. Güncel Unix zaman damgasını ("epoch şimdi") elde etmek için içinde bulunduğunuz anı milisaniye olarak girin; varsayılan değer örnek olarak sunulmuştur. Araç bu değeri 1.000'e bölüp aşağı yuvarlayarak tam saniyeyi verir — neredeyse her API'nin, veritabanının ve programlama dilinin beklediği biçim budur.

Formülün Açıklaması

Temel dönüşüm şu şekildedir:

$$\text{Epoch} = \left\lfloor \dfrac{\text{Time (ms)}}{1000} \right\rfloor$$

Milisaniye, saniyenin binde biri hassasiyetini sunar; ancak klasik Unix zaman damgası tam saniye cinsinden ölçülür, dolayısıyla aşağı yuvarlama (floor) yapıp ondalık kısmı atarız. Buradan epoch değerini 60, 3.600 ve 86.400'e bölerek sırasıyla dakika, saat ve gün sayısını elde ederiz.

$$\begin{gathered} \text{Epoch} = \left\lfloor \dfrac{\text{Time (ms)}}{1000} \right\rfloor \\[1.5em] \text{where}\quad \left\{ \begin{aligned} \text{Minutes} &= \left\lfloor \tfrac{\text{Epoch}}{60} \right\rfloor \\ \text{Hours} &= \left\lfloor \tfrac{\text{Epoch}}{3600} \right\rfloor \\ \text{Days} &= \left\lfloor \tfrac{\text{Epoch}}{86400} \right\rfloor \end{aligned} \right. \end{gathered}$$
Milisaniye değeri 1000'e bölünüp aşağı yuvarlanarak epoch saniyesi elde edilir
Milisaniyeyi 1000'e bölüp aşağı yuvarlamak tam epoch saniyelerini verir.

Örnek Hesaplama

Diyelim ki güncel zaman 1.700.000.000.000 milisaniye olsun. Bunu 1.000'e böldüğümüzde 1.700.000.000 saniye çıkar — işte bu Unix zaman damgasıdır:

$$\left\lfloor \dfrac{1{,}700{,}000{,}000{,}000}{1000} \right\rfloor = 1{,}700{,}000{,}000\ \text{s}$$

1.700.000.000 değerini 86.400'e bölüp aşağı yuvarladığımızda 1 Ocak 1970'ten bu yana 19.675 gün bulunur ki bu da 2023 Kasım ortasına denk gelir:

$$\left\lfloor \dfrac{1{,}700{,}000{,}000}{86{,}400} \right\rfloor = 19{,}675\ \text{gün}$$

Sıkça Sorulan Sorular

Neden saniye, milisaniye değil? Orijinal Unix standardı saniye kullanır. JavaScript'in Date.now() fonksiyonu milisaniye döndürdüğü için çoğu zaman 1.000'e bölmeniz gerekir.

Zaman dilimlerini dikkate alır mı? Hayır — Unix zamanı her zaman UTC'dir. Aynı an, dünyanın her yerinde aynı zaman damgasına sahiptir.

2038 yılı sorunu nedir? Zaman damgasını işaretli 32 bitlik bir tam sayıda saklayan sistemler, 19 Ocak 2038'de taşma yaşar. Modern 64 bitlik sistemler bu sorundan etkilenmez.

Son güncelleme: