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 поддерживать, поощрять