Почитал ветку и вспомнил, как в году так 2001, когда баловался всякими дизассемблерами и изучением всякого рода форматов файлов и в частности winpe (основа любого EXE в то время, да и сейчас наверное ничего не изменилось), то задался ради эксперимента написанием проигрывателя мультимедиа минимально возможного размера под windows (чтобы была поддержка кодеков установленных в системе и проигрывались и видео и аудио). Так вот минимальная программа в формате exe, если писать на ассемблере выравнивалась в размер 4кб, то есть даже из одной машинной инструкции - все равно тратилось 4кб. Но поскольку я уже был знаком с тонкостями всякого рода замен инструкций jne на jmp в чужих программах
, то я понимал, что внутри стандартного заголовка winpe(4кб) есть много пустот. Вот и решил в hex редакторе поместить код плеера в эти пустоты и минимально, что удалось добиться - это размера в 1кб.
Плеер был конечно простым и удалось его написать потому в windows был такой системный API (winapi), который позволял вызывать системные функции поддержки мультимедия в графическом окне приложения с поддержкой всей инфраструктуры кодеков и прочих прелестей мултимедиа. Около 10-20 строчек на ассемблере был весь плеер.
Собственно по прочтении этой темы, захотелось поделиться с вами опытом.
Ну а итог всего этого - зря вы все эти уменьшения и минимизации делаете на мухах в ущерб пользователю. Ну и если минимизируете по честному, то пишите велосипед свой, но только до каждого байта выжимайте оптимизацию.