I recommend checking out Corkami's articles/posters:<p><a href="https://code.google.com/p/corkami/wiki/PE" rel="nofollow">https://code.google.com/p/corkami/wiki/PE</a><p><a href="https://code.google.com/p/corkami/wiki/PE101" rel="nofollow">https://code.google.com/p/corkami/wiki/PE101</a><p><a href="https://code.google.com/p/corkami/wiki/PE102" rel="nofollow">https://code.google.com/p/corkami/wiki/PE102</a><p>It also has a section about the minimal size: <a href="https://code.google.com/p/corkami/wiki/PE#minimal_sizes" rel="nofollow">https://code.google.com/p/corkami/wiki/PE#minimal_sizes</a><p>Modern Windows versions refuse to run the 97 b and 133 b files from the linked article.
For those who don't know, there are several executable formats where smaller programs can be written. For instance, a .COM executable (a legacy format now [2]) can be written in just 20 bytes [1].<p>In the case of the Portable Executable (PE) format, 97 bytes is certainly an impressive feat.<p>[1]: <a href="http://www.gnostice.com/nl_article.asp?id=225&t=The_Smallest_Hello_World_Program_At_20_Bytes" rel="nofollow">http://www.gnostice.com/nl_article.asp?id=225&t=The_Smallest...</a><p>[2]: <a href="http://en.wikipedia.org/wiki/COM_file" rel="nofollow">http://en.wikipedia.org/wiki/COM_file</a>
A quick google reveals the answer, but this article would benefit from "A PE file is ..." in its introduction. Maybe it's expected that the target audience already knows this info however