דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. מחשבים וטכנולוגיה
  3. עזרה הדדית - מחשבים וטכנולוגיה
  4. הסבר | איך דחיסה בפורמט ZIP באמת עובדת? (בעריכה)

הסבר | איך דחיסה בפורמט ZIP באמת עובדת? (בעריכה)

מתוזמן נעוץ נעול הועבר עזרה הדדית - מחשבים וטכנולוגיה
25 פוסטים 7 כותבים 564 צפיות 8 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • R RearmostPant23

    איך דחיסה בפורמט ZIP באמת עובדת?

    כולנו מכירים את פורמט הדחיסה ZIP.
    לדוגמה – יש לנו קובץ APK ששוקל 80MB, ואחרי הדחיסה יוצא קובץ ששוקל רק 42MB.
    אבל איך זה אפשרי? איך אפשר "להקטין" את המידע בלי לאבד אותו?

    שלב ראשון – הקדמה:

    חלק ראשון - מבוא להקדמה
    אני ממליץ למי שבאמת רוצה להבין טוב איך עובדת הדחיסה שלא ידלג על ההקדמה, אבל אם מספיק לכם לדעת רק את הרעיון אז תעברו רק על החלק ההראשון שבחלק השני.

    יש כמה שיטות לייצוג מידע באמצעות מספרים.

    • הבסיס הבינארי (Binary): משתמש רק בספרות 0 ו־1.
    • הבסיס ההקסדצימלי (Hexadecimal): משתמש ב־16 ספרות (0־9 ואותיות A־F שבאנגלית).
    • הבסיס העשרוני (Decimal): זהו הבסיס הרגיל שבו אנחנו משתמשים ביום־יום, עם הספרות 0–9.
    • יש עוד שיטות, אבל הן פחות רלוונטיות לנושא שלנו. אני יודע שזה אולי עדיין לא ברור אבל קצת סבלות אני אסביר הכל.

    חלק שני - קוד בינארי
    הקוד הבינוארי הוא בעצם השפה שמדבר בה המחשב, הוא לא מכיר את כל השפות האלו כמו פייטון או ג'אווה אלא רק 0 ו 1 (שזה בעצם יש זרם חשמלי או אין).

    עכשיו עוד משהו שאנחנו צריכים לדעת על הקוד הבינוארי. כולם מכירים את שיטת הספירה מ 0 עד 9, ואני אסביר למה אני מתכוון.
    כל דבר שאתם סופרים מתחיל מ 0 ועולים כל פעם יחידה אחת, מ 0 ל 1 ואז 2 ואז 3 ככה עד 9 וזהו נגמרו לנו כל הסמפרים ולכן אנכנו חוזרים על המספרים שיש לנו שוב אבל הפעם מתחילים מ 1 אבלהסיפרה השנייה תתחיל ה 0 כי מחזקה השנייה לא עברנו על כל המספרים.
    עד כאן היה קל נכון? עכשיו הכל אותו דבר בידיוק גם בשפה הבינוארית יש לנו את הספרות 0 ו 1, אנכנו מתחילים לספור מ 0 ועוברים לאחד, וכייון שנגמרו לנו הספרות אנחנו חוזרים שוב על הספרות מחדש אבל הספרה הראשונה תהייה 1 והפרה השנייה תתחיל מ 0 וכו' (יש עוד מה להרכיב אבל לא נצרך לצורך המדריך).

    דוגמה של עשרוני מול בינארי

    עשרוני (Decimal) בינארי (Binary)
    0 0
    1 1
    2 10
    3 11
    4 100
    5 101
    6 110
    7 111
    8 1000
    9 1001
    10 1010
    11 1011
    12 1100
    13 1101
    14 1110
    15 1111
    וכו'

    חלק שלישי - קוד הקסדצימלי

    עכשיו, מכיוון שזה היה ממש לא נח לדבר עם המחשב על ידי 0 ו 1 לכן אנשים חכמים יצרו את הקוד ה "הקסדצימלי"
    אתם מכירים את ה בורר צבעים? תציצו בספויילר .


    d88dde64-a8a3-471f-8224-e9b3ec44ea6d-image.png
    הינה האתר למי שרוצה.

    עכשיו אני הולך להסביר איך הוא עובד.
    זוכרים את הבסיס העשרוני? אז הקוד ה הקסדצימלי הוא גם בנוי סדרה של ספרות רק הוא לא נגמר ב 9 אלא ממשיך עם עוד 6 אותיות באנגלית ,A, B, C, D, E, F. והספירה גם כן מתחילה מ 0 אבל מסתיימת לא ב 9אלא באות F.
    והקוד של הצבע בנויי מ סדרה של שישה כאלו ספרות, לדוגמה

    • FFFFFF = צבע לבן
    • 000000 = שחור
    • 3827F5 = צבע כחול
      אבל כמו שכבר אמרתי ובטח הבנתם הכל תחלס זה 0 ו 1 כי המחשב לא מכיר את כל מספרים ואתיות האלא אז ראו בספויילר טבלה עם המרה מקוד הקסדצימלי לקוד בינוארי .

    הקס (Hex) בינארי (Binary)
    0 0000
    1 0001
    2 0010
    3 0011
    4 0100
    5 0101
    6 0110
    7 0111
    8 1000
    9 1001
    A 1010
    B 1011

    דהיינו ספרה אחת מהבסיס הקסדצימלי שווה ל 4 ספרות בבסיס הבינארי

    (הסברתי איך נראים הצבעים בקוד כדי בהמשך להסביר איך דוחסים תמונות ולא רק טקסט)

    בזמן הכתיבה אני הבנתי שאם אני הולך להסביר מה ההבדלים בין סוגי הדחיסה rar zip 7zip זה היה מאווד ארוך ולא נח לקראיה לכן אני חושב שאני בנושא הזה יסביר את הבסיס ובנושאים חדשים אני אפרט מה ההבדל בין סוגי הדחיסה שזה בעיקרון בצורת האופתימיזציה של השיטה העיקרית.

    ואני רוצה גם להוסיף הסבר על דחיסה עם איבוד מידע כגון mp3 png gif וכו' בעזרת ה'

    שלב שני – צורת הדחיסה: בעריכה

    ניקח טקסט פשוט לדוגמה:

    Hello
    

    זהו רצף של 5 תווים.
    כל תו מיוצג בזיכרון על ידי מספר (קוד ASCII), וכל קוד כזה תופס 8 ביטים (כלומר byte אחד).
    ביחד – המילה Hello שוקלת 40 ביט.

    Снимок экрана 2025-09-13 235737.png

    שלב שלישי – איפה נכנסת הדחיסה?
    כאן הקסם מתחיל:

    מטרת האלגוריתם היא לזהות חזרות מיותרות ולחסוך מקום.
    אם יש לנו תו שמופיע הרבה פעמים, לא נכתוב אותו שוב ושוב.
    במקום זה, נשתמש בקוד קצר יותר שמייצג אותו.
    למשל: נחליט שהאות "l" מיוצגת על ידי ביט אחד בלבד במקום 8 ביטים.
    כך, במקום לכתוב "ll" בצורה מלאה (16 ביטים), אנחנו משתמשים בקיצור שמחזיר את אותה התוצאה בפחות מקום.

    המחשה
    Снимок экрана 2025-09-13 232121.png

    בקיצור – דחיסה לא "זורקת" מידע, אלא משנה את דרך הייצוג כך שייחסכו ביטים.
    ככל שהקובץ המקורי חוזר על אותם רצפים שוב ושוב, כך אפשר לחסוך יותר מקום.

    נכתב על ידי, ונערך על ידי Ai(חלקית)

    ח מנותק
    ח מנותק
    חכם בלילה 1
    כתב נערך לאחרונה על ידי
    #21

    @RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:

    נכתב על ידי ונערך על ידי Ai

    @מישהו12 נראה לי אנשים לא שמו לב למשפט הזה
    זה כתיבה שלו לדבריו רק העריכה היא של AI

    תגובה 1 תגובה אחרונה
    2
    • מיגו להוציאמ מיגו להוציא

      אני נתלה על השרשור...

      נפלה לידי פעם איזו גרסה של שיאומי, לפני חילוץ היא שקלה 1.5 ג'יגה, אחרי חילוץ משהו באיזור ה-50 ג'יגה.

      מישהו יודע איך עושים את המופת הלז?

      מתכנת חובבמ מנותק
      מתכנת חובבמ מנותק
      מתכנת חובב
      מדריכים
      כתב נערך לאחרונה על ידי
      #22

      @מיגו-להוציא כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:

      אני נתלה על השרשור...

      נפלה לידי פעם איזו גרסה של שיאומי, לפני חילוץ היא שקלה 1.5 ג'יגה, אחרי חילוץ משהו באיזור ה-50 ג'יגה.

      מישהו יודע איך עושים את המופת הלז?

      פשוט מאוד
      כל ה user data זה אפסים ולכן ג'יגה שלהם תוכל להידחס לכמה בתים

      צריך עזרה בשחזור מידע? ייעוץ? egozkokus1@gmail.com

      תגובה 1 תגובה אחרונה
      0
      • מישהו12מ מישהו12

        @RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:

        נכתב על ידי ונערך על ידי Ai

        חבר, תודה רבה על המדריכים הרבים שאתה משקיע בהם לתועלת הציבור.
        אבל חלקם מבוססים על AI, וזה, בראש ובראשונה, נוגד את חוקי הפורום (אני חושב שזה חוק מאוד הגיוני, אבל אפשר להתווכח על זה)

        מטרת הפורום היא לתת תשובה מדויקת ומקצועית לשואל על-פי המידע והניסיון האישי של המשתמשים העונים, ולכן אין להגיב לשואל במענה ממנוע בינה מלאכותית כמו "צ'אט GPT" וכד', השואל יכול לעשות זאת בעצמו ולא לשם כך הוא פתח את הנושא, כמו כן אין להעלות פוסטים משלכם שנוסחו ע"י בינה מלאכותית, זה מספים ומוריד את הרמה, בפרט אם זה עם המון מלל או אימוג'ים.

        https://mitmachim.top/topic/5489/חוקי-פורום-מתמחים-טופ-חובה-לקרוא?_=1757843378999

        וכאמור,, ישר כוח ותודה

        R מנותק
        R מנותק
        RearmostPant23
        כתב נערך לאחרונה על ידי
        #23

        @מישהו12 אם אתה רוצה אני יכול לעלות את הטקסט שאני כתבתי לפני העריכה

        תגובה 1 תגובה אחרונה
        0
        • מיגו להוציאמ מיגו להוציא

          @RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:

          @מיגו-להוציא לא הבנתי אותך

          גם אני לא, וזה בדיוק העניין.

          התחלת לדבר על דחיסות, ושאלתי שאלה: איך עושים דחיסה מסויימת, עד כאן הכל טוב.

          מה ענית לי?

          @RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת?:

          @מיגו-להוציא זו לא הדרך היחידה של דחיסה, יש דרך יותר אפקטיבית למקרים שונים, וגם השיטה שאני כתבתי יש שיפורים שאולי לא משמעותיים אבל בכאלו כמויות זה משמעותי, ועוד יכול להיות שהשתמשו ברצף שיטות בכל פעם במשהו אחר ל 100% יעילות

          וכאן אנוכי שואל:
          מה אני אמור להבין מזה?
          זה מקדם אותי במשהו?
          לא.

          אז כתבתי:

          40 מילים ולא כתבת כלום.
          לאיפה זה מקדם אותי?

          וזהו.

          R מנותק
          R מנותק
          RearmostPant23
          כתב נערך לאחרונה על ידי
          #24

          @מיגו-להוציא אוקי מה שאני אמרתי זה איזה אפשרויות יכולות להיות ולא פירטתי איך הם עובדים למעשה, להסביר על רגל אחת ככה שהכל היה ברור זה לא פשוט..

          תגובה 1 תגובה אחרונה
          1
          • R RearmostPant23

            איך דחיסה בפורמט ZIP באמת עובדת?

            כולנו מכירים את פורמט הדחיסה ZIP.
            לדוגמה – יש לנו קובץ APK ששוקל 80MB, ואחרי הדחיסה יוצא קובץ ששוקל רק 42MB.
            אבל איך זה אפשרי? איך אפשר "להקטין" את המידע בלי לאבד אותו?

            שלב ראשון – הקדמה:

            חלק ראשון - מבוא להקדמה
            אני ממליץ למי שבאמת רוצה להבין טוב איך עובדת הדחיסה שלא ידלג על ההקדמה, אבל אם מספיק לכם לדעת רק את הרעיון אז תעברו רק על החלק ההראשון שבחלק השני.

            יש כמה שיטות לייצוג מידע באמצעות מספרים.

            • הבסיס הבינארי (Binary): משתמש רק בספרות 0 ו־1.
            • הבסיס ההקסדצימלי (Hexadecimal): משתמש ב־16 ספרות (0־9 ואותיות A־F שבאנגלית).
            • הבסיס העשרוני (Decimal): זהו הבסיס הרגיל שבו אנחנו משתמשים ביום־יום, עם הספרות 0–9.
            • יש עוד שיטות, אבל הן פחות רלוונטיות לנושא שלנו. אני יודע שזה אולי עדיין לא ברור אבל קצת סבלות אני אסביר הכל.

            חלק שני - קוד בינארי
            הקוד הבינוארי הוא בעצם השפה שמדבר בה המחשב, הוא לא מכיר את כל השפות האלו כמו פייטון או ג'אווה אלא רק 0 ו 1 (שזה בעצם יש זרם חשמלי או אין).

            עכשיו עוד משהו שאנחנו צריכים לדעת על הקוד הבינוארי. כולם מכירים את שיטת הספירה מ 0 עד 9, ואני אסביר למה אני מתכוון.
            כל דבר שאתם סופרים מתחיל מ 0 ועולים כל פעם יחידה אחת, מ 0 ל 1 ואז 2 ואז 3 ככה עד 9 וזהו נגמרו לנו כל הסמפרים ולכן אנכנו חוזרים על המספרים שיש לנו שוב אבל הפעם מתחילים מ 1 אבלהסיפרה השנייה תתחיל ה 0 כי מחזקה השנייה לא עברנו על כל המספרים.
            עד כאן היה קל נכון? עכשיו הכל אותו דבר בידיוק גם בשפה הבינוארית יש לנו את הספרות 0 ו 1, אנכנו מתחילים לספור מ 0 ועוברים לאחד, וכייון שנגמרו לנו הספרות אנחנו חוזרים שוב על הספרות מחדש אבל הספרה הראשונה תהייה 1 והפרה השנייה תתחיל מ 0 וכו' (יש עוד מה להרכיב אבל לא נצרך לצורך המדריך).

            דוגמה של עשרוני מול בינארי

            עשרוני (Decimal) בינארי (Binary)
            0 0
            1 1
            2 10
            3 11
            4 100
            5 101
            6 110
            7 111
            8 1000
            9 1001
            10 1010
            11 1011
            12 1100
            13 1101
            14 1110
            15 1111
            וכו'

            חלק שלישי - קוד הקסדצימלי

            עכשיו, מכיוון שזה היה ממש לא נח לדבר עם המחשב על ידי 0 ו 1 לכן אנשים חכמים יצרו את הקוד ה "הקסדצימלי"
            אתם מכירים את ה בורר צבעים? תציצו בספויילר .


            d88dde64-a8a3-471f-8224-e9b3ec44ea6d-image.png
            הינה האתר למי שרוצה.

            עכשיו אני הולך להסביר איך הוא עובד.
            זוכרים את הבסיס העשרוני? אז הקוד ה הקסדצימלי הוא גם בנוי סדרה של ספרות רק הוא לא נגמר ב 9 אלא ממשיך עם עוד 6 אותיות באנגלית ,A, B, C, D, E, F. והספירה גם כן מתחילה מ 0 אבל מסתיימת לא ב 9אלא באות F.
            והקוד של הצבע בנויי מ סדרה של שישה כאלו ספרות, לדוגמה

            • FFFFFF = צבע לבן
            • 000000 = שחור
            • 3827F5 = צבע כחול
              אבל כמו שכבר אמרתי ובטח הבנתם הכל תחלס זה 0 ו 1 כי המחשב לא מכיר את כל מספרים ואתיות האלא אז ראו בספויילר טבלה עם המרה מקוד הקסדצימלי לקוד בינוארי .

            הקס (Hex) בינארי (Binary)
            0 0000
            1 0001
            2 0010
            3 0011
            4 0100
            5 0101
            6 0110
            7 0111
            8 1000
            9 1001
            A 1010
            B 1011

            דהיינו ספרה אחת מהבסיס הקסדצימלי שווה ל 4 ספרות בבסיס הבינארי

            (הסברתי איך נראים הצבעים בקוד כדי בהמשך להסביר איך דוחסים תמונות ולא רק טקסט)

            בזמן הכתיבה אני הבנתי שאם אני הולך להסביר מה ההבדלים בין סוגי הדחיסה rar zip 7zip זה היה מאווד ארוך ולא נח לקראיה לכן אני חושב שאני בנושא הזה יסביר את הבסיס ובנושאים חדשים אני אפרט מה ההבדל בין סוגי הדחיסה שזה בעיקרון בצורת האופתימיזציה של השיטה העיקרית.

            ואני רוצה גם להוסיף הסבר על דחיסה עם איבוד מידע כגון mp3 png gif וכו' בעזרת ה'

            שלב שני – צורת הדחיסה: בעריכה

            ניקח טקסט פשוט לדוגמה:

            Hello
            

            זהו רצף של 5 תווים.
            כל תו מיוצג בזיכרון על ידי מספר (קוד ASCII), וכל קוד כזה תופס 8 ביטים (כלומר byte אחד).
            ביחד – המילה Hello שוקלת 40 ביט.

            Снимок экрана 2025-09-13 235737.png

            שלב שלישי – איפה נכנסת הדחיסה?
            כאן הקסם מתחיל:

            מטרת האלגוריתם היא לזהות חזרות מיותרות ולחסוך מקום.
            אם יש לנו תו שמופיע הרבה פעמים, לא נכתוב אותו שוב ושוב.
            במקום זה, נשתמש בקוד קצר יותר שמייצג אותו.
            למשל: נחליט שהאות "l" מיוצגת על ידי ביט אחד בלבד במקום 8 ביטים.
            כך, במקום לכתוב "ll" בצורה מלאה (16 ביטים), אנחנו משתמשים בקיצור שמחזיר את אותה התוצאה בפחות מקום.

            המחשה
            Снимок экрана 2025-09-13 232121.png

            בקיצור – דחיסה לא "זורקת" מידע, אלא משנה את דרך הייצוג כך שייחסכו ביטים.
            ככל שהקובץ המקורי חוזר על אותם רצפים שוב ושוב, כך אפשר לחסוך יותר מקום.

            נכתב על ידי, ונערך על ידי Ai(חלקית)

            R מנותק
            R מנותק
            RearmostPant23
            כתב נערך לאחרונה על ידי
            #25

            @RearmostPant23 כתב בהסבר | איך דחיסה בפורמט ZIP באמת עובדת? (בעריכה):

            שלב שני – צורת הדחיסה: בעריכה

            בזמן הכתיבה אני הבנתי שאם אני הולך להסביר מה ההבדלים בין סוגי הדחיסה rar zip 7zip זה היה מאווד ארוך ולא נח לקראיה לכן אני חושב שאני בנושא הזה יסביר את הבסיס ובנושאים חדשים אני אפרט מה ההבדל בין סוגי הדחיסה שזה בעיקרון בצורת האופתימיזציה של השיטה העיקרית.

            ואני רוצה גם להוסיף הסבר על דחיסה עם איבוד מידע כגון mp3 png gif וכו'

            תגובה 1 תגובה אחרונה
            1

            • התחברות

            • אין לך חשבון עדיין? הרשמה

            • התחברו או הירשמו כדי לחפש.
            • פוסט ראשון
              פוסט אחרון
            0
            • חוקי הפורום
            • פופולרי
            • לא נפתר
            • משתמשים
            • חיפוש גוגל בפורום
            • צור קשר