Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Доп. юниты.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
137.22 Кб
Скачать

Unit 1. Programming languages

I. Read the following words and word combinations:

CPU, operating system, hardware, encode, language, binary numbers, execute, sequence, microprocessor, chip, machine code, perform, speed up, require, follow, mathematical, divide, screen, develop, formula, all-purpose, include, features, available, processing, acronym, interpreted, inclusion.

II. Before you read the text try to answer these questions:

1. What is a programming language?

2. What is the difference between a programming language and human language?

3. What is the difference between high-level and low-level programming languages?

III. Read and translate the following text. Programming languages

Any programming language, that is encoded in binary numbers and understood by the computer, contains a series of commands that create software. A program written in this type of language also runs faster. It is easier for programmers to use languages consisting of words and commands, but they must be interpreted the computer can operate them. An executable program is a sequence of extremely simple instructions known as machine code. These instructions are specific to the individual computer’s CPU and associated hardware, for example, Intel Pentium and Power PC microprocessor chips have different machine languages and require different sets of code to perform the same task. Machine code instructions are binary (sequences of 0s and 1s) and their number depends on the computer configuration.

In the 1940s, the first electrically powered computers appeared. Their limited speed and memory capacity forced programmers to create assembly language programs. It was soon discovered that programming in assembly language required more intellectual effort and was error-prone. Assembly language uses commands that are easier for programmers to understand than machine-language ones. Each machine language instruction has an equivalent command in assembly language. For example, in assembly language, the statement «MOV A, B» instructs the computer to copy data from one location to another. The same instruction in machine code is a string of sixteen 0s and 1s. Once an assembly-language program is written, it is converted into a machine-language program by another program called an assembler. Assembly language is fast and powerful because of its correspondence with machine language. It is still difficult to use, however, because assembly-language instructions are a series of abstract codes. In addition, different CPUs use different machine languages and therefore require different assembly languages. Assembly language is sometimes inserted into a high-level language program to carry out specific hardware tasks or to speed up a high-level program.

High-level languages were developed because of the difficulty of programming in assembly languages. They are easier to use than machine and assembly languages because their commands resemble natural human languages and are not CPU-specific (they contain general commands to work on different CPUs). For example, if a programmer writing in the high-level Pascal programming language wants to display a greeting card, he should include only the following command: Write («Hello, User»). Like assembly language instructions, high-level languages also must be translated. A compiler interprets a high-level program into a CPU-specific machine language. American naval officer and mathematician Grace Murray Hopper helped develop the first commercially available high-level software language, FLOW-MATIC, in 1957. Hopper is famous for inventing the term «bug», which indicates a computer malfunction. American computer scientist John W. Backus of International Business Machines (IBM) developed FORTRAN, an acronym for FORmula TRANslator. It became a standard programming language because it could process mathematical formulas. FORTRAN and its variations are still in use today. Beginner’s All-purpose Symbolic Instruction Code, or BASIC, was developed by American mathematicians John Kemeny and Thomas Kurtz at Dartmouth College in 1964. The language was easier to learn than its predecessors and became popular due to its friendly, interactive nature and its application on early personal computers (PCs). Unlike other languages, BASIC is interpreted, i.e., it is turned into machine language line by line as the program runs.

Among modern programming languages are Java and C++. Java is a programming language originally developed by Sun Microsystems and released in 1995 as a core component of Sun's Java platform. The language derives much of its syntax from C and C++ but it has a simpler object model and low-level features. Java applications are typically compiled to byte code which can run on any Java virtual machine. The original and reference implementation of Java compilers, virtual machines and class libraries were developed by Sun in 1995. The Java language, initially called Oak (after an oak tree that stood outside Gosling's office and later renamed to Java, from a list of random words) was created by James Gosling in June, 1991. Gosling's goal was to implement a virtual machine and a language that had a similar style to C/C++. The first public implementation was Java 1.0 in 1995. With the advent of Java 2, new versions had multiple configurations created for different types of platforms. On 13 November 2006, Sun released most part of Java as free software under the terms of the GNU General Public License (GPL). On 8 May 2007, Sun completed the process making Java's core code open source.

C language also has its own history. In 1970, Ken Thompson, immersed in the development of UNIX at Bell Labs, created the B language (later it was called C). It was developed for a specific DEC PDP-7 machine and UNIX system. In 1971, Denis Ritchie, from the Bell Labs team, began the development of a B compiler which was able to generate executable code. In 1980, Bjarne Stroustrup, from the Bell labs, began the development of the C++ language that would receive formally its name at the end of 1983, when the first manual was published. In October 1985, the first commercial release of the language appeared as well as the first edition of the book «The C++ Programming Language» by Bjarne Stroustrup.

The syntax of Java is largely derived from C++. However, unlike C++, which combines the syntax for structured, generic and object-oriented programming, Java was built exclusively as an object-oriented language. As a result, almost everything is an object and code is written inside a class. Comparing Java and C++, it is possible to implement similar functionality in C++. Programming language evolution continues in both industry and research.

IV. Answer the following questions:

1. What components does a programming language contain?

2. Which programs are considered to be executable?

3. What does the term «a machine code» mean?

4. Why is it difficult to use assembly language?

5. What is the reason for developing high-level languages?

6. Why did BASIC become popular?

7. Who developed Java?

8. What do you know about C language?

V. Decide whether the following statements are true or false. It they are false, correct them.

1. Programming languages contain the series of commands that create software.

2. Languages that use words are more complex for a programmer.

3. Machine code instructions are binary.

4. The first public implementation was Java 10 in 1995.

5. B language was developed for a specific DEC PDF-7 machine.

VI. Find in the text English equivalents to the following word combinations:

серія команд для створення программного забезпечення; залежить від конфігурації; послідовність дуже простих інструкцій; виконувати специфічні завдання; нагадують звичайну людську мову; прискорювати функціонування високорівневої програми; на відміну від інших мов; несправна робота; перше видання книги; важко використовувати.

VII. Which words in the text have the same meaning as:

develop, quicker, too, need, similar, start, get, look like, study, ought to, show, sophisticated, objective, operate.

VIII. Complete the following sentences:

1. Programming languages contain the series of commands that create _________.

2. Each machine language instruction has an equivalent command in ______________.

3. Assembly language is fast and powerful because of its ___________________.

4. High-level languages were developed because __________.

5. FORTRAN is a programming language that can ___________.

IX. Define the following terms:

software, hardware, microprocessor, chip, data, assembly, compiler, display, CPU, malfunction, IBM, bit.

X. Imagine that you are a participant of a scientific conference. Make a report on the topic «High-level programming languages». While preparing it use the information from the text.