Dosyalar nasıl sıkıştırılıyor?

Ulaş Ezgin

Hectopat
Katılım
31 Mayıs 2020
Mesajlar
279
Sıkıştırılmış dosyalar hayatımızın her yerinde. WinRAR kullanarak bunları açabiliyoruz ya da sıkıştırabiliyoruz. Benim merak ettiğim kısım bu işlemin nasıl olduğuna dair. Nasıl bir dosya sıkışabiliyor ki?
 
Çok kötü bir anlatım olacak ama bu tip çeşitli algoritmalar ile yapıyorlar. Diyelim ki alfabedeki harflerden oluşan bir dosyamız var. Bunu inceleyip şu tespiti yaptık: ABK ifadesi çok sık geçiyor. Sıkıştırırken onun yerine 0 yazıyor mesela. Sıkıştırmayı açarken de 0 yerine ABK yazıp eski haline getiriyor. Dosyadaki her ABK için 2 karakterlik yer kazanmış oluyor. ABK dışında ikinci sık geçen, üçüncü sık geçen... şeklinde devam ediyor.
Her harfin basit düzeyde 1 Byte yer tuttuğunu da belirteyim. Normade birkaç MegaByte diye ufak dediğin şeyler aslında milyonlarca harf içerebilecek şeyler.

Mesela bazı fotoğraflar şunlardan biri olarak kabul edilip ona göre ayrılıyor. 64 piksel'in her biri için 3 Byte'lık yer tutmak yerine kaçıncı örüntü olduğu, hangi renk ile hangi renk arasında olduğu gibi bilgiler tutmak yeterli oluyor.
U9kFCMBRjEh8szwttgD2Da8wCMNFYFgRZm9d.png

Bahsettiğim iki olay hakkında da ayrıntılı bilgiye sahip değilim. Ama söylediğim yöntem en ilkel halde kullanılabilecek bir şey. Bunun çok daha gelişmişleri kullanılıyor.
 
Son düzenleme:
Sıkıştırılmış dosyalar hayatımızın her yerinde. WinRAR kullanarak bunları açabiliyoruz ya da sıkıştırabiliyoruz. Benim merak ettiğim kısım bu işlemin nasıl olduğuna dair. Nasıl bir dosya sıkışabiliyor ki?
Buyrun;
 
@Vavien. 'in de dediği gibi, belirli bir ortalamanın üstünde olan Byte ya da Byte grupları için belirli karakterler atanıyor.

Bu, bir çeşit şifreleme gibi. Bu nedenle belirli algoritamalarla sıkıştırılmış dosyaları, o algoritmaya sahip olmayan bir programla açmak zor olabiliyor. :)
 
Key Words
Data Compression Algorithms

Çok farklı algoritmalar var ancak genel mantık şu; Digital verinin içinde tekrarlayan paternler yaratarak onları algoritmaya göre değişen mantıklarda sembollerle simgelemek. Böylece sen elindeki belirli yoğunluktaki digital bir veriyi atıyorum XXX algoritmasındaki bir sembol olarak tanımlayabiliyorsun. Bununda kayıpsız versiyonları var ki sıkıştırma oranları düşüktür. Kayıplı olanların da amacına göre kullanım alanları var. Örneğin en basitinden MP3 dediğimiz şey de bir digital ses sıkıştırma algoritmasını kullanır.
 
Algoritmalar kullanılıyor. JPEG sıkıştırma mesela, DCT isimli kayıplı bir yönteme göre sıkıştırılıyor. Bu da ciddi matematik demek.
@bitwise

RAW bir dosya 100 MB gibi bir boyuta sahip olabilirken, aynı fotoğrafın kameradan çıkan JPEG formu birkaç MB olabiliyor.

Ancak temelinde kayıplı bir sıkıştırma yöntemi. :(

Ayrıca, bu sıkıştırma yöntemine benzer bir durumu gazeteciler de kullanır. Bir açıklamayı ya da konuşmayı not ederken, uzun kelimeler yerine belirli sembol ya da kısaltmaları kullanırlar. :)
 
Uyarı! Bu konu 6 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Technopat Haberler

Geri
Yukarı