Материал: English_for_IT_I-II_years

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Machine Languages

Machine languages are the first generation of programming languages; these languages consist of instructions the computer is actually built to execute. Since at the hardware level computers understand only binary notation (1s and 0s), programming with a machine language requires writing out the binary values of the program instructions. A simple machine-language command might be 10101001 10101010 1011101011010100." Machine languages vary from one model of computer to another, as each model of processor is built differently. Machine languages are difficult to understand and use, so they are rarely used directly by programmers today. Since the computer understands only machine language, however, any program written in any other language must be translated into machine language in order to run.

Assembly Languages

Assembly languages are the second-generation programming languages and first to use alphanumeric symbols to write code. The creation of assembly languages depended on the development, using machine language, of an assembler. An assembler is a program that translates the assembly code into machine language. It is necessary to have one assembler for each kind of assembly language and for each kind of computer used.

Assembly languages are the simplest improvement over machine language; their commands are simple mnemonic codes that stand for the binary instructions of machine code. When programmers need to deal with the computer directly, they use assembly language; because it is so close to the hardware level, it is possible to write very efficient programs in assembly language. That same closeness to the hardware level, however is what makes assembly language difficult to use for large programming projects. Therefore, most assembly programming today is used for writing small modules that can be included in larger programs written in more convenient languages.

Procedural Languages

Procedural languages are the third-generation languages. They are also called high-level languages because they represent a higher level of abstraction from machine code than do assembly languages. Procedural languages employ more human-like words, and each has its own set of syntax rules. They are also more efficient, allowing the programmer to express with one statement what would take several commands in machine language. They are called procedural languages because they allow the programmer to create procedures that implement structured programming. Procedural languages are by far the most widely used programming languages.

The development of procedural languages was started by the invention of translation programs that could convert the syntax of the high-level language to machine code that the computer could execute. These translators are compilers and interpreters.

A compiler converts an entire program written in a high-level language to machine language, storing it in what is called executable file, to be run later at the user's discretion. The original code is then called the source code, and the machine-language code is called the object code.

An interpreter reads each high-level program statement, then translates it to machine language and instructs the computer to execute the statement immediately. It creates no object code and no executable file; from the programmer's or user's standpoint, the computer executes the original code. This method of execution gives the programmer more immediate control of the machine and lends itself to an interactive method of programming and refining code and testing it immediately. The interpreter program does not permanently change the code, allowing users or programmers to make additions and other modifications to the program more easily. However, interpreting the code takes more processing than running a compiled program, so interpreted programs generally run slower than compiled programs.

Some of the most frequently used procedural languages include the following: BASIC, PASCAL.

Problem -Oriented Languages

Fourth -generation languages, the problem-oriented languages, are a mixed bag of strategies to make programming easier. They were created to solve specific user and programming problems rather than to achieve the broad general usability of procedural languages. This group of languages includes object-oriented languages, application generators, authoring systems, HyperTalk, and query languages.

Object-Oriented Programming.

Object-oriented programming (OOP) takes a different approach to creating applications. Traditional programming treats data and instructions as separate items with the instructions controlling the data; the instructions are active controls on passive data. In object-oriented programming, an object is created by joining data and instructions in a process known as encapsulation. Once an object is made and debugged, it will work. Objects can then be linked together with messages (calls to the object to implement its instructions on its data) to form full-fledged applications.

Query languages.

Query languages are used specifically within the realm of databases. These languages are designed to instruct the computer to retrieve and manipulate database information and can be used to develop specific applications based on databases, such as database publishing and project management.

Natural languages

The fifth and final generation of programming languages does not involve the generation of any code. These natural languages use the normal grammar of the spoken language to create programs. Some natural programming languages include Intellect, Broker, and Explorer. Although they don't yet meet, heir inventors' ideal, they are showing promise, and continued advances in this area may someday radically change the way we use computers and how we create programs.

Task 2. Answer the questions to the text.

1. How are programming languages classified? 2. What are low-level languages? 3. What are high-level languages? 4. What does programming with a machine language require? 5. What are specific features of the second-generation programming languages? 6. Why are procedural languages called high level languages? 7. What do compilers and interpreters do? 8. Can you name any procedural language? 9. What languages are included in the group of the fourth-generation languages? 10. Is it possible to use the spoken language to create programs? 11. When are query languages used? 12. What languages do not involve the generation of any code?

Task 3. Give the equivalents for the terms.

1. авторська система; 2. виконуваний файл; 3. процедурні мови; 4. буквено-цифрові символи; 5. програма асемблер; 6. структурне програмування; 7. набір синтаксичних правил; 8. прикладна програма; 9. мова запитів; 10. двійковий код; 11. вихідна програма, програма на мові високого рівня; 12. мову програмування сценаріїв

Task 4. Mark the following as True or False.

1. The third-generation programming languages are machine languages that use binary codes of ones and zeroes to control the activities of the computer. 2. Procedural language is a type of a high-level programming language that requires each computer instruction to be listed and carried out in sequence. 3. The second-generation programming languages require less specificity in terms of the order in which the computer instructions are carried out. They are referred to as nonprocedural languages. 4. Machine languages, assembly languages are known as low-level languages because they interact directly with the computer’s hardware, using machine-oriented codes rather than English-like commands. 5. High-level programming languages use an English like approach that is easier to use than machine or assembly languages. 6. Programs created with these languages can be used on more than one type of computer with little modification.

Task 5. Fill in the blanks with the words from the box.

to provide, to operate, to guide, to initiate, to evolve, to communicate, to know, to establish, to tell, to type

A programming language is, in many ways much like the languages we use ... (1) with each other. A programming language ... (2) a special set of rules and a vocabulary that have to do with a computer’s operation. Before communication with a computer can be ... (3), the rules and specialised vocabulary of the programming language must ... (4) to both the computer programmer and the computer itself. A programming language has words, symbols and rules of grammar (known as the syntax of the language). A computer programmer, ... (5) within the structure of these rules, develops an instruction ... (6) the computer’s operation. The resulting set of instructions is the computer program. Often these instructions ... (7) the computer what to do when the user of the program ... (8) some kind of action (when, for example, the user ... (9) in characters from the computer’s keyboard). Over the years, computer programming methods ... (10) through the development of successive ‘generations’ of programming languages, with each new generation bringing new functionality and ease-to-use.

Task 6. Translate the sentences into Ukrainian.

1. It is necessary that machine languages should be designed for a specific type of computer processor. 2. The programmer insisted that each instruction of the source program should be translated to a machine language. 3. I wish the computer program based on these fourth-generation methods required fewer statements. 4. It is time a computer user could write statements that are very much like a normal human language. 5. If I used this high-level programming language, I would develop the report based on the information stored in the computer. 6. If the programmer should use this natural language approach, tell him he doesn’t have to learn special rules of statement entry. 7. If he had used a database query language, the requests would have been phrased as normal human-language statements. 8. If it were not for your help, I shouldn’t be able to carry out the task in time. 9. But for the slow execution of the program, this instruction-by-instruction method would have become appropriate to find errors and to fix them immediately. 10. If PC users needed application programs created for farmers and mechanics, for scientists and teachers, they would buy commercial software to meet their individual needs. 11. I wish I had known FORTRAN to apply it for scientific application. 12. Had I used the Internet, I would have got the required information earlier.

Task 7. Translate the following sentences into English.

1. Існує безліч мов програмування. 2. Високорівневі мови програмування в чомусь нагадують людські мови. 3. Вони розроблені так, щоб людині якомога легше було створювати на них програми і читати їх. 4. Інструкції високорівневого мови програмування набагато складніше ніж ті прості інструкції, які може виконувати центральний процесор комп'ютера. 5. Мови, близькі за структурою до мови інструкцій процесора, називаються мовами низького рівня. 6. Вони орієнтовані на конкретні комп'ютери, тому набори їх інструкцій для різних комп'ютерів різні. 7. Хоча мова асемблера дуже близький до мови, яку розуміє комп'ютер, створені на ньому програми перед виконанням вимагають деякого простого перетворення. 8. Щоб комп'ютер міг виконати асемблерну інструкцію, її потрібно перекласти в послідовність нулів і одиниць. 9. Інструкції мови асемблера та їх еквіваленти, що складаються з нулів і одиниць, для різних комп'ютерів різні. 10. Про зрозумілих комп'ютеру програмах у формі послідовностей нулів і одиниць кажуть, що вони написані на машинній мові (машинному коді). 11. Нам принципово важливо відмінність між машинним мовою та мовами високого рівня, подібними С ++. 12. Полягає воно в тому, що програма мовою високого рівня повинна бути перетворена (трансльований) в машинний код, і тільки тоді комп'ютер зможе її зрозуміти і виконати.

Task 8. Work in groups of 3 (A, B, C). Read your text extract and answer the following questions:

1) What is this programming language designed for?

2) What are its advantages/disadvantages in comparison with the other programming languages?

MAJOR LANGUAGES

Group A

Ada - is an advanced, modern programming language, designed and standardized to support and strongly encourage widely recognized software engineering principles: reliability, portability, modularity, reusability, programming as a human activity, efficiency, maintainability, information hiding, abstract data types, concurrent programming, object-oriented programming, etc. Ada does not allow the dangerous practices or effects of old languages, although it does provide standardized mechanisms to interface with other languages such as Fortran, Color, and C.

BARSIC (Business And Research Scientific Interactive Calculator) is new programming language for education, research and business. It is a powerful tool to develop applications for mathematical simulation, data processing and visualization, numerical calculations and computer animation. Maine field of BARSIC applications is Physics and Mathematical Physics

Источник: https://studfile.net/preview/16433455/