Problem: To create the first assembler without an assembler to assemble the assembly source code.
1) Using computer hardware panel toggles to create a machine code program one bit at a time that is to read one 80-byte card from the card reader into memory, then gives control to the first byte of memory representing the first instruction of this 80-byte program.
2) Cause the hardware to punch out the card representing your hard work. This card contains your bootstrap loader.
3) Direct the hardware to load (IPL) from the card reader. This program then reads an additional card deck of machine instructions from the card hopper into memory. This next card deck represents the code for the first assembler that you painstakingly designed and punched out by hand.
4) Control is given to the assembler which occupies memory. The assembler reads more cards which represent an assembly source code program.
5) The assembly program gets translated to machine object code and then is directed to be punched out to the card punch.
6) Remove the card deck and wrap a rubber band around it, then use a marker to write the name of the program you just created (such as calculator, payroll, sales analysis, etc.). Now you have an object program that performs some desired function.
7) When you need to assemble the next program you first load the assembler deck and follow it with the assembly source code. The output, if successful is the object code to the next program.
8) Consider using your new assembler to write an even better assembler or create a higher level language compiler in assembly code.
9) You are on your way !