Binary code is a bunch of ones and zeroes that all files are made up of. When you ZIP a file, you pull out all of those repetitions and replace them with markers or tokens. This is useful in telecommunications because a smaller file takes less time to transmit over the Internet or any network. So file transfers from one computer to another are quicker, because there's less data to send. You'll find word processor files and images will typically ZIP down to a fraction of their original size.
Pictures are particularly crunchable.
Think of all the white space in a picture of a snowstorm. If an entire row of pixels is all white, you can replace it with one token and save enormous amounts of space. Once upon a time there were formats such as LZH, ARC and ARJ among others. You'll still see those files occasionally, but they have been replaced by the enormous popularity of the ZIP format. There's a trial version for download on that site, as well as a commercial version for sale.