<i>I don't want to explain each of the 8548 output bytes in detail here</i><p>I wonder how many people these days (including developers) would think "that's not so big for a Hello World program", and then change their mind after watching some 4k demos... 8KB might not sound like much in this era of gigabytes and terabytes, but <i>eight thousand bytes</i> is still, in absolute terms, quite a bit of data, and enough to do plenty more interesting things. Executable formats have become more complex with their headers, which are mostly unavoidable, but seeing empty space in the majority of the file is somewhat sad.<p>Here are some smaller Hello World programs to examine...<p><a href="http://seriot.ch/hello_macho.php" rel="nofollow">http://seriot.ch/hello_macho.php</a> - OS X<p><a href="http://timelessname.com/elfbin/" rel="nofollow">http://timelessname.com/elfbin/</a> - Linux<p>...but they're still somewhat larger than the 20 bytes of the DOS version (95 ba 07 01 cd 21 c3 48 65 6c 6c 6f 20 57 6f 72 6c 64 21 24.)