Computer programming in plain language, is giving instructions to a computer to do something. Technically it is actually giving instructions to microprocessor - brain of a computer. If instructions are only for microprocessor, why a computer is so complicated with numerous types of hardware accessories?
All other hardware are to support function of feeding instructions to microprocessor, and conveying result from microprocessor to its user - which can be a human or another computer or hardware.
Every time you want a computer to do something you have to give instructions. Luckily people are smart enough to figure out that since we might want computer to repeat same process over and over again, we better store instructions into a permanent storage - hard disk, CD, flash memory etc.
The stored instructions are called COMPUTER PROGRAM or computer software and act of arranging instructions is called COMPUTER PROGRAMMING and person that is responsible to arrange instructions is called .....COMPUTER PROGRAMMER ...do you see pattern here?
On lowest level, a microprocessor only understands a limited set of instructions. To a microprocessor instruction sets and data are read in “binary” form.
Binary means 2 states – such as in on and off, high and low, left and right. To make it easier mathematically, binary normally is represented by 1 and 0. Electrically, 1 represents high voltage and 0 represents low voltage.
On hard disk, program instructions look just like a stream of 1s and 0s. But a microprocessor reads in stream one chunk at a time. Among normal chunk sizes are 8, 16, and 32. Chunk size is normally referred to as instruction size.