Z´ aklady programov´ an´ı Z´ apoˇ ctov´ y projekt Komprimace/Dekomprimace soubor˚ u 1
´ Uvod
Tento dokument slouˇz´ı jako uˇzivatelsk´a pˇr´ıruˇcka a technick´a dokumentace k programu realizuj´ıc´ımu komprimaci a zpˇetnou dekomprimaci dat, pˇresnˇeji ˇreˇceno soubor˚ u. Tento program je spolu s vytvoˇren´ ymi podp˚ urn´ ymi webov´ ymi str´ankami a t´ımto vygenerovan´ ym dokumentem LaTeX souˇca´st´ı z´apoˇctov´eho projektu pro pˇredmˇet Z´aklady programov´an´ı.
2
Obsah
Obsah ´ 1 Uvod
1
2 Obsah
1
3 Program 3.1 Spuˇstˇen´ı a pouˇzit´ı programu . . . . . . . . . . . . . . . . . . . 3.2 Funkcionalita . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 V´ yvojov´e n´astroje . . . . . . . . . . . . . . . . . . . . . . . . .
2 2 3 3
4 Komprimace/Dekomprimace 4.1 Komprimace dat . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Dekomprimace dat . . . . . . . . . . . . . . . . . . . . . . . .
4 4 4
5 O mnˇ e
4
1
6 Odkazy
3
5
Program
3.1
Spuˇ stˇ en´ı a pouˇ zit´ı programu
Cel´ y program je koncipov´an jako konzolov´a aplikace, ˇcemuˇz je pˇrizp˚ usobeno i spouˇstˇen´ı. To prob´ıh´a nejjednoduˇseji pˇres pˇr´ıkazov´ y ˇr´adek, zad´an´ım n´azvu programu a souˇcasn´ ym pˇred´an´ım tˇr´ı povinn´ ych parametr˚ u a to ve tvaru program < −c/ − d > < input > < output >, kde parametry nab´ yvaj´ı n´asleduj´ıc´ıho v´ yznamu: Komprimace dat • < −c > pˇrepne program do m´odu komprimace • < input > n´azev vstupn´ıho souboru, kter´ y chceme zkomprimovat • < output > n´azev souboru v´ ystupn´ıho, jiˇz zkomprimovan´eho, kter´ y se vytvoˇr´ı v libovoln´em zvolen´em adres´aˇri Dekomprimace dat • < −d > pˇrepne program do m´odu dekomprimace • < input > n´azev vstupn´ıho souboru, kter´ y budeme zpˇetnˇe rekonstruovat ze souboru komprimovan´eho • < output > n´azev souboru v´ ystupn´ıho, dekomprimovan´eho, kter´ y je totoˇzn´ y s p˚ uvodn´ım souborem. Uloˇz´ı se opˇet do zadan´eho adres´aˇre.
2
Pokud pˇri spuˇstˇen´ı nˇekter´ y z parametr˚ u chyb´ı, nebo je chybnˇe zaps´an, zobraz´ı se jednoduch´a n´apovˇeda s vypsanou spr´avnou syntax´ı.
3.2
Funkcionalita
M´ıra a u ´ˇcinnost komprimace je ˇcistˇe z´avisl´a na sloˇzen´ı souboru (poˇctu r˚ uzn´ ych znak˚ u vyskytuj´ıc´ıch se v souboru). V pˇr´ıpadˇe, ˇze je soubor sloˇzen z v´ıce neˇz 256 r˚ uzn´ ych znak˚ u, program vyhodnot´ı komprimaci jako bezv´ yznamnou a tuto informaci vyp´ıˇse.
3.3
V´ yvojov´ e n´ astroje
K´od programu je naps´an pomoc´ı programovac´ıho jazyka C. K programov´an´ı samotn´emu jsem vyuˇzil v´ yvojov´e prostˇred´ı Microsoft Visual Studio 2008 Professional Edition (C++), kter´e v r´amci studia pomˇernˇe hojnˇe vyuˇz´ıv´am. [1] Produktov´a ˇrada Microsoft Visual Studio 2008 nab´ız´ı vhodn´e n´astroje pro u ´pln´e zaˇc´ateˇcn´ıky v programov´an´ı, jednotliv´e profesion´aly i t´ ymy hledaj´ıc´ı prostˇred´ı podporuj´ıc´ı modern´ı metodiky a principy ˇr´ızen´ı ˇzivotn´ıho cyklu v´ yvoje softwarov´ ych aplikac´ı. Visual Studio je vhodn´e pro v´ yvoj´aˇre, designery, architekty, testery, projektov´e manaˇzery a dalˇs´ı u ´ˇcastn´ıky ˇzivotn´ıho cyklu v´ yvoje softwarov´ ych aplikac´ı. Pro tvorbu podp˚ urn´ ych webov´ ych str´anek jsem pouˇzil textov´ y editor PSPad.
3
[2] PSPad editor je volnˇe ˇsiˇriteln´ y (freeware) univerz´aln´ı editor pro MS Windows. To znamen´a, ˇze si na nˇej nemus´ıte br´at p˚ ujˇcku, nemus´ıte platit ˇza´dn´e pen´ıze, protoˇze je zadarmo. Neplat´ıte-li poplatky, uˇsetˇr´ıte na dovolenou, kterou pak m˚ uzete pohodlnˇe str´avit nˇekde v Karibiku.
4 4.1
Komprimace/Dekomprimace Komprimace dat
Komprimace, jindy zvan´a komprese, je proces, pˇri kter´em se data podle urˇcit´eho postupu (algoritmu) pˇrev´ad´ı a ukl´adaj´ı do souboru o menˇs´ı velikosti neˇz p˚ uvodn´ı. Komprimace se prov´ad´ı, aby uˇsetˇrila m´ısto na z´aznamov´em m´ediu, pˇr´ıpadnˇe pro snadnˇejˇs´ı pr´aci s menˇs´ımi soubory. Komprimace m˚ uˇze ’ b´ yt bud to ztr´atov´a, coˇz znamen´a, ˇze pˇri zpˇetn´e rekonstrukci souboru budou chybˇet urˇcit´a data - dekomprimovan´ y soubor jiˇz nebude totoˇzn´ y s p˚ uvodn´ım souborem, a nebo bezztr´atov´a, kter´a zajist´ı dokonalou rekonstrukci souboru komprimovan´eho v p˚ uvodn´ı soubor.
4.2
Dekomprimace dat
Dekomprimace je ke komprimaci proces opaˇcn´ y
5
O mnˇ e
Jm´eno Radim Pˇr´ıjmen´ı Vavˇr´ık Login VAV0038 Bydliˇstˇe Kopˇrivnice Fakulta Elektrotechniky a Informatiky Program Informaˇcn´ı a komunikaˇcn´ı technologie Roˇcn´ık I.
Z´ ajmy Ve sv´em voln´em ˇcase se aktivnˇe vˇenuji hudbˇe a sportu. Jsem ˇclenem florbalov´eho klubu FBC Vikings Kopˇrivnice. 4
6
Odkazy
Reference [1] Microsoft: Microsoft MSDN. (listopad 2009). http://www.microsoft.com/cze/msdn/produkty/vstudio/default.mspx [2] J. Fiala: PSPad home page. (listopad 2009). http://www.pspad.com/cz/
5