Go Back   Forums > Community Chatterbox > Tech Corner
Memberlist Forum Rules Today's Posts
Search Forums:
Click here to use Advanced Search

Reply
 
Thread Tools Display Modes
Old 09-11-2004, 06:55 PM   #1
Rogue
10 GOSUB Abandonia
20 GOTO 10
 
Rogue's Avatar

 
Join Date: Nov 2004
Location: Afrim, Albania
Posts: 2,113
Post

I have to do a project for one of my classes, and stuff that I'll be doing is somewhat interesting.

I have to create compression utility.

Most of us use WinZip and other compression utilities all the time, but have you ever asked your self how does really compression utility works? (Well, before this class I did not either).

So to start, simple question, any idea how all this works?

ps. This topics is aimed to learn some new stuff, help me to review and make sure my algorithm, planning and other stuff works. Later I'll add what are specifications and requirements for the project, but this should be enough for start.

Rogue is offline                         Send a private message to Rogue
Reply With Quote
Old 09-11-2004, 07:27 PM   #2
Wael
Hero Gamer

 
Join Date: Nov 2004
Location: Shella, Kenya
Posts: 485
Default

ftp://rtfm.mit.edu/pub/usenet/news.a...mpression-faq/
A data compression FAQ in three parts

http://datacompression.info/Compression.shtml
Data compression books, links etc...

http://www.hn.is.uec.ac.jp/~arimura/...ion_links.html
Data compression links

Did a little search,

Hope it helps...
Wael is offline                         Send a private message to Wael
Reply With Quote
Old 09-11-2004, 08:04 PM   #3
Braindead
Abandonia Homie

 
Join Date: Jun 2004
Location: ,
Posts: 663
Send a message via ICQ to Braindead Send a message via MSN to Braindead
Default

I think the easiest way of compressing something is to use Huffman btrees and it actually also returns you with a very good compression rate, although building the tree can be a bit slow...
Braindead is offline                         Send a private message to Braindead
Reply With Quote
Old 09-11-2004, 09:04 PM   #4
Caged
Game Wizzard
 
Caged's Avatar

 
Join Date: Oct 2004
Location: Fitchburg, United States
Posts: 265
Default

hehe, this guy is a genious. He asks an interesting question and all is good and fun while abandonians do his homework, LOL.

I salute you you master expert!
Caged is offline                         Send a private message to Caged
Reply With Quote
Old 10-11-2004, 01:45 AM   #5
Rogue
10 GOSUB Abandonia
20 GOTO 10
 
Rogue's Avatar

 
Join Date: Nov 2004
Location: Afrim, Albania
Posts: 2,113
Default

Quote:
Originally posted by Caged@Nov 9 2004, 10:04 PM
hehe, this guy is a genious. He asks an interesting question and all is good and fun while abandonians do his homework, LOL.

I salute you you master expert!
I did not ask for any code or help with homework. :blink: you are wery wrong... :bleh:

All I like to do is to make this interesting topic (because I think it is interesting) that will help people better understand programming, coding, algorithms, etc...

I have almost done planning stage, and will post it later.

Now, back to requirements:

Program should be made my using Huffman encoding and binary threes.

To start lets first take a look how does computer stores files.

Smallest piece of information that program stores is 1 byte, which is made of 8 bites. Each bite can have one of two values: 1 (true) or 0 (false). Combining these you can get 256 different characters out of 8 bits (28).
As example, I attached table with bits, values and then example how different combination of bits creates different numbers (which refer to ASCII table).

So each character in text file is represent by single byte, and with Huffman encoding and binary three we will change the most frequent characters to be represent with couple bits, while less used characters will be represent with more bits. This way we will save a lot of space.

So this is some sort of introduction.

Wael, thanks for the links. I'll check them tomorrow.
Rogue is offline                         Send a private message to Rogue
Reply With Quote
Old 10-11-2004, 03:52 AM   #6
Eagle of Fire
Friendly Fire
 
Eagle of Fire's Avatar

 
Join Date: Sep 2004
Location: Valleyfield, Canada
Posts: 4,892
Default

Quote:
Most of us use WinZip and other compression utilities all the time, but have you ever asked your self how does really compression utility works?
Well, in fact I did. I am no expect so I did not come up with a good answer, but I always thought that compression utilities were only reducing a file into it's most primitive definition, just like they teach you at school with algebra (taking an algoritm and reducing it at it's simpliest form).

I however have no idea whatsoever on how this could truely be done in practice...
__________________
I'm on a hot streak... Literally.
Proud member of The Abandoned since 2005.
Eagle of Fire is offline                         Send a private message to Eagle of Fire
Reply With Quote
Old 10-11-2004, 04:51 AM   #7
Wael
Hero Gamer

 
Join Date: Nov 2004
Location: Shella, Kenya
Posts: 485
Default

Quote:
Originally posted by Anubis@Nov 10 2004, 02:45 AM
Wael, thanks for the links. I'll check them tomorrow.
Yes...

Don´t know if they help though,
my knowledge in this area is quite weak-
Wael is offline                         Send a private message to Wael
Reply With Quote
Reply


Similar Threads
Thread Thread Starter Forum Replies Last Post
[supaplex] Can't Run Install Utility csteelooper Troubleshooting 2 04-12-2014 11:31 AM
Compression strider2 Tech Corner 15 10-08-2007 10:04 AM
Do you know this utility? Anonymous General compatibility fixes 3 08-05-2005 02:57 PM
Programs For Compression Unknown Hero Tech Corner 17 30-03-2005 02:43 PM
Utility Sigs - Do The Others A Favor! The Fifth Horseman Old Suggestions 0 23-02-2005 01:38 PM


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump
 


The current time is 04:43 PM (GMT)

 
Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.