Оригинал на английском

Electronic computers

Electronic circuits work a thousand times more rapidly than nerve cells in the human brain. A problem that takes the human brain 2 years in order to solve it can be solved by a computer in one minute. The heart of the electronic computer is its transistors. In order to work a computer must have instructions; this is called “programming”.

There are two main types of electronic computers: analogue and digital. In analogue computers problems are solved by analogy, the problems which analogue computers can solve are the following: mechanical forces, speeds, rotations, etc. Analogue computers are used for investigation of mechanical processes, in general, they are used for scientific and engineering problems in which great accuracy is not required but answers accurate enough are required quickly.

In digital computers problems are solved by counting. They may be very large and powerful. All the data connected with the problem which must be solved are converted into electrical pulses by very fast electronic switches and these pulses are stored and counted. With modern electronic devices a single switching operation can take place in a few nanoseconds (a nanosecond is a thousand – millionth of a second).

What is a microprocessor?

A microprocessor is the central arithmetic and logic unit of a computer, together with its associated circuitry, scaled down so that it fits on a single silicon chip (sometimes several chips) holding tens of thousands of transistors, resistors and similar circuit element. A typical microprocessor chip measures half a centimeter on a side.

The task of the  microprocessor is to receive data in the form of strings of binary digits (0’s and 1’s), to store the data for later processing, to perform arithmetic and logic operations on the data according to the previously stored instructions and to deliver the results to the user through an output mechanism such as an electric typewriter, a cathode – ray – tube display or a two – dimensional plotter. A typical microprocessor would consist of the following units: a decode and control unit (to interpret instructions from the stored program), the arithmetic and logic unit, or ALU (to perform arithmetic and logic operations), registers (to serve as an easily accessible memory for data which are frequently manipulated), an accumulator (a special register closely associated with the ALU), address buffers (to supply the control memory with the address from which to take the next instruction) and input/output buffers (to read instructions or data into the microprocessor or to send them out). 

Computer programming

Programming is the process of preparing a set of coded instruction which, when executed by a digital computer, yield the solution of a specific problem or perform specific functions. Each computer and each programming language has its own unique repertoire, method of operation, etc. These should be studied and understood before preparing a program on a specific language for execution by a specific computer.

A computer has the ability to automatically execute a program stored within itself. During execution of the program, the computer performs various digital operations (adding two numbers, moving data in and out of storage, reading in or printing out data, etc.) If the stored program is changed, the actions of the computer change. Thus, the computer actions depend on both the configuration of the computer hardware (the physical computer equipment) and the software (the programs stored within the computer). 

A given computer capability can be provided either by hardware alone or by a combination of hardware and software. The choice of a given mixture of hardware and software depends on factors such as cost, speed, ease of maintenance, and flexibility.

There are three nominal levels of programming language: machine language, assembler language, and compiler language.

Machine Language.

In the machine – language programming level, the programmer writes the program exactly as stored in the computer. Very little programming is done at this level as it is extremely tedious, and when errors are found it is hard to correct them. 

The machine – language level is useful in the initial operation of a computer when no other techniques are available, in repair of a faulty computer, and in the debugging of programs when other techniques fail and the program must be examined at the machine – language level.

Перевод на русский

Электронные вычислительные машины.

Электронные схемы работают в тысячу раз быстрее, чем нервные клетки человеческого мозга. Проблема, на решение которой человеческому мозгу требуется 2 года, может быть решена компьютером за одну минуту. Сердцем электронного компьютера являются его транзисторы. Для того чтобы компьютер работал, у него должны быть инструкции; это называется “программированием”.

Существует два основных типа электронных вычислительных машин: аналоговые и цифровые. В аналоговых компьютерах задачи решаются по аналогии, задачи, которые могут решать аналоговые компьютеры, следующие: механические силы, скорости, вращения и т.д. Аналоговые компьютеры используются для исследования механических процессов, в целом, они используются для решения научных и инженерных задач, в которых не требуется большая точность, но требуются достаточно точные ответы быстро.

В цифровых компьютерах задачи решаются путем подсчета. Они могут быть очень большими и мощными. Все данные, связанные с проблемой, которая должна быть решена, преобразуются в электрические импульсы с помощью очень быстрых электронных переключателей, и эти импульсы сохраняются и подсчитываются. С современными электронными устройствами однократная операция переключения может выполняться за несколько наносекунд (наносекунда – это тысячно-миллионная доля секунды).

Что такое микропроцессор?

Микропроцессор — это центральный арифметический и логический блок компьютера вместе со связанными с ним схемами, уменьшенный таким образом, что он помещается на одном кремниевом чипе (иногда нескольких чипах), содержащем десятки тысяч транзисторов, резисторов и аналогичных элементов схемы. Типичный микропроцессорный чип имеет размер в полсантиметра со стороны.

Задача микропроцессора состоит в том, чтобы получать данные в виде строк двоичных цифр (0 и 1), сохранять данные для последующей обработки, выполнять арифметические и логические операции с данными в соответствии с ранее сохраненными инструкциями и предоставлять результаты пользователю через механизм вывода например, электрическая пишущая машинка, дисплей с электронно–лучевой трубкой или двумерный плоттер. Типичный микропроцессор состоял бы из следующих блоков: блока декодирования и управления (для интерпретации инструкций из сохраненной программы), арифметико-логического блока, или ALU (для выполнения арифметических и логических операций), регистров (для использования в качестве легкодоступной памяти для данных, которыми часто манипулируют), накопитель (специальный регистр, тесно связанный с ALU), адресные буферы (для подачи в управляющую память адреса, из которого следует взять следующую инструкцию) и буферы ввода/вывода (для считывания инструкций или данных в микропроцессор или для их отправки).

Компьютерное программирование.

Программирование — это процесс подготовки набора закодированных инструкций, которые при выполнении цифровым компьютером приводят к решению конкретной задачи или выполняют определенные функции. Каждый компьютер и каждый язык программирования имеют свой собственный уникальный репертуар, способ работы и т.д. Они должны быть изучены и поняты до подготовки программы на определенном языке для выполнения на конкретном компьютере.

Компьютер обладает способностью автоматически выполнять программу, хранящуюся в нем самом. Во время выполнения программы компьютер выполняет различные цифровые операции (сложение двух чисел, перемещение данных в хранилище и из него, считывание или распечатка данных и т.д.). При изменении сохраненной программы изменяются и действия компьютера. Таким образом, действия компьютера зависят как от конфигурации компьютерного оборудования (физического компьютерного оборудования), так и от программного обеспечения (программ, хранящихся в компьютере).

Заданные возможности компьютера могут быть обеспечены либо только аппаратным обеспечением, либо комбинацией аппаратного и программного обеспечения. Выбор того или иного сочетания аппаратного и программного обеспечения зависит от таких факторов, как стоимость, скорость, простота обслуживания и гибкость.
Существует три номинальных уровня языка программирования: машинный язык, язык ассемблера и язык компилятора.

Машинный язык

На уровне программирования на машинном языке программист записывает программу в точности так, как она хранится в компьютере. На этом уровне программируется очень мало, поскольку это чрезвычайно утомительно, и при обнаружении ошибок их трудно исправить.
Уровень машинного языка полезен при начальной эксплуатации компьютера, когда другие методы недоступны, при ремонте неисправного компьютера и при отладке программ, когда другие методы дают сбой и программа должна быть проверена на уровне машинного языка.