Долго рассказывать не буду,просто покажу как делаю я. Итак...
a) Если архив один или немного.
Используем программу 7- zip (http://www.7-zip.org). Выделяем нужные файлы, которые необходимо засунуть в архив, щёлкаем правой кнопочкой и в меню выбираем 7-zip -> Добавить к архиву… (Add to archive.
В настройках архиватора выставляем:
- Формат архива – Zip
- Уровень сжатия – Ultra
- Метод сжатия – Deflate
- Размер словаря – 32Kb
- Размер слова – 255

Жмём ОК. Ждём пока архив упакуемся. Радуемся минимальному размеру zip архива (пока ничто не ужимает простые zip архивы лучше чем 7-zip).
б) Если архивов много или очень много :)
Например мы жмём кучу ромов для какой-нибудь системы, чтобы записать на CD и потом играть.
Если ромов очень много (более 1000) лучше их разбить по папкам (по алфавиту или как вам удобнее). Теперь, например, с помощью WinRAR пакуем в архивы в отдельный архив для каждого рома. Как это сделать? Всё просто! В закладке “Files” ставим галку на “Put each file to separate archive”. Ещё нам необходимо выставит в первой закладке (“General”):
- Archie Format – zip
- Compression method – Store (чтобы сэкономит время, всё равно потом пережимать будем).
- Галочку на Test Archive Files (мало ли криво чего запакуется).
В русской версии WinRAR это выглядит так:

Вкладка Files:

Теперь жмём OK и ждём пока всё упакуется.
Далее нам необходима очень полезная утилита zipmax. Скачиваем, распаковываем, запускаем.
Теперь берём наши ромы и с помощью drag&drop перетаскиваем их в окно программы. Ждём пока ромы перепакуются.

Думаю с надписями в zipmax разберётесь, там несложно.
************************************************