NEXT CAME ASSEMBLY AND MACRO CODE
Few of us have actually programmed in machine code. But I did for 5 years use a cross assembler with no macro capabilities, download the code, load address, and run. This was an extremely unusual opportunity to learn computer architecture at the lower level and achieve knowledge and experience that is rare but extremely insightful in truly understanding computer technology at the lowest levels of operation.
So someone had to sit down and write a program that would allow programmers to write math operation codes in some meaningful way such as ADD, MULTIPLY, SUBTRACT, etc. In reality the actual names were ADD, MUL, SUB, etc. keeping it simple, readable, productive, and manageable. From here the software would read the personal program, translate the conceptual operation key to the required binary code, and fill in the other fields of operands, etc.
The next step was to allow programmers to build sequences of repetitive instruction in a short hand that is often called Macro. This speed up the programming and was a good first step but still not enough.
NEXT CAME HIGHER LEVEL LANGUAGES
The core issue at this point was that the programmer had to totally understand the specific computer architecture and could not focus on the programming requirements enough. Also programs could not be moved from one computer type to another.
So people began to create programming languages and standards so that we could have a program called a compiler that would translate from any standard computer language to each of the architectures that were available. This began in 1956 with ForTran (Formula Translation – a mathematical scientific oriented language) and soon followed by COBOL (COmmon Business Oriented Language). These language were constructed and tailored to the kinds of problems they were intended to solve. At this point the programmer could focus on his/her problems and requirements and not all of the computer headaches. Major step forward.
So people began to create programming languages and standards so that we could have a program called a compiler that would translate from any standard computer language to each of the architectures that were available. This began in 1956 with ForTran (Formula Translation – a mathematical scientific oriented language) and soon followed by COBOL (COmmon Business Oriented Language). These language were constructed and tailored to the kinds of problems they were intended to solve. At this point the programmer could focus on his/her problems and requirements and not all of the computer headaches. Major step forward.
This led to a massive explosion in the number of languages.