A computer program is a list of instructions to be executed by a microprocessor. These instructions are in the form of binary numeric codes and although we can enter them directly into the computer in this form it is more convenient to first enter them as corresponding alphabetic codes in a separate "source" file. We can then use another "assembler" program to convert them into their numeric equivalents. These alphabetic source codes are the simplest form of a computer language known as "assembly language."
For example suppose we wish the microprocessor to add two numbers together at specific locations in the computer's memory and store the result in another location. The assembly language to do this might look something like this:
MOV AX,A (move the data in memory location A into processor location AX)
MOV BX,B (move the data in memory location B into processor location BX)
ADD AX,BX (add AX and BX together and place the result in AX)
MOV C,AX (move the result from location AX into memory location C)
Running this piece of code through an assembler will produce the numeric codes that the microprocessor understands and will look something like this:
If this seems tedious it is. It is also the reason higher level languages like Pascal, COBOL, C# and VB.NET were invented. For example the above logic written in Pascal would look like this:
C := A + B;
or (more meaningfully) like this:
Customer.BalancePayable := Account.CurrentBalance + Account.InterestDue;
From an economic perspective a computer language should allow a programmer to express business logic in a way that is easy to read, understand and maintain and at the same time minimize the possibility of errors.