Rev 1149 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1149 | Rev 6673 | ||
---|---|---|---|
Line 1... | Line 1... | ||
1 | archiver.obj ýêñïîðòèðóåò äâå ôóíêöèè äëÿ ðàñïàêîâêè deflate-äàííûõ. |
1 | archiver.obj ýêñïîðòèðóåò äâå ôóíêöèè äëÿ ðàñïàêîâêè deflate-äàííûõ. |
- | 2 | À òàêæå ôóíêöèè: deflateInit, deflateInit2, deflateReset, deflate, |
|
- | 3 | deflateEnd äëÿ óïàêîâêè deflate-äàííûõ, ñäåëàííûå íà îñíîâå ñâîáîäíî |
|
- | 4 | ðàñïðîñòðàíÿåìîé áèáëèîòåêè zlib. |
|
Line 2... | Line 5... | ||
2 | 5 | ||
3 | Ïåðâàÿ: deflate_unpack |
6 | Ïåðâàÿ: deflate_unpack |
4 | Îáúÿâëåíèå â ñòèëå Ñè: void* __stdcall deflate_unpack(const void* data, unsigned* pLength); |
7 | Îáúÿâëåíèå â ñòèëå Ñè: void* __stdcall deflate_unpack(const void* data, unsigned* pLength); |
5 | Àðãóìåíòû: |
8 | Àðãóìåíòû: |
Line 62... | Line 65... | ||
62 | ; è âîò ðåçóëüòàò |
65 | ; è âîò ðåçóëüòàò |
63 | mov ecx, [esp+8] ; â [ecx] íóæíî çàïèñàòü äëèíó |
66 | mov ecx, [esp+8] ; â [ecx] íóæíî çàïèñàòü äëèíó |
64 | mov [ecx], length |
67 | mov [ecx], length |
65 | mov eax, buffer |
68 | mov eax, buffer |
66 | ret 8ðåãèñòð> |
69 | ret 8 |
- | 70 | ||
- | 71 | Àëãîðèòì äëÿ óïàêîâêè äàííûõ: |
|
- | 72 | 1) Âûçîâ ôóíêöèè deflateInit èëè deflateInit2. |
|
- | 73 | 2) Ðàçáèåíèå âõîäíîãî ïîòîêà äàííûõ íà ïîðöèè ïî 64 Êá. |
|
- | 74 | Äëÿ êàæäîãî áëîêà â 64 Êá â öèêëå äîëæåí äåëàòüñÿ âûçîâ ôóíêöèè deflate. |
|
- | 75 | Çà îäèí âûçîâ ôóíêöèè deflate ñæàòûõ äàííûõ îáðàçóåòñÿ íå áîëåå 16 Êá. |
|
- | 76 | Ò. å. åñëè ñæèìàåìûõ äàííûõ ìåíåå 16 Êá, òî èõ ìîæíî óïàêîâàòü çà îäèí âûçîâ deflate. |
|
- | 77 | Åñëè ñæèìàåìûõ äàííûõ ìåíåå 64 Êá, òî èõ ìîæíî óïàêîâàòü îðãàíèçîâàâ îäèí öèêë ñ âûçîâîì deflate. |
|
- | 78 | Åñëè ñæèìàåìûõ äàííûõ áîëåå 64 Êá, òî èõ ìîæíî óïàêîâàòü îðãàíèçîâàâ äâîéíîé öèêë ñ âûçîâîì deflate. |
|
- | 79 | 3) Âûçîâ ôóíêöèè deflateEnd äëÿ î÷èñòêè ïàìÿòè. |
|
- | 80 | Çàìå÷àíèÿ: |
|
- | 81 | Áîëüøèå óðîâíè ñæàòèÿ ïîêà ÷òî íå ïîääåðæèâàþòñÿ. |
|
- | 82 | Ôóíêöèÿ deflate íå êîðåêòíî ðàáîòàåò ñ ïàðàìåòðîì Z_NO_FLUSH. |
|
- | 83 | (Ïîêà ïðîáëåìà íå óñòðàíåíà ðåêîìåíäóåòñÿ âñåãäà ñòàâèòü Z_FINISH)ðåãèñòð> |