Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Инфинитивный оборот с предлогом for

Поиск

В этом обороте перед инфинитивом стоит существительное в общем падеже или местоимение в объектном падеже с предлогом for. На русский язык переводится чаще всего придаточным предложением:

For the decision to be correct, all facts must be considered. Чтобы решение было правильным, нужно учесть все факты.

I. Comment on the forms of the infinitives. Translate the sentences into Russian.

1. He seems to be playing tennis now.

2. Carol didn’t want to bother anyone.

3. I’m sorry to have done it.

4. For about 10 days we seemed to have been living on nothing but cold meat and bread.

5. The work seems to have been done in haste.

6. Have a sandwich. They’re there to be eaten.

7. She understood what he must be going through, and she wanted to help him.

II. State the function of the Infinitive in the sentences. Then translate them into Russian.

1. It is never late to study.

2. There is no matter to discuss.

3. He said it to save your life.

4. I can speak English well.

5. He claims to be an expert on the subject.

6. He was the first to come.

7. Her desire was to have a dog.

III. Change the sentences so as to use the Complex Object as in the example.

Example: I believe that Shockley is a great scientist. – I believe Shockley to be a great scientist.

1. I admit that my accusation was right.

2. The method which will be used is reliable.

3. The measurements that must be made should be accurate.

4. The work that must be done is of great importance.

5. The equipment that is to be installed is very effective.

6. I consider that this problem is very important.

7. The firm can’t expect that unskilled men will become experienced engineers overnight.

IV. Write the appropriate form of the infinitive.

1. I went ...to have gone..

2. She has been playing...........................

3. He had worked...........................

4. It was read...........................

5. They have been informed...........................

6. He is writing...........................

7. It is fixed...........................

8. He will type...........................

9. He was cleaning...........................

10. She will be sleeping...........................

V. Fill in the correct form of the infinitives.

1. My boss expects me... to work... (work) overtime.

2. The suspect claimed................. (watch) TV at the time of the robbery.

3. Jill's teacher is worried about her as she seems (have) difficulty coping with her studies.

4. Young children often ask............................................. (take) to the zoo.

5. The burglars must have come in through the window as the lock seems (force).

6. "I happen.. (pass) my driving test two years ago, you know," he said.

7. Robert is expecting (inherit) a large house when his grandfather dies.

8. "Mark appears (overtake) John on the last lap. Yes, he's passed him!"

9. Leslie seems........................................................... (enjoy) her new job.

10. I'd like.................................... (book) a return ticket to Denver, please.

11. Stop pretending.................. (eat) your food – just finish it up, please.

12. The manager seems.................. (get) impatient with the interviewee.

 

VI. Rephrase the following using the infinitive or the – ing form as in the example:

1. You have to eat your carrots. I want ...you to eat your carrots.

2. I must exercise more often. I want

3. She has to take her medicine every day. The doctor wants

4. I saw him give you the letter. I remember

5. He has to talk to me politely. I want

6. They mustn't go to bed late. I don't want

7. We visited Sue before Christmas. I remember

VII. Paraphrase the following sentences using Complex Subject.

1. It was expected that the members of the committee would come to an agreement. 2. It was reported that many buildings had been damaged by the fire. 3. It is reported that the delegation has left London. 4. It is expected that many people will attend the meeting. 5. It seems that she knows French perfectly well. 6. It happened that he was at home at that time. 7. It appears that the house was built in the eighteenth century. 8. It seemed that he knew the subject well. 9. It is not likely that they will return soon. 10. It is certain that they will be here on Monday. 11. It is unlikely that the meeting will be postponed. 12. It is very likely that his article will be published in the newspaper.

 

VIII Translate into Russian, paying attention to the infinitive constructions.

1. A cargo of 5,000 tons of wheat has been sold to a foreign company, payment to be made in cash in exchange for the bill of lading and insurance policy. 2. The sellers charted a steamer for the transportation of the goods, the days at the port of loading not to commence before October 20. 3. By a contract dated August 15, A. sold to B. a quantity of timber, the goods to be shipped in two parcels. 4. The seller must provide documents entitling the buyer to obtain delivery of the grain and payment must be made in exchange for such documents, such payment to be made without prejudice to the buyer’s rights under the contract.


 

Appendix.

Supplementary Texts

Major computer applications

 

A student learns French by playing a computer game in which the

object is to successfully rent an apartment in Paris.

Instead of building a physical model, an aerospace engineer saves millions of dollars and thousands of hours by testing an airframe concept on a computer.

His electronics-industry counterpart, using powerful computer-aided-design (cad) tools, creates a computer that would have required the work of 40 engineers two decades ago.

A production manager uses an off-the-shelf expert system to help her troubleshoot a complex piece of machine-tool manufacturing equipment.

A marketing executive stores thousands of data points from a massive survey of consumer preferences and correlates them with a list of product characteristics.

A publishing executive has begun a survey of computer technology be­cause he senses a market for new kinds of information products.

Each of these people (and thousands more like them) has a vital interest in knowing what computers can (and cannot) do: if these managers and professionals are to succeed, they also need to know when the various rich promises of the technology will be realized in usable programs and devices. For the electronics and aerospace engineers improvements in computer speed are extremely important. The production manager would like to know when she will have a diagnostic system that can learn different malfunction patterns as they evolve. The publishing executive faces a question of when and how to get on the technology curve: he must decide whether to convince skeptical and traditionally minded colleagues to embark on the development of software products for hardware that has only just begun to reach the market.

The answers to these questions and many other challenges will unfold as computer science evolves. But that is too late for the men and women in business, government, the professions and academic life who must make plans now for how computers will be used. After all, these managers and professionals, although generally aware of the potential of computers, are not computer experts or even literate in the simplest computer lan­guages and uses.

Peripherals

 

Terms that are often used when people talk about computers are hardware, software and peripherals.

The computer hardware can best be described as the actual parts that go together to make up the computer such as wires, switches, electronic circuits, microprocessors and anything else that is involved in the working parts.

Software refers to the programs that are input into the computer. Disks and cassettes are often referred to as software once they have computer programs on them but they are really peripherals.

The peripherals of the computer are the devices for input, output or storage of data and include the keyboard, visual display unit, cassettes, disk drives and printers. The VDU is also known as the monitor and the program and the results of the processing can be seen on this, as well as the data entered. The printer will produce the print-out of the results of the processing. This is often referred to as hard copy.

The highest quality of printer available is the daisy wheel. This consists of a wheel with flexible stems radiating from the centre. The letters are well-defined and can be read clearly. The printer moves bi-directionally printing both ways from left to right and then right to left. Remember that what is to be printed already exists in the memory of the computer and the daisy wheel does not have to type in sequence as would be expected from a human brain. The carriage therefore need not waste time returning at the end of each line.

The dot matrix is usually faster than the daisy wheel. The printer has a print head consisting of a row of needles. This moves speedily over the place where a letter has to be printed using dots to make up the letter. The needles print on to a special typewriter ribbon. The quality of print-out is not of a very high standard and would not generally be used at high business levels. However, it is often used for the production of rough drafts. Characters of different sizes can be built up with dot-matrix printers and some may have two-colour ribbons.

An ink-jet printer forms dot matrix characters by applying ejected droplets of ink, vibrated at an appropriate frequency, towards a special absorbent paper. A charged electrode is placed near the jet, so that each droplet carries a charge. By a special electrostatic technique the ink drops can be directed to particular parts of the paper. The printers use information that is stored digitally.

Thermal printers require a heat sensitive paper which is marked by a heated needle-like writing implement known as a stylus.

Laser printers are very fast and can use different sizes of paper. Since they are non-impact printers they are very quiet and can produce good graphics. The laser printer works by beaming a laser on to an electrically charged drum which creates an invisible image on the drum, revealed when a special substance, called toner, is poured over it. When the paper is brought into contact with the drum, the image melts on to the paper as it is heated.

The keyboard is where the data, or information, is input into the computer. It is usually arranged like an ordinary typewriter keyboard with a number of other keys added which carry out special functions.

Some computer programs display what are called icons on the computer screen. The icons may represent items of furniture in an office for instance. The user is able to instruct the computer by the use of a tiny moveable device known as a mouse which is connected to the computer by a cable and can be moved about the top of a desk. The desk represents the VDU screen and as the mouse moves about, it moves with the short bright line, known as the cursor, on the screen.

A. Expert systems

 

An expert system is a computer system which is able to draw reasoned conclusions from a body of knowledge in a particular field, and communicate to the user the line of reasoning by which it has reached a conclusion.

Objectives of Expert Systems

The purpose of an expert system is to provide reasoned advice at a comparable level to that provided by a human expert. This capability has two main aims: to enhance the abilities of leading experts in certain fields, and to make a high level of expertise available to less highly qualified practitioners.

The first aim takes note of the fact that some areas of human expertise, such as the diagnosis and treatment of cancer, are so complex that even the leading experts can benefit from the systematic, logical approach provided by a computer. A computer system will take into consideration all the knowledge at its disposal in the consideration of every case, and will follow known lines of reasoning exhaustively, no matter how complex they are. These capabilities complement the skills of a human expert, which are generally based on a mixture of knowledge, experience, insight and intuition.

The second aim attempts to raise the level of skill of professionals who are not themselves leading experts. A large number of medical practitioners fall into this category, particularly in developing countries. When expert systems become widely available, the skills of these practitioners should be significantly enhanced.

In some expert systems, the expert knowledge is fixed into the system when it is constructed. In others, there is a built-in ability to learn from experience, including from mistakes made by the system.

Applications of Expert Systems

A small number of expert systems are in use at present. These are mainly in the following fields:

§ Medicine: Expert systems are in use for diagnosis and the planning of treatment in specialized fields. These include certain types of cancer, kidney diseases and some viral infections. Expert systems are also used to plan and monitor experiments, particularly in genetics. Expert systems for use by general practitioners in diagnosis and treatment are under investigation, but none are in widespread use at present.

§ Geological Prospecting: Expert systems have already proved their worth in oil prospecting, and are now being used for other minerals.

§ Designing Computer Configurations: Digital Equipment Corporation uses an expert system to design the computer configuration required when an order for a VAX minicomputer is placed. The expert system ensures that a compatible set of equipment is delivered, which meets the requirements of the customer.

§ Chemistry: The analysis of chemical structures from mass spectrometer data is often done with the aid of an expert system.

§ Legal Advice: Expert systems which give general legal advice, and assist in such matters as making Social Security claims, are at present under development.

 

Operating systems

 

Types of Computer Operation

Computers vary considerably in size, capability and type of application. Similarly, there is a wide variety of ways in which they can be operated. Each type of computer operation requires a different type of operating system.

Most microcomputers and some minicomputers can only process one program at a time. This is single program operation, and it requires only a simple operating system. The operating system supervises the loading and running of each program, and the input and output of data. Any errors occurring are reported.

Next in complexity is batch processing. A number of programs are batched together, and then run as a group. Although the programs are actually run one at a time, input and output from various programs can overlap to some extent. Programs are normally queued up for batch processing, and the operating system starts the next program in the queue as soon as sufficient computing resources are available for it.

Similar to batch processing, but much more sophisticated, is multiprogramming. At any one time, a number of programs are on the computer at various stages of completion. Resources are allocated to programs according to the requirements of the programs, and in order to maximize the usage of the different resources of the computer.

A particular type of multiprogramming, which is becoming increasingly popular, is transaction processing. Transaction processing is designed for systems which must run large numbers of fairly small programs very frequently, where each program run deals with a single transaction such as a withdrawal from a cash terminal.

 

The Nature of an Operating System

Like the question 'What is a computer? the question 'What is an operating system?' can be answered at several levels.

Firstly, an operating system is a program, or set of programs. Operating systems vary in size from very small to very large, but all are pieces of software. In the past, almost all operating systems were written in a low level language. Currently, many operating systems are partly or completely written in a high level language.

Secondly, an operating system is, by virtue of its name, a system. It is a collection of parts, working together towards sonic common goals. The goals, or objectives, of an operating system are discussed below.

Thirdly, a computer may be regarded as a set of devices, or resources, which provide a number of services, such as input, processing, storage and output. The operating system of the computer may be regarded as the manager of these resources. It controls the way in which these resources are put to work.

Finally, an operating system is the lowest layer of software on a computer. It acts directly on the ‘raw’ hardware of the computer. It supports other layers of software such as compilers and applications programs. Part of the task of an operating system is to 'cushion' users from the complexities of direct use of the computer hardware.

In summary, an operating system is a program, or set of programs, driving the raw hardware of a computer, which manages the resources of the computer in accordance with certain objectives, providing higher layers of software with a simplified computer.

The Development of Operating Systems

Operating systems are as old as electronic computers. It was realized from the start that the hardware of a computer on its own is very difficult to use. Various supervisor, executive or monitor programs were written to make aspects of using a computer easier. As time went by, these programs became larger, more complex, and, unfortunately, more cumbersome and less reliable.

Today big operating systems face a new challenge, from cheap, plentiful microcomputers, which require only the simplest of monitor programs for their operation.

The problem with input and output is that different input/output devices have different characteristics, and run at different speeds. For example, a line printer outputs characters one line at a time, whereas a keyboard accepts input one character at a time. A line printer transfers characters more than one hundred times as fast as a keyboard.

The input/ output control module of an operating system deals with these problems by making input and output device independent from the point of view of the programmer. To a programmer, all devices have the same characteristics, and are instructed in exactly the same way. The operating system deals with the special characteristics of each type of device.

 

Computer structure

 

The definition of a computer is as follows:

A computer is a collection of resources, including digital electronic processing devices, stored programs and sets of data, which, under the control of the stored ргоgrams, automatically inputs, outputs, stores, retrieves and processes the data, and may also transmit data to and receive it from other computers. A computer is capable of drawing reasoned conclusions from the processing it carries out.

From the hardware point of view, the essential features of this definition are 'a collection of … digital electronic processing devices'.

Computers vary enormously in size, processing power and cost. Nevertheless, all computers consist of one or more functional devices, each carrying out one or mоrе of the tasks described above. Each device performs a precisely specified task, and connects to other modules via defined interfaces. Modules of the same type of computer may be exchanged, and new modules added, without modification to their internal workings. The phrase plug-compatible describes units which may be connected in this manner.

Mainframes, minis and micros

Very broadly speaking, there are three classes of computers, according to their size and complexity. These classes are known as mainframes, minicomputers (or minis) and microcomputers (or micros).

Mainframes are large computers, comprising a number of free-standing units. Mainframes are generally housed in specially designed, air-conditioned rooms. Connections between the units are made by wires running beneath the floor of the room. Mainframes are very powerful, and support a number of applications running concurrently. Examples of mainframes are the ICL 2900 series, the IBM 3000 series and the Burroughs B6700 series. Very large mainframes are known as supercomputers. These include the Cyber 205 and the Cray 2.

Minicomputers are smaller than mainframes, with several functional devices mounted in a rack in a single unit. Minicomputers do not generally require an air-conditioned environment. They are often to be found in laboratories, factories and offices. Minicomputers can support more than one application running concurrently, though not as many as mainframes. The Digital Equipment Vaxseries is the most popular minicomputer. Others are made by Prime, Data General and Hewlett Packard.

Microcomputers are the newest addition to the computer family. They are small and cheap, and are (generally) contained in a few small units. Their distinguishing feature is that processing is carried out on a single microprocessor chip. Although they are very versatile, microcomputers саn only support one application at any one time. Examples of microcomputers are the IBM PC, the Apple Macintosh and the Research Machines Nimbus.

The classification of computers into mainframes, minis and micros is only very approximate. Computers are getting smaller and more powerful all the time. Micros are being introduced with the capability of minis only a few years old. Minicomputers are incorporating microprocessors to assume the capability of mainframes.

 

What is a high level language?

A high level language is a problem oriented programming language, whereas a low level language is machine oriented. In other words, a high level language is a convenient and simple means of describing the information structures and sequences of actions required to perform a particular task.

A high level language is independent of the architecture of the computer which supports it. This has two major advantages. Firstly, the person writing the programs does not have to know anything about the computer on which the program will be run. Secondly, programs are portable, that is, the same program can (in theory) be run on different types of computer. However, this feature of machine independence is not always achieved in practice.

In most cases, programs in high level languages are shorter than equivalent programs in low level languages. However, conciseness can be carried too far, to the point where programs become impossible to understand. More important features of a high level language are its ability to reflect clearly the structure of programs written in it, and its readability.

High level languages may be broadly classified as general-purpose or special-purpose. General-purpose languages are intended to be equally well suited to business, scientific, engineering or systems software tasks. The commonest general-purpose languages are Algol 68 and PL/1. The language Ada also falls into this category. Because of their broad capabilities, these languages are large and relatively difficult to use.

The commonest categories of special-purpose languages are commercial, scientific and educational. In the commercial field, Cobol still reigns supreme, while Fortran is still the most widely used scientific language. In the computer education field, Basic is widely used in schools, with Logo and Prolog gaining popularity. Pascal is the most popular language at universities. Pascal is a powerful general-purpose language in its own right.

Another way of classifying high level languages is as procedural and declarative languages. Procedural languages state how a task is to be performed, often breaking programs into procedures, each of which specifies how a particular operation is to be performed. All the early high level languages are procedural, with Algol, Pascal and Ada as typical examples.

Declarative programming languages describe the data structures and relationships between data relevant to a particular task, and specify what the objective of the task is. The process by which the task is to be carried out is not stated explicitly in the program This process is determined by the language translation system. Prolog is an example of a declarative programming language.

The defining characteristics of a high level language are problem-orientation and machine independence.

The first objective of a high level language is to provide a convenient means of expressing the solution to a problem. There are two other common ways of doing this - mathematics, and natural languages, such as English. Most high level languages borrow, without much modification, concepts and symbols from mathematics. The problem with natural languages is that in their full richness and complexity, they are quite impossible to use to instruct a computer. Nevertheless, high level languages use words from natural languages, and allow these words, and mathematical symbols, to be combined according to various rules. These rules create the structure of programs written in the language. The result, in a good high level language, is a clear structure, not too different from our customary ways of thinking and expressing ourselves.

This discussion leads to the second objective of high level languages - simplicity. Simplicity is achieved by a small set of basic operations, a few clear rules for combining these operations, and, above all, the avoidance of special cases.

The third objective of a high level language is efficiency. Programs in the language must be able to be translated into machine code fairly quickly, and the resulting machine code must run efficiently. This objective almost always conflicts with the first two. Most high level languages reflect a compromise between these objectives.

The final objective is readability of programs. Many languages allow for the inclusion of comments or additional 'noise' words, to make programs easier to read. However, a good high level language should enable programs to be written which are clear to read without additional comments. Regrettably, some high level languages ignore this objective altogether.

 

Features of High Level Languages

The character set used by a language is the set of all characters which may be used in programs written in the language. Almost all languages use letters and decimal digits.

Most high level languages use reserved words. These are words which have a specific meaning in programs, and may not be used by the programmer for any other purpose. For example, in Pascal, reserved words include read, if …then … else and write. Some languages permit abbreviations of reserved words. The size and complexity of a language can he measured by the number of reserved words it uses. For example, Occam has 28 reserved words, while Ada uses more than sixty.

Perhaps the most important feature of a high level language is the way in which programs in it are structured. The structure of a program is specified by a set of rules, called rules of syntax. Different languages have different ways of expressing these rules. In some, the rules are written in concise English. Others use syntax diagrams, while others (notably Algol) use a notation originally called Backus-Naur form, now known as BNF.

Much attention has been devoted, in the development and use of high level languages, to the way in which programs are split up into blocks or modules, each module doing a specific task. In some languages, notably Fortran, these blocks are called subroutines, in others such as Algol and Pascal, these blocks are called procedures or functions. Because of the careful structuring of programs into blocks which they permit, Algol, Pascal and similar languages are called block-structured languages.

Procedures, functions or subroutines are activated via calls from other parts of the program. For example, if a program contains a function to calculate the square root of a given number, this function is called every time a square root is required in the rest of the program. Most languages permit a procedure or function to call itself, a feature known as recursion. This is an extremely powerful feature for handling such data structures as lists, stacks and trees, and for such tasks as analyzing the structure of arithmetic expressions.

An important aspect of high level languages is the way in which they handle the data items and data structures used in a program. Broadly speaking, data items fall into two categories: variables, which can change their value during the running of a program, and constants, which keep the same value. In most program languages, variables are given names, or identifiers. In some languages, such as Fortran and Basic, constants are referred to by their values, while in others, such as Algol and Pascal, constants are also given identifiers.

Some program languages require that all variables be declared before they are used. Generally, variables are declared by listing them at the start of the procedure or subroutine in which they are to be used. An attempt to use a variable which has not been declared results in an error.

This gives rise to the idea of the scope of a variable. The scope of a variable is the part of a program in which it may be used. Variables which are declared for use in one procedure only are called local variables. Their scope is limited to that procedure. Variables which are declared for use in the whole program are called global variables. Their scope is the whole program. The intention of providing each variable with a scope is to enable a program to be broken up into 'watertight' blocks, or modules. Each block uses only the information it requires. This simplifies the task of designing, writing and testing programs, and limits the effects of errors.

Almost all high level languages include the notion of data types. In Basic language, the standard data types are numeric and character strings. These types can be incorporated into arrays, which are tables of items of the same type. In most high level languages, numbers can be integers or real numbers (generally stored in floating point form). PL/I even permits the number of significant figures in a number to be declared. Another common standard data type is Boolean, with the range of values ‘true' and 'false'. Data types can contain single elements, or be structures such as arrays, stacks, lists, trees, etc.

A pointer is a data type which contains the address of another data item. Pointers can be used to construct such data structures as lists and trees. For example, a list of peoples names could be constructed as follows:

 

name name name etc.

pointer pointer pointer

 

Pointer types are only available in certain high level languages, notably Algol and Pascal. The problem with pointers is that careless use of them can result in program errors which are very difficult to detect and correct.

Some languages permit the programmer to declare his or her own data types, built up from standard data types. Records can be constructed, containing data of different types. The following section of a Pascal program shows how this can be done.

 

type name=array (1...20) of char;

day= (mon, tues, wed, thur, fri, sat, sun);

pay_record=record

employee-name: name;

payrate: real;

hours-worked: •integer;

pay: real;

payday: day end;

 

In the above example, char is a standard data type. Variables of type char have values consisting of a single character. The data type 'name' is an array of twenty characters. Variables of the data type 'day' can have one of the values listed in the brackets.

The purpose of data types is to make programs more meaningful, and to provide additional checks for errors. For example, if an attempt is made to add an integer variable to a character variable, then an error will be caused.

 

 

Computers and algorithms

 

PART 1

We live in the age of the computer revolution. Like any revolution, it is widespread, all-pervasive, and will have a lasting impact. It is as fundamental to our economic and social order as was the industrial revolution. It will affect the thinking patterns and life style of every individual.

The industrial revolution was essentially the augmentation of man's physical powers, the amplification of man's muscle. The pressing of a button could cause a large machine to stamp a pattern in a metal sheet. The movement of a lever could result in a heavy scoop scraping out a mass of coal. Certain repetitive aspects of man's physical activities were replaced by machines.

By analogy, the computer revolution is the augmentation of man's mental powers; the amplification of man's brain. The pressing of a button can cause a machine to perform intricate calculations, to make complex decisions, or to store and retrieve vast quantities of information. Certain repetitive aspects of man's mental activities are being replaced by machines.

What is a computer, that it can have such a revolutionary impact? A first step toward an answer is to say that a computer is a machine which can carry out routine mental tasks by performing simple operations at high speed. The simplicity of the operations (typical examples are the addition or comparison of two numbers) is offset by the speed at which they are performed (about a million a second). The result is that large numbers of operations can be performed, and significant tasks can be accomplished.

Of course, a computer can accomplish only those tasks which can be specified in terms of the simple operations it can execute. To get a computer to carry out a task one must tell it what operations to perform—in other words, one must describe how the task is to be accomplished. Such a description is called an algorithm. An algorithm describes the method by which a task is to be accomplished. The algorithm consists of a sequence of steps which if faithfully performed will result in the task, or process, being carried out.

The notion of an algorithm is not peculiar to computer science—there are algorithms which describe all kinds of everyday processes.

In general, the agent which carries out a process is called a processor. A processor may be a person, a computer, or some other electronic or mechanical device. A processor carries out a process by obeying, or executing, the algorithm which describes it. Execution of an algorithm involves execution of each of its constituent steps.

From the discussion above it is apparent that a computer is simply a particular kind of processor. Of course, it is rather a special kind of processor; otherwise computers would not have had such a rapid and significant impact on so many areas of life. The features which make it special are described below.

(1) the central processing unit (CPU), which performs the basic operations,

(2) the memory, which holds;

(a) the algorithm specifying the operations to be performed

(b) the information, or data, upon which the operations are to act;

(3) the input and output devices (l/0 devices), through which the algorithm and the data are fed into the memory, and through which the computer communicates the results of its activities.

These components comprise the computer hardware: that is, the physical units from which a computer is built.

 

PART 2

(1) Speed

The CPU of a typical computer can perform between one million and ten million operations a second. Although these operations are very simple the formidable speed with which they are performed means that even quite complex algorithms, requiring large numbers of operations, can be executed very quickly. By comparison the human brain is very slow, so it is not surprising that people have been replaced by computers in many activities where speed is a major requirement. Human beings do, however, currently retain significant advantages over computers. For example, it appears that the brain is capable of performing many operations at once whereas (with minor exceptions) a present-day computer can perform only one operation at a time.

Despite the high speed of computers there remain many processes which are simply too time consuming to be feasibly carried out. (An example is the formulation of a winning strategy for chess by studying all chess games which could possibly be played.)

(2) Reliability

Contrary to popular mythology computers seldom make mistakes, though they do occasionally break down. The mistakes which achieve prominence in the news media, such as an electricity bill for a million dollars or a false alert about nuclear attack, are almost invariably a result of a fault in the algorithm being executed or an error in the input data. On very rare occasions an electronic fault may cause a computer to execute an algorithm incorrectly, but the probability of this is minute, and in any case such malfunctions are usually detected immediately.

A computer is in a sense a totally willing and obedient slave: it will faithfully execute the algorithm it is given, and if necessary it will do so repeatedly without complaint. Such fidelity is of course both a strength and a weakness, since the computer will execute the algorithm quite blindly, whether or not it correctly describes the process intended.

(3) Memory

One of the prime characteristics of a computer is its ability to store vast quantities of information which it can access very quickly. Memory capacities and access speeds vary widely according to the storage medium used; some computers can store several thousand million items of information, and can access some of these items in as little as 100 nanoseconds (a nanosecond is 10-9 seconds, or one thousand millionth of a second). Impressive though these figures are, they are somewhat deceptive. As we shall see later, computer memory is organized in such a way that an item of information can be retrieved only if its location in the storage medium is precisely known. This means that a lot of effort must be put into keeping track of where information is located—effort which increases both the time to design an algorithm and the time to execute it.



Поделиться:


Последнее изменение этой страницы: 2016-12-16; просмотров: 643; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.134.106 (0.01 с.)