Even tiny little programs like "Hello World" take up several KB when written in C and compiled with GCC.
I've also written Hellow World in x86 assembly, and it took up something like 86 bytes.
Why the big difference? cstdlib? Can't the compiler throw out code that isn't used?