We know that a program running in memory has two major components in code (also commonly known as a text for historical reasons) and data. We also know, however, an executable does not live its life in memory, but spends most of its life as a file on a disk. This file is in what is referred to as a binary format, since the bits and bytes of the file are to be interpreted directly by processor hardware.