Компьютерная арифметика.




[1] The digital computer is an electronic machine which contains thousands of tiny circuits characterized by the fact that they have only two states: complete and broken. A complete circuit signifies that the electricity is on, whereas a broken circuit signifies that the electricity is off. It is through the on and off states that information is transmitted by the computer. Substituting numbers for these states, one can say that 1 is on and 0 is off; this is the number system on which the computer operates. Because there are only two digits in this system, it is termed a binary system with the 0 and 1 being called bits — B from binary and it from digit. They can represent all other numbers, the alphabet, and special characters such as $ and #.

[1] Цифровой компьютер – это электронная машина, которая включает в себя тысячи крохотных цепей, характеризуемых тем фактом, что они могут находиться только в двух состояниях: замкнутом и разомкнутом. Замкнутая цепь означает, что электричество есть, тогда как разомкнутая цепь показывает, что электричества нет. Через состояния, когда электричество есть и когда нет, информация передаётся компьютером. Замещающие цифры для этих состояний можно описать как 1 – включена цепь, и 0 – выключена; это система счисления, на которой работает компьютер. Из-за того, что в этой системе только две цифры, она называется двоичной системой счисления, а 0 и 1 называются битами (bits) – буква “B” от слова «binary» (бинарный, двоичный), а буквы “it” от слова «digit» (цифровой). Они могут представлять все другие числа, алфавит, и специальные символы, такие как $ и #.

[2] In our everyday arithmetic, we use the decimal system, which is based on ten digits — 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. In the decimal system, multiplication by ten would yield the following results:

[2] В нашей повседневной арифметике мы пользуемся десятичной системой счисления, которая основана на десяти цифрах – 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. В десятичной системе счисления умножение на 10 приводит к следующим результатам:

10 = (100 x 0) + (101 x l)

100 = (100 x 0) + (101 x 0) + (102 x 1)

1000 = (100 x 0) + (101 x 0) + (102 x 0) + (103 x 1)

In tabulating this, we notice that we multiply by 10 each time we move a number one column to the left; that is, we increase the base number 10 by the power 1.

Занеся результаты в таблицу, мы заметим, что мы, умножая на 10 каждый раз, двигаем цифру на один столбец влево; то есть мы увеличиваем степень числа 10 на единицу.

(103) (102) (101) (100)
1000 100 10 1

1 (1)

1 0 (10)

1 0 0 (100)

1 0 0 0 (1000)

Therefore, 652 in the decimal system is equal to 2 + 50 + 600:

Следовательно, 652 в десятичной системе счисления равняется 2 + 50 + 600:

100 10 1

2 (1 x 2)

5 0 (10 x 5)

6 0 0 (100 x 6)

[3] Since the binary system is based on two digits, 0 and 1, we multiply by 2 instead of by 10 each time we move a number one column to the left. So to convert binary to decimal, we use the base number 2 with sequentially increasing powers.

[3] Так как двоичная система счисления основана на двух цифрах, 0 и 1, мы, умножая на 2 вместо 10 каждый раз, двигаем число на один столбец влево. Поэтому, чтобы преобразовать двоичное число в десятичное, мы используем основание числа 2 с последовательно увеличивающейся степенью.

(23) (22) (21) (20)

8 4 2 1

As an example, the decimal number 1 is 0001 in binary.

Как пример, десятичное число 1 в двоичной системе будет 0001.

8 4 2 1 (decimal) (десятичное)

0 0 0 1 (l x l)

The decimal number 2 is equal to 1 x 2 plus 0 x 1 or 0010 in binary.

Десятичное число 2 равняется 1 x 2 плюс 0 x 1 или 0010 в двоичной системе.

8 4 2 1

0 0 1 0 (0 x 1) plus (1 x 2) ((0 x 1) плюс (1 x 2))

The decimal number 3 is equal to 1 x 1 plus 1 x 2 or 0011 in binary.

Десятичное число 3 равняется 1 x 1 плюс 1 x 2 или 0011 в двоичной системе.

8 4 2 1

0 0 1 1 (0 x 1) plus (1 x 2) ((0 x 1) плюс (1 x 2))

Let us tabulate the decimal numbers 0 to 15 in the binary system.

Давайте составим таблицу десятичных чисел от 0 до 15 в двоичной системе счисления.

(23) (22) (21) (20)

8 4 2 1

0 0 0 0 (0)

0 0 0 1 (1)

0 0 1 0 (2)

0 0 1 1 (3)

0 1 0 0 (4)

0 1 0 1 (5)

0 1 1 0 (6)

0 1 1 1 (7)

1 0 0 0 (8)
1 0 0 1 (9)

1 0 1 0 (10)

1 0 1 1 (11)

1 1 0 0 (12)

1 1 0 1 (13)

1 1 1 0 (14)

1 1 1 1 (15)

[4] The binary system is very tedious for humans, especially in the handling of long numbers, and this increases the possibility of committing errors. To overcome this limitation, two number systems were developed which are used as a form of shorthand in reading groups of four binary digits. These are the octal system with a base of 8, and the hexadecimal system with a base of 16. CDC computers use the octal system, whereas IBM computers use the hexadecimal.

[4] Двоичная система счисления очень трудна для людей, особенно в обращении с большими числами, это увеличивает возможность совершения ошибок. Чтобы преодолеть это ограничение, были разработаны две системы счисления, которые используются в форме условных обозначений в читабельных группах по четыре двоичные цифры. Это восьмеричная система счисления с основанием числа 8 и шестнадцатеричная система счисления с основанием числа 16. Компьютеры фирмы CDC используют восьмеричную систему счисления, тогда как компьютеры фирмы IBM – шестнадцатеричную.

[5] The table above shows that four binary digits may be arranged into 16 different combinations ranging from 0000 to 1111. This forms the basis of the hexadecimal system. To represent these binary combinations, the system uses the digits 0 to 9 and 6 letters of the alphabet: A, B, C, D, E, and F. Following is a table that shows the relationship between the binary, the octal, the hexadecimal, and the decimal systems.

[5] Таблица выше показывает, что четыре двоичные цифры могут быть упорядочены в 16 различных комбинациях от 0000 до 1111. Это формирует основу шестнадцатеричной системы. Чтобы представить эти двоичные комбинации, система использует цифры от 0 до 9 и 6 букв алфавита: A, B, C, D, E и F. Ниже – таблица, которая показывает связь между двоичной, восьмеричной, шестнадцатеричной и десятичной системами счисления.

Decimal Hexadecimal Octal Binary

0 0 0 0000

1 1 1 0001

2 2 2 0010

3 3 3 0011

4 4 4 0100

5 5 5 0101

6 6 6 0110

7 7 7 0111

8 8 10 1000

9 9 11 1001

10 A 12 1010

11 B 13 1011

12 C 14 1100

13 D 15 1101

14 E 16 1110

15 F 17 1111

[6] On some computers, addition is the only arithmetic operation possible. The remaining arithmetic operations are based on the operation of addition (+): subtraction (—) can be thought of as the addition of negative numbers; multiplication (x) is repeated addition; division (÷) is repeated subtraction. How do we add in the binary system? There are four basic rules of addition which we must remember:

[6] На некоторых компьютерах сложение – единственная возможная арифметическая операция. Оставшиеся арифметические операции основаны на операции сложения (+): вычитание (—) может быть записано как сложение отрицательных чисел; умножение (x) – повторяющееся сложение; деление (÷) – повторяющееся вычитание. Как мы складываем в двоичной системе? Есть четыре основных правила сложения, которые мы должны запомнить:

1 + 0 = 1

0 + 1 = 1

0 + 0 = 0

1 + 1 = 0 and carry 1 or 10 (read from the right to the left as zero-one). (и 1 в уме или 10 (читается справа налево как ноль-один).

Here is an example:

Вот пример:

Binary (Двоичная) Decimal (Десятичная)

1110 14

1000 8

10110 22

 

Unit 20

Упражнение 20

Flowcharting.

Построение блок-схем.

[1] So far we have dealt mainly with computers, but now it is imperative that we find out how a program is written. In all activities involving computers, it is necessary that the programmer is aware of what the machine is doing and what a program is supposed to do. As previously mentioned, flowcharting, one of the steps in programming, indicates the logical path the computer will follow in executing a program; it is a drawing very much like a road map. Flowcharting is not restricted to the preparation of programs in a particular language and should be done for each major problem before the writing of the program is attempted. If the finished program does not run as it should, the errors are more easily detected on the flowchart than in the maze of words, characters, and numbers that make up the computer program. In order to develop a flowchart successfully, a programmer should be aware of the sequence of steps needed to obtain a correct solution to a problem.

[1] Не так давно мы имели дело преимущественно с компьютерами, но сейчас крайне важно выяснить, как программа пишется. Во всей деятельности, включающей работу компьютеров, необходимо, чтобы программист знал, что машина делает и что программа планирует делать. Как ранее было рассмотрено, построение блок-схем, один из шагов программирования, показывает логический путь, по которому компьютер последует в процессе выполнения программы; это словно набросок дорожной карты. Построение блок-схем не ограничивается подготовкой программ на специфическом языке, а должно выполняться для каждой важной задачи до написания самой программы. Если законченная программа не работает так, как должна, ошибки проще обнаружить на блок-схеме, чем в лабиринте слов, символов и чисел, которые составляют компьютерную программу. Чтобы успешно разработать блок-схему, программист должен обдумать последовательность шагов, необходимых для получения верного решения задачи.

[2] There are two ways of making a flowchart: the freehand version and the neater, more readable version. In the former version, the graphic outlines are simply jotted down as the steps of the program are worked out. This is quite satisfactory if the flowchart is not intended to be kept as a permanent record. However, if a permanent, neater and more readable flowchart is needed, the latter method whereby a template, a sheet of plastic with all the flowcharting symbols cut into it, is used.

[2] Есть два способа построения блок-схемы: рисование от руки и чёткая, удобочитаемая версия. В первом способе графические выходные линии просто записываются как шаги программы по мере её выполнения. Это достаточно неплохо, если блок-схема не будет храниться как постоянный документ. Однако, если требуется постоянная, чёткая и удобочитаемая блок-схема, применяется последний метод, шаблон, лист пластика со всеми блок-схемными знаками, помещёнными на нём.

[3] The following symbols should be used for the purpose of uniformity. The first and last symbol is . This is the terminal symbol which indicates the beginning or the end of a program. The word 'START' must be inserted inside the figure if it is the beginning of the program and 'STOP' if it is the end of the program. The figure in the form of a parallelogram is used as an input/output symbol. It indicates that something is either brought to or taken from the program. The rectangular symbol stands for processing and indicates a place in the program where action is taken. In a program, to indicate that a decision has to be made, the diamond-shaped symbol is used. The decision is usually in the form of a question that must be answered by either 'yes' or 'no'. Finally, the arrows are used to show the flow or direction in which the different actions in the program are performed.

[3] Следующие знаки должны использоваться с целью единообразия. Первый и последний знак – это . Это терминальный знак,который показывает начало или конец программы. Слово «НАЧАЛО» должно быть вставлено в рисунок, если это начало программы, а слово «СТОП» – если это конец программы. Рисунок в виде параллелограмма используется как знак ввода/вывода. Он показывает, что что-то либо вносится в программу, либо берётся из неё. Прямоугольный знак означает обработку и показывает место в программе, где выполняется действие. В программе, чтобы показать, какое решение надо принять, используется ромбовидный знак . Решение представляется обычно в виде вопроса, на который надо ответить либо «да», либо «нет». Наконец, стрелки используются, чтобы показать движение или направление, в котором выполняются различные действия в программе.

[4] It should be noted that a flowchart is not a program, but only a step in the preparation of a program, and is used in determining how to set up and write the program. However, if the problem is not understood, neither the flowchart nor the program can be done correctly. It is possible for two programmers, working separately, to write programs to solve the same problem and come up with flowcharts and programs that may be altogether different.

[4] Следует отметить, что блок-схема – это не программа, а лишь шаг в подготовке программы, и используется для того, чтобы определить, как составить и написать программу. Однако, если задача не понятна, ни блок-схема, ни программа не могут быть сделаны правильно. Возможно для двух программистов, работающих раздельно, написать программы для решения одной и той же задачи и сравнить блок-схемы и программы, которые могут быть совершенно разными.

[5] After a program has been worked out, it is usually written down and kept with a copy of the flowchart along with detailed instructions for the use and interpretation of the program. This procedure is part of what is referred to as program documentation. If documentation isn't available, it is always possible to work backwards and make a flowchart from an application program. It may be necessary to create a new flowchart when the original one is missing, in order to understand the program for which it was a preparatory step.

[5] После отработки программы она обычно записывается и хранится с копией блок-схемы наряду с детальными инструкциями по использованию и описанием работы программы. Эта процедура – часть того, что называется программной документацией. Если документация недоступна, то всегда есть возможность работать в обратном направлении и составить блок-схему из прикладной программы. Может быть необходимо разработать новую блок-схему, когда оригинальная утеряна, чтобы понять программу, для которой это был подготовительный этап.

[6] Flowcharting is one of the first things a student programmer is taught, because a flowchart shows how a person thinks about a problem. In other words, it is through this that a new programmer reveals his or her logical and analytical ability, which is a must in programming.

[6] Построение блок-схемы – одна из первых вещей, которой учат студентов-программистов, потому что блок-схема показывает, как человек думает о задаче. Другими словами, именно через неё новичок-программист показывает свои логические и аналитические способности, которые нужны в программировании.

Exercises

Упражнения

Main idea

Основной смысл

Which statement expresses the main idea of the text? Why did you eliminate the other choices?

Какое предложение наилучшим образом выражает основную идею текста? Почему вы исключили другие варианты?

1. Every programmer must know how to flowchart.

1. Каждый программист должен знать, как строить блок-схему.

2. Program documentation specifies what the program is supposed to do.

2. Программная документация определяет, что программа должна делать.

3. Flowcharting is a basic step in programming. (+)

3. Построение блок-схемы – начальный шаг в программировании. (+)



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-11 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: