# The Main Concepts of Programming

Please note! This essay has been submitted by a student.

As a matter of fact, the program consists of steps that consistently perform which the PC performs some or other actions, for example, accepts characters from the user and displays them on the screen, causes the printer to print text on a paper sheet, etc. Each of the such steps is coded in a special machine language and is called a “command”, and the totality of such commands is program code.

For the first time, the idea that any pre-defined state of the system can be achieved by sequential execution of elementary commands, transferring it from one stable state to another, was proposed by an English mathematician named Alan Turing. In his essay “Computable numbers with an application for the problem” (Decision problem), he created a theoretical model that was an abstract machine (automaton) capable of performing elementary operations and transferring it from one fixed state to another fixed state. As a result, the automaton could perform simple, rudimentary operations. Such an automaton, subsequently, received in the literature the name – “Turing machine”. The main idea consisted in the mathematical proof that any given state of this automaton can be achieved by performing a finite set of certain commands from the entire fixed set (program). Thanks to this theory, later, such a science (if one may say so) science was born as programming.

Essay due? We'll write it for you!

Any subject

Min. 3-hour delivery

Pay if satisfied

Thus, programmers – people who develop software, in fact, control a personal computer with the help of written software codes, forcing them to read characters entered from the keyboard, play music, play video films, etc.

Today, there are a lot of different programs designed to perform completely different functions: arithmetic or engineering calculations, drawing, programming, playing music or movies, etc. But at the same time, each of them is not performed by itself on a personal computer , it is launched, as they say, under the control of a particular operating system.

A reasonable question arises: “Why can not each program be run independently by passing this very operating system if the program is a set of codes by means of which it is possible to control a computer?”

In fact, of course it is possible, and this is also practiced, for example, in CNC machines (numerical program control), in vending machines, etc., but there are several points that made these operating systems for personal computers and even for large computers.

The matter is that when it comes to a standard automatic machine, it performs a set of simple sequential operations, for example, to move the manipulator, take the workpiece, turn around, put the workpiece in the right place. Then the operation is repeated. All the time the machine performs the same actions on the same, one program.In the case of a PC, the user wants not only, for example, to draw in a downloaded program, he wants to listen to music simultaneously, listen to friends and relatives. The same moment of time work not with one, but with several programs at the same time.

In addition, there is another purely practical moment. Developing a program for a PC that could work independently without an operating system, it would be necessary to describe all functions of working with computer equipment in one program: reading and writing to disk, input-output from the keyboard, working with the monitor, etc. As a result, huge time costs, large software size, dependence on the hardware platform, the presence of a large number of errors and a number of negative consequences.

72
writers online