🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.programming
6 messages
6 total messages Started by ch... Krzysztof Gozdziewski Tue, 16 Apr 1996 00:00
Kodowanie pliku ASCII
#524
Author: ch... Krzysztof Gozdziewski
Date: Tue, 16 Apr 1996 00:00
16 lines
1043 bytes
Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco
zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na
'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ?
Chodzi po porstu o tak rzecz: mam duza baze danych ASCII (2MB), chce
ja tak zapisac, zeby nie mozna jej bylo w prosty sposob odczytac, i
zmniejszyc rownoczesnie plik.

Jesli ktos moglby mi podsunac jakis pomysl, to bardzo prosze o pomoc.

K. Gozdziewski

-- 
 ^-^  ~ Krzysztof Go\'zdziewski
(o o) ~ Institute of Astronomy, N Copernicus University
 =*=  ~ Chopina 12/18, PL-87-100 Torun, POLAND
(m_m) ~ ch...@astri.uni.torun.pl, phone (48 56) 260-17 ext. 80
Re: Kodowanie pliku ASCII
#525
Author: zy... Zbigniew Zych
Date: Tue, 16 Apr 1996 00:00
62 lines
2483 bytes
Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote:
: Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco
: zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na
: 'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ?
: Chodzi po porstu o tak rzecz: mam duza baze danych ASCII (2MB), chce
: ja tak zapisac, zeby nie mozna jej bylo w prosty sposob odczytac, i
: zmniejszyc rownoczesnie plik.

Rozumiem, ze chcesz programem obslugi bazy czytac i pisac od razu
do/z postaci skompresowanej?

A moze tak:
Litery+ cyfry = 26+26+10 znakow (duze i male litery)
to daje razem: 62 znaki
Czyli bombowo!
64 znaki - to daje: 6 bitow.

Stosujesz wlasna tabele przekodowania:
  a = 0
  b = 1
....
  z = 25
  A = 26
  B = 27
....
  Z = 51
  0 = 52
  1 = 53
....
  9 = 61

Pozostale dwa kody wykorzystujesz do zakodowania pozostalych znakow

Jesli teraz chcesz zakodowac np: Abc, to dostajesz ciag:
  
  26, 1, 2

Ale nie zapisujesz tego na osobnych bajtach, ale polacz:
  czyli 26 zapisz na pierwszych 6 bitach pierwszego bajtu,
  1 zapisz na 6 bitach, ale na 2 bitach z pierwszego, i na 4 z 2 bajtu.
  2 na 4 bitach z 2 bajtu i 2 bitach z 3 bajtu...

Jak widac uzyskujesz (w przypadku tekstow zlozonych wylacznie z liter
i cyfr) stosunek upakowania: 4 do 3 (4 znaki na 3 bajtach).
To nie duzo... fakt..

Klopoty:
  1. kodowanie/odczyt tak spakowanych danych
     (trzeba sie grzebac w bitach...)
  2. trzeba sie zastanowic jak zakodowac reszte znakow...

Mozna sie zastanowic i np. kodowac jeszcze inaczej, np. zakladajac
ze w tekstach glownie wystepuja male litery, oraz kilka znakow
(przecinek, kropka wykrzyknik, nawiasy... etc...)
zakodowac jako slownik podstawowy: male litery, cyfry i te znaki,
a reszte jako zlozone znaki...
(np. 63 i nastepnie 1 to moze byc np. duza litera B... etc...)

Zbigniew Zych
--
 PGP finger: zy...@sol.pp.net.pl       IRC Admin @ irc.agh.edu.pl
<a href="http://www.pp.net.pl/"> Peter Pan K.P.K. Piotr Wende</a>
Re: Kodowanie pliku ASCII
#526
Author: Piotr Keplicz
Date: Tue, 16 Apr 1996 00:00
16 lines
1343 bytes
ch...@ncac.torun.pl (Krzysztof Gozdziewski) wrote:
>Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco
>zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na
>'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ?
>Chodzi po porstu o tak rzecz: mam duza baze danych ASCII (2MB), chce
>ja tak zapisac, zeby nie mozna jej bylo w prosty sposob odczytac, i
>zmniejszyc rownoczesnie plik.
>
Najlepiej spakuj dane jakims pakerem (najlepiej RARem) i uzyj jakiegos
programiku do szyfrowania (najlepiej
http://melkor.mimuw.edu.pl/~keplicz/piotr/ftp/safedata.rar).
Trudno o lepsza metode, zwlaszcza ze hasla w pakerach latwo zlamac!
-- 
  ___ _  _
 | . ) |/ /   Piotr Keplicz   kep...@crab.mimuw.edu.pl
 |__||_|\_\   http://melkor.mimuw.edu.pl/~keplicz/piotr
Re: Kodowanie pliku ASCII
#527
Author: ufpr... Witold Przygoda
Date: Tue, 16 Apr 1996 00:00
11 lines
899 bytes
Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote:

> Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco
> zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na
> 'zwyczajnej' kompresji, np. metodami uzywanymi przez archiwizery ?

Tak: 'zwyczajna kompresja' + haslo :-)))
Wlasciwie czemu nie? Wez np. RAR-a 2.0, spakuj wraz z opcja haslo
i nie bedzie tego mozna "w prosty sposob odczytac"

WP.
Re: Kodowanie pliku ASCII
#528
Author: j... Jerzy Tarasiuk
Date: Wed, 17 Apr 1996 00:00
32 lines
1532 bytes
>>>>> "Z" == Zbigniew Zych <zy...@pp.net.pl> writes:
> Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote:
>: Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco
>: zmniejszyc jego rozmiary. Czy jest jakas metoda, ktora nie polegalaby na
Z> Rozumiem, ze chcesz programem obslugi bazy czytac i pisac od razu
Z> do/z postaci skompresowanej?
Z> A moze tak:
Z> Litery+ cyfry = 26+26+10 znakow (duze i male litery)
Z> to daje razem: 62 znaki
Z> Czyli bombowo!
Z> 64 znaki - to daje: 6 bitow.
Z> Stosujesz wlasna tabele przekodowania:
Z>   a = 0
Z>   b = 1
Z> ....
Z>   z = 25
Z>   A = 26
Z>   B = 27
Z> ....
Z>   Z = 51
Z>   0 = 52
Z>   1 = 53
Z> ....
Z>   9 = 61

Z> Pozostale dwa kody wykorzystujesz do zakodowania pozostalych znakow

To moze lepiej kodowanie Huffmana? Wyniki beda nieco lepsze
(w klasie metod z zamiana kodow znakow kodowanie Huffmana daje
 najwieksza kompresje, jaka jest mozliwa; ale bylo uzywane
 tylko w ARC-u i PKARC-u, potem zaczeto stosowac lepsze metody
 kodujace ciagi znakow jako pojedyncze znaki).
Re: Kodowanie pliku ASCII
#529
Author: ch... Krzysztof Gozdziewski
Date: Wed, 17 Apr 1996 00:00
19 lines
1272 bytes
Krzysztof Gozdziewski (ch...@ncac.torun.pl) wrote:
: Mam taki problem: trzeba zakodowac plik ascii i byloby dobrze, zeby znaczaco

Dziekue wszystkim za odzew. Mea culpa, bo nie wyrazilem sie do konca jasno:
chodzilo mi o mozliwosc zakodowania bazy danych ale z mozliwoscia
korzystania z niej pozniej w programie (na biezaco), wiec pomysly 
z uzyciem pakera raczej mnie nie urzadzaly. Najprostsze (najlepsze)
rozwiazniem okazalo sie stworzenie 'wlasnego' ASCII jak to bylo
sugerowane przez Zbigniewa Zycha --- ja moge sie zadowolic wylacznie
malymi literami alfabetu wiec mam kompresje cos kolo 50%, a to juz jest
niezle. Dzieki.

Krzysztof
 
-- 
 ^-^  ~ Krzysztof Go\'zdziewski
(o o) ~ Institute of Astronomy, N Copernicus University
 =*=  ~ Chopina 12/18, PL-87-100 Torun, POLAND
(m_m) ~ ch...@astri.uni.torun.pl, phone (48 56) 260-17 ext. 80
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads