<P> Originally, operating systems were programmed in assembly; however, modern operating systems are typically written in C . </P> <P> A stored - program computer requires an initial computer program stored in its read - only memory to boot . The boot process is to identify and initialize all aspects of the system, from processor registers to device controllers to memory contents . Following the initialization process, this initial computer program loads the operating system and sets the program counter to begin normal operations . </P> <P> Independent of the host computer, a hardware device might have embedded firmware to control its operation . Firmware is used when the computer program is rarely or never expected to change, or when the program must not be lost when the power is off . </P> <P> Microcode programs control some central processing units and some other hardware . This code moves data between the registers, buses, arithmetic logic units, and other functional units in the CPU . Unlike conventional programs, microcode is not usually written by, or even visible to, the end users of systems, and is usually provided by the manufacturer, and is considered internal to the device . </P>

Describe each of the four steps used in the process of creating a computer program