Read the text, try to understand it
There are alternatives to programming in machine and assembly language. Computer scientists have developed other languages which do not have these deficiencies. Languages are referred to as high-level or low-level, with high-level languages being closer to natural languages (such as English) and low-level languages being closer to machine language. The diagram below shows the relative position of several computer languages:
Low-level languages High-level languages
English
C Pascal
JAVA
BASIC
Assembly Language
Machine Language
Because there still exists a one-to-one correspondence between each assembly language statement and a specific machine instruction, assembly languages are regarded as low-level languages.
Programs written in high-level languages have a number of advantages. First, they are easier to learn, understand, and modify than machine and assembly language programs. Second, high-level languages are not dependent from the machine language of any one type of computer. Programs written in high-level languages can be run on any machine.
The type of programming which we must choose for a concrete project depends on the type of program that we want to make. For example, when programming is a driver for an operating system obviously we will use low-level programming. Whereas when programming great applications usually a higher level it is used, or a combination of critic parts written in low level languages and others in higher.
Although there are languages that are clearly low-level, like Assembler, whose instructions vary according to the processor which the code is made for, and others of high level, like the JAVA, that is totally independent from the platform. The C++ language is in a middle term, since it can interact directly with the hardware almost without any limitation, as well as with the support of suitable specific libraries, works like one of the more powerful high-level languages.
Computers can run only programs written in the language that they understand, their individual machine language. In order to support a higher-level language, a special computer program must be developed that translates the statements of the program developed in the higher-level language into a form that the computer can understand – in other words, into the particular instructions of the computer.
High-level program Machine language program
Translator
The words and word combinations to the text:
deficiency недостаток
to refer относить, ссылаться, упоминать
closer to ближе к
natural languages естественные языки
low-level languages языки низкого уровня
to exist существовать
a one-to-one correspondence взаимно однозначное соответствие
advantage преимущество
to run управлять, выполнять
to depend on зависеть от
obviously очевидно
critic parts опасные части
to vary менять, изменяться
according to в соответствии с
to support поддерживать, поощрять