Sözlük

Bayt Sırası Ne Anlama Gelir?

Bayt Sırası, bir dosyanın meta verilerini kontrol ettiğinizde gördüğünüz gizli ayrıntılardan biridir. Ne anlama geldiğini ve dosyanızın nasıl yazıldığı hakkında size neler söylediğini öğrenin.

byte-order

Endianness olarak da bilinen Bayt Sırası, daha büyük bir değerin baytlarının hangi sırayla saklandığını açıklar. Bilgisayarlar bu baytları her iki uçtan başlayarak da yazabilir ve dosyanın, daha sonra dosyayı okuyan her şeyin aynı sayıyı geri alabilmesi için hangi ucu kullandığını belirtmesi gerekir.

İki bayt sıralaması

Tek başına bir bayt açık ve nettir. Tek bir bayta sığmayacak kadar büyük sayılar birkaç bayta bölünmek zorundadır ve iki farklı kural tam da burada ayrılır:

  • Big-endian: saklama veya gönderme, en anlamlı bitleri içeren bayttan başlar ve anlamlılık buradan itibaren azalır
  • Little-endian: saklama veya gönderme, en az anlamlı bitleri içeren bayttan başlar ve anlamlılık buradan itibaren artar

İki bayta ihtiyaç duyan 4660 sayısını ele alalım. Big-endian bir dosya bunları 12 34 olarak, little-endian bir dosya ise 34 12 olarak yazar. Aynı sayı, ters sıra. Mixed-endian veya middle-endian olarak adlandırılan karışık biçimler de vardır, ancak bunlar nadirdir. İki ana sıra da günlük kullanımda bulunur ve hangisini göreceğiniz, dosyayı oluşturan cihaza veya programa bağlıdır.

Bunu hangi dosyalar içeriyor

Bu alan en çok TIFF'ten ve TIFF yapısı üzerine kurulmuş her şeyden bilinir; buna JPEG fotoğraflarının içindeki Exif metadata bloğu ve NEF, CR2, ARW ve DNG gibi RAW kamera formatları dahildir. Bu dosyalar, her bir sıralamayı yaygın hale getiren işlemcileri üreten şirketler olan Intel için II, Motorola için MM şeklinde iki harfli bir işaretleyiciyle başlar. Bir rapor genellikle bunu Little-endian (Intel, II) veya Big-endian (Motorola, MM) olarak açıkça yazar. Metadatayı yazan kamera, tarayıcı veya program bu seçimi yapmıştır.

Ses kapsayıcıları aynı seçimi tüm format düzeyinde yaptı: WAV değerlerini little-endian, AIFF ise big-endian olarak saklar. Bu, aynı ses örneklerini tutmalarına rağmen bu iki formatın bayt bayta bire bir değiştirilebilir olmamasının nedenlerinden biridir.

Dosyanız için neden önemli

Bayt sırası, bir makinede yazılan metadatanın başka bir makinede anlamsız görünmesinin nedenidir. İşaretleyiciyi yok sayan veya yanlış sırayı varsayan bir okuyucu kibarca hata vermez: imkansız tarihler, saçma pozlama değerleri ve dosyanın sonrasını işaret eden uzunluklar üretir ya da metadatanın okunamaz olduğunu söyler. Sırayı bilmek, dosyanın nasıl doğru şekilde açılıp işleneceğini gösterir.

Metadatayı düzenlerseniz, bu iki kat daha önemlidir; çünkü yeni değerlerin, dosyanın belirttiği sırayla geri yazılması gerekir. Ve eğer bu işaretleyicinin kendisi zarar görürse, dosyanın içindeki görüntü veya ses tamamen sağlam olsa bile genellikle tüm metadata bloğu okunamaz hale gelir. Bu alan yalnızca dosyanın nasıl düzenlendiğini tanımlar, bu nedenle sizinle veya cihazınızla ilgili hiçbir kişisel bilgi içermez.