A computer programming language is actually a highly abstracted language that is converted down into a very very basic language that computers actually understand.
Basically, computers really only understand machine language, which is a basic language implemented in binary (1's and 0's). One level above this is assembly language, which is a very primitive language that is at least human readable.
In a high level language, we might have something like:
Person.WalkForward(10 steps)
In Machine code it would be:
Lift Persons Left Foot Up
Lean Forward
Place Left Foot Down
Lift Right Foot up
Lean Forward
Place Right Foot Down
etc
Now obviously, nobody wants to write programs that tell the computer every little repetitive thing to do so we have tools called compilers.
A compiler takes a higher level language that is easier for a human to understand, and converts it down to machine code, so that the computer can run it.