הסבר | איך דחיסה בפורמט ZIP באמת עובדת?
-
איך דחיסה בפורמט ZIP באמת עובדת?
כולנו מכירים את פורמט הדחיסה ZIP.
לדוגמה – יש לנו קובץ APK ששוקל 80MB, ואחרי הדחיסה יוצא קובץ ששוקל רק 42MB.
אבל איך זה אפשרי? איך אפשר "להקטין" את המידע בלי לאבד אותו?שלב ראשון – להבין מה זה בכלל נתון
לפני שנצלול לדחיסה, חשוב להבין איך מחשב בכלל מייצג מידע:
המחשב (או הטלפון) לא "מבין" תמונות, טקסטים או צלילים.
מבחינתו – הכול בסוף יורד לרצפים של 0 ו־1.
כל ספרה כזו נקראת bit.
כל 8 ביטים מרכיבים יחד byte.זו היא תבלה של כלהאותיות
שלב שני – צורת הדחיסה
ניקח טקסט פשוט לדוגמה:Hello
זהו רצף של 5 תווים.
כל תו מיוצג בזיכרון על ידי מספר (קוד ASCII), וכל קוד כזה תופס 8 ביטים (כלומר byte אחד).
ביחד – המילה Hello שוקלת 40 ביט.שלב שלישי – איפה נכנסת הדחיסה?
כאן הקסם מתחיל:מטרת האלגוריתם היא לזהות חזרות מיותרות ולחסוך מקום.
אם יש לנו תו שמופיע הרבה פעמים, לא נכתוב אותו שוב ושוב.
במקום זה, נשתמש בקוד קצר יותר שמייצג אותו.
למשל: נחליט שהאות "l" מיוצגת על ידי ביט אחד בלבד במקום 8 ביטים.
כך, במקום לכתוב "ll" בצורה מלאה (16 ביטים), אנחנו משתמשים בקיצור שמחזיר את אותה התוצאה בפחות מקום.המחשה
בקיצור – דחיסה לא "זורקת" מידע, אלא משנה את דרך הייצוג כך שייחסכו ביטים.
ככל שהקובץ המקורי חוזר על אותם רצפים שוב ושוב, כך אפשר לחסוך יותר מקום.נכתב על ידי ונערך על ידי Ai
@RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:
נכתב על ידי ונערך על ידי Ai
@מישהו12 נראה לי אנשים לא שמו לב למשפט הזה
זה כתיבה שלו לדבריו רק העריכה היא של AI -
אני נתלה על השרשור...
נפלה לידי פעם איזו גרסה של שיאומי, לפני חילוץ היא שקלה 1.5 ג'יגה, אחרי חילוץ משהו באיזור ה-50 ג'יגה.
מישהו יודע איך עושים את המופת הלז?
@מיגו-להוציא כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:
אני נתלה על השרשור...
נפלה לידי פעם איזו גרסה של שיאומי, לפני חילוץ היא שקלה 1.5 ג'יגה, אחרי חילוץ משהו באיזור ה-50 ג'יגה.
מישהו יודע איך עושים את המופת הלז?
פשוט מאוד
כל ה user data זה אפסים ולכן ג'יגה שלהם תוכל להידחס לכמה בתים -
@RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:
נכתב על ידי ונערך על ידי Ai
חבר, תודה רבה על המדריכים הרבים שאתה משקיע בהם לתועלת הציבור.
אבל חלקם מבוססים על AI, וזה, בראש ובראשונה, נוגד את חוקי הפורום (אני חושב שזה חוק מאוד הגיוני, אבל אפשר להתווכח על זה)מטרת הפורום היא לתת תשובה מדויקת ומקצועית לשואל על-פי המידע והניסיון האישי של המשתמשים העונים, ולכן אין להגיב לשואל במענה ממנוע בינה מלאכותית כמו "צ'אט GPT" וכד', השואל יכול לעשות זאת בעצמו ולא לשם כך הוא פתח את הנושא, כמו כן אין להעלות פוסטים משלכם שנוסחו ע"י בינה מלאכותית, זה מספים ומוריד את הרמה, בפרט אם זה עם המון מלל או אימוג'ים.
https://mitmachim.top/topic/5489/חוקי-פורום-מתמחים-טופ-חובה-לקרוא?_=1757843378999
וכאמור,, ישר כוח ותודה
@מישהו12 אם אתה רוצה אני יכול לעלות את הטקסט שאני כתבתי לפני העריכה
-
@RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:
@מיגו-להוציא לא הבנתי אותך
גם אני לא, וזה בדיוק העניין.
התחלת לדבר על דחיסות, ושאלתי שאלה: איך עושים דחיסה מסויימת, עד כאן הכל טוב.
מה ענית לי?
@RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:
@מיגו-להוציא זו לא הדרך היחידה של דחיסה, יש דרך יותר אפקטיבית למקרים שונים, וגם השיטה שאני כתבתי יש שיפורים שאולי לא משמעותיים אבל בכאלו כמויות זה משמעותי, ועוד יכול להיות שהשתמשו ברצף שיטות בכל פעם במשהו אחר ל 100% יעילות
וכאן אנוכי שואל:
מה אני אמור להבין מזה?
זה מקדם אותי במשהו?
לא.אז כתבתי:
40 מילים ולא כתבת כלום.
לאיפה זה מקדם אותי?וזהו.
@מיגו-להוציא אוקי מה שאני אמרתי זה איזה אפשרויות יכולות להיות ולא פירטתי איך הם עובדים למעשה, להסביר על רגל אחת ככה שהכל היה ברור זה לא פשוט..