книги из ГПНТБ / Шор, И. Я. Пять бесед о вычислительной технике
.pdfони и составляют всю таблицу ум ножения в двоичной системе счисле ния. Проще не придумаешь.
Обучение числам начинают с обу чения считать до десяти. Попробуем и мы считать до десяти, но не в при вычном для нас десятичном счисле нии, а в двоичном. Правила постро ения чисел при счете те же, что и в десятичной системе: как дошли до старшей цифры (в десятичной сис теме— до «9», в двоичной — до«1»), тут же пишем «О» и переносим еди-. ницу в старший разряд. Иными.сло вами, число больше «9» в десятич ной системе и больше «1» в двоич ной нельзя записать одной цифрой, необходимо записать двузначное число (из двух цифр).
Итак, считаем до десяти. Нуль — он в любой системе нуль. Единица тоже. А как записать число 2? Та кой цифры в двоичном счислении нет, т. е. одной цифрой его не запи шешь. Так же, как сумму 9+1 в де сятичной системе можно записать только двумя цифрами: 10 (десять),
в двоичной системе 1 + 1 можно за писать тоже лишь двумя цифрами: 10 (читается не «десять», а «один, нуль»). Если в младший разряд это го числа добавим «1», то получим три в двоичном счислении:
11
Итак, «один, одни» и есть «три» в двоичном счислении. Считаем даль ше: добавляем еще единицу в млад ший разряд. Для наглядности при водим аналогичные случаи из деся тичного и двоичного счислений.
Двоичное счисление
|
11 |
Рассуждение: |
1 |
+ |
1 = 2 , |
нуль пи- |
|||
+ |
1 |
шем, |
единицу |
переносим. |
Снова |
||||
|
100 |
1 + 1= 2, |
нуль пишем, |
единицу пе |
|||||
|
|
реносим и записываем. |
|
|
|
||||
|
|
Десятичное счисление |
|
|
|
||||
|
99 i |
Рассуждение: |
9 |
+ |
1 = |
10, |
нуль пи- |
||
+ |
1' |
шем, единицу |
|
переносим. |
Снова |
||||
'100 |
9 + 1 = |
10, нуль |
пишем, |
единицу |
переносим и записываем.
6 0
Получим число «один, нуль, нуль» |
Обратный переход (от двоичного |
||||||||||
в двоичном счислении. Это 4 в |
числа к |
десятичному) |
напоминает |
||||||||
десятичном. |
Предлагаем читателю |
подсчет суммы купленных в магазине |
|||||||||
самостоятельно продолжить счет. |
продуктов |
по |
их |
ценам. |
Каждый |
||||||
А как перевести десятичное число |
разряд |
двоичного |
числа имеет свою |
||||||||
в двоичное сразу, |
не считая? |
Для |
«цену». |
Если в конкретном |
разряде |
||||||
этого достаточно |
разделить его на |
двоичного |
числа |
стоит |
«1», |
то |
|||||
2, результат деления снова разде |
«продукт куплен» и его цена войдет в |
||||||||||
лить на два, затем снова и снова, до |
общую сумму. Если в разряде нуль— |
||||||||||
получения остатка. Проиллюстри |
«продукт» |
не куплен |
и его цена |
не |
|||||||
руем это на примере перевода чис |
имеет значения. «Ценник разрядов» |
||||||||||
ла 75 в двоичное. Получили резуль |
прост: цена первого разряда 2°, вто |
||||||||||
тат перевода: |
1001011— так |
вы |
рого—21ит. д. Для наглядности при |
||||||||
глядит 75 в двоичной системе. |
|
ведем .перевод |
числа |
1001011 в |
де |
||||||
|
|
|
|
сятичную |
систему (см. табл, на |
||||||
|
|
|
|
стр. 62). Суммируя цены «купленных |
|||||||
|
|
|
|
товаров», |
получаем |
интересующее |
|||||
|
|
|
|
нас число |
в |
десятичной |
системе: |
||||
|
|
|
|
64+ 8+2+1=75. |
|
|
|
|
|||
|
|
|
|
Интересно отметить, что умноже |
|||||||
|
|
|
|
ние и сложение в двоичном счислении |
|||||||
|
|
|
|
находят |
применение не только как |
||||||
|
|
|
|
арифметические действия, но и как |
|||||||
|
|
|
|
логические |
(Булева |
алгебра). По |
|||||
|
|
|
|
добно двоичной арифметике алгеб |
|||||||
|
|
|
|
ра логики основана на выборе меж |
|||||||
|
|
|
|
ду «да» |
и «нет». |
|
|
|
|
61
Двоичное число |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
Цена товара (раз |
2 « |
|
2 « |
|
|
|
2 ° |
ряда) |
25 |
2 3 |
22 |
2 1 |
|||
Цена приобретен |
|
|
|
|
|
2 ' |
2 » |
ного товара |
2 6 |
0 |
0 |
2 3 |
0 |
Мы уже знаем, что единицы и ну ли, «запомненные» ферритовыми сер дечниками памяти машины, означа ют конкретные числа (например те, что даны в условии задачи), но толь ко в непривычной для нас двоичной системе счисления. В виде последо вательности нулей и единиц хранит оперативная память и инструкции программиста, его команды.
Команда — шаг на пути к цели
(«подсказка» четвертая)
Мы опять наблюдаем за учеником. Как осуществляет он обработку вос
принятой органами чувств информа ции, чтобы ответить на вопрос зада чи? По действиям. То есть путь к цели разбивается на ряд последова тельных шагов.
В ЭВМ путь к цели задается про граммой решения задачи. Она четко определяет, какой шаг нужно сде лать в этот момент и какой следует за ним. Каждый шаг — это одно эле ментарное действие, требующее вы полнения одной простейшей опера ции (например, сложения).
Машина, как и ученик, решает за дачу по действиям, которые опреде ляются командами. Сколь сложной ни была бы задачй, сколь громозд кой ни была !бы программа ее ре шения, в каждый отдельный момент машина выполняет одно действие, делает один шаг к цели — она вы полняет одну команду из программы.
О программировании мы еще по говорим более подробно, а сейчас остановимся на рассмотрении ко манд, которые выполняются процес сором, проследим взаимодействие
62
Кодовая |
|
Адресная |
часть |
команды |
||
частькомонды |
||||||
© О О <0 © © © |
О © © ©О Ю © © О ©J |
|||||
Код |
j |
1-й |
|
^ |
|
3-йадрес |
|
|
|
|
|||
операции |
|
|
|
|
|
|
|
|
|
|
8. Команда записана в ячейку памяти ЭЦВМ |
||
процессора со всеми устройствами |
известным адресом можно запи |
|||||
машины при выполнении одной ко |
сать любой набор из 18нулей и еди |
|||||
манды. Этого достаточно |
для пони |
ниц. Оператор, вводя программу, |
||||
мания принципа |
функционирования |
печатает на машинке целый ряд |
||||
ЭВМ: ведь выполнение программы |
строчек, в каждой из которых — на |
|||||
есть не что иное, как последователь |
бор цифр. Каждая строчка содер |
|||||
ное выполнение |
одной команды за |
жит в закодированном виде одну |
||||
другой. |
|
|
|
|
команду, то есть инструкцию процес |
|
Мы уже знаем, что память маши |
сору на выполнение одного дейст |
|||||
ны может |
хранить набор из «О» и |
вия. Оператор печатает очередную |
||||
«1». Если |
ряд |
ферритовых |
колец |
команду |
||
(например, |
18 колец) назвать ячей |
|
03 0016 0017 0018, |
|||
кой памяти и присвоить |
ей |
номер |
и она |
|||
(адрес ячейки), |
то в эту |
ячейкуе |
записывается в очередную |
63
ячейку памяти (рис. 8) |
в двоичном |
ячейки предварительно вводятся не |
||||||||
коде. Если зачерненные на рисунке |
обходимые числа. |
|
|
команды |
||||||
кольца находятся в состоянии |
«1», |
Ограничимся |
примером |
|||||||
а остальные — в состоянии |
«О», |
то |
трехадресной машины. Существуют |
|||||||
в первых трех |
кольцах |
записано в |
также одно- и двухадресные ЭВМ. |
|||||||
двоичном счислении число 011, что |
В некоторых современных машинах |
|||||||||
соответствует первому |
десятичному |
для удобства код операции записы |
||||||||
числу (03) в команде. |
Это код опе |
вается не числом, а буквой. |
Напри |
|||||||
рации. Программист и машина |
за |
мер, в машине |
«Наири» |
|
команда |
|||||
ранее «условились», что этот код |
умножения начинается |
не |
числом |
|||||||
означает умножение. Остальные чис |
«03», а буквой «у». В ячейку памя |
|||||||||
ла из приведенной команды состав |
ти при этом запишется то же |
|||||||||
ляют ее адресную часть. Они тоже |
двоичное число 011. |
|
|
|
|
|||||
запомнились ферритовыми |
кольца |
|
|
|
|
|
|
|||
ми ячейки в двоичном коде. Вы лег |
Процессор выполняет задание про |
|||||||||
ко можете проверить |
соответствие |
граммиста |
|
|
|
|
|
|||
десятичных и двоичных чисел. |
|
|
|
|
|
|
|
|||
Процессор поймет команду так: |
Благодаря упрощенной |
аналогии |
||||||||
— взять первое число по перво |
действий машины с известными нам |
|||||||||
му адресу, то есть в 16-й ячейке; |
действиями человека |
при |
|
решении |
||||||
— взять второе число по второму |
задач можно яснее представить себе |
|||||||||
адресу, то есть в 17-й ячейке; |
|
структуру ЭЦВМ. Рассмотрим взаи |
||||||||
— умножить первое число на вто |
модействие устройств |
машины в |
||||||||
рое; |
операции |
записать |
процессе обработки |
информации. |
||||||
— результат |
Команда, соответствующая какой- |
|||||||||
в ячейку по адресу 18. |
16-ю и 17-ю |
либо одной операции из системы ко |
||||||||
Естественно, |
что в |
манд ЭЦВМ, выполняется |
|
по нм- |
64
пульсам системы управления про |
цию |
умножения, |
|
вторая — адрес |
|||||||||||
цессора. Современный уровень вы |
на я — посылается в |
запоминающее |
|||||||||||||
числительной |
техники |
позволяет |
устройство для |
нахождения |
по |
ад |
|||||||||
производить |
арифметические дейст |
ресам |
16 in |
17 |
двух чисел и |
посыл |
|||||||||
вия |
над |
пятнадцатизначными чис |
ки |
их |
в арифметическое устройство, |
||||||||||
лами со |
скоростью |
до |
нескольких |
а также дает указание ячейке с ад |
|||||||||||
миллионов операций в секунду. |
ресом 18 подготовиться к приему ре |
||||||||||||||
Пусть программа, то есть числа, |
зультата решения. |
|
|
|
|
||||||||||
заданные в условии задачи, и ко |
2. |
|
В |
арифметическое устройство |
|||||||||||
манды, записанные программистом, |
поступили |
числа из 16-й и 17-й яче |
|||||||||||||
введены |
в оперативное |
запомина |
ек, |
например 1111 |
|
(или 15 в деся |
|||||||||
ющее устройство. Этот, |
на первый |
тичной |
системе счисления) |
и |
101 |
||||||||||
взгляд, хаос из сотен тысяч нулей и |
(или 5). Здесь происходит умноже |
||||||||||||||
единиц |
понимается |
процессором |
ние этих чисел, что в двоичной сис |
||||||||||||
ЭВМ как четкая инструкция и пос |
теме осуществляется крайне просто: |
||||||||||||||
ледовательно выполняется им. |
|
|
|
|
|
|
1111 |
|
|
||||||
1. |
Пусть очередная |
команда, под |
|
|
|
|
X |
|
|
||||||
|
|
|
|
|
101 |
|
|
||||||||
лежащая выполнению, есть команда, |
|
|
|
|
|
|
|
|
|||||||
изображенная на рис. 8. По «при |
|
|
|
|
|
|
1111 |
|
|
||||||
казу» устройства управления она пе |
|
|
|
|
|
+ 1111 |
|
|
|||||||
реписывается из оперативной памя |
|
|
|
|
|
1001011 |
|
|
|||||||
ти (см. рис. 5) в маленькую (на |
|
|
|
|
|
|
|
||||||||
одно число) память устройства уп |
3. |
|
Результат |
|
решения — число |
||||||||||
равления— регистр, |
где |
расщепля |
|
|
|||||||||||
ется на две части: первая — код опе |
1001011 |
(или |
75)— посылается |
в |
|||||||||||
рации, дает указание арифметичес |
оперативную память ЭВМ по треть |
||||||||||||||
кому |
устройству произвести опера |
ему |
адресу |
команды, то |
есть в |
ячейку 18. Одновременно устройство |
ры головного мозга. Чем |
орган важ |
||||||||
управления вырабатывает адрес сле |
нее, чем сложнее его движение, тем |
|||||||||
дующей команды. Она будет выпол |
обширнее эти проекции. Образно |
|||||||||
нена за время следующего рабоче |
об этом пишет психиатр В. Леви в |
|||||||||
го такта ЭЦВМ. |
|
|
|
|
книге «Охота за мыслью»: «Я держу |
|||||
|
|
|
|
|
ручку, пишу, а в это время нукле |
|||||
|
|
|
|
|
иновые цепочки нервных клеток мое |
|||||
|
|
|
|
|
го мозга, тех |
самых, |
что двигают |
|||
«Руки» и «голос» ЭЦВМ |
|
|
|
мою руку, шевелятся, утолщаются, |
||||||
|
|
|
|
|
сокращаются и будут делать это еще |
|||||
Выдача информации |
|
|
|
спустя некоторое время |
после того, |
|||||
|
|
|
как я закончу писать». |
|
|
|||||
(«подсказка» пятая) |
|
|
|
информа |
||||||
|
|
|
|
|
В ЦВМ |
для |
вывода |
|||
|
|
|
|
|
ции служат у с т р о й с т в а в ыв о д а |
|||||
Ученик решил задачу. Он пояс |
(см. рис. 5), осуществляющие, |
в со |
||||||||
няет полученный результат, |
записы |
ответствии |
с сигналами устройства |
|||||||
вает ответ задачи. Движения рук |
управления, «чтение» из памяти тре |
|||||||||
при письме, языка и губ при |
объ |
буемых сведений и представление нх |
||||||||
яснении— это |
результат |
передачи |
в удобной для дальнейшего исполь |
|||||||
информации по |
цепи |
нейрон — ак |
зования форме. Это |
«руки» и |
«го |
|||||
сон — исполнительный |
орган |
(эф |
лос» машины. Расскажем о некото |
|||||||
фектор). |
процессом |
выдачи |
рых из них на |
примере ЕС ЭВМ. |
||||||
Управление |
|
|
|
|
|
|
||||
информации осуществляется |
также |
Устройства |
вывода на |
любой |
вкус |
|||||
нервной системой. Все органы име |
||||||||||
ют свои представительства |
(их на |
Если выводимая из |
памяти |
ЭВМ |
||||||
зывают проекциями) в участках ко |
информация |
будет |
подвергаться |
почитает |
иметь дело с |
чертежами. |
||||||||
дальнейшей |
обработке |
машинами, |
На помощь приходят автоматичес |
||||||||||
то ее необходимо получить в удоб |
кие чертежники — графические |
ре |
|||||||||||
ной для них форме. В этом |
случае |
гистрирующие |
устройства |
план |
|||||||||
применяют |
устройства |
вывода на |
шетного |
(ЕС-7051) и |
рулонного |
||||||||
перфокарты (ЕС-7010) или перфо |
(ЕС-7052, |
ЕС-7053) типов. С их по |
|||||||||||
ленту (ЕС-7022). Эти |
устройства |
мощью результаты расчетов выво |
|||||||||||
преобразуют электрические сигналы |
дятся из памяти ЭВМ и ложатся со |
||||||||||||
в пробивки на перфокартах и пер |
скоростью 50—200 мм/с на бумагу в |
||||||||||||
фолентах. Скорость выдачи инфор |
виде чертежей, электрических схем, |
||||||||||||
мации соответственно 100 карт/мин |
сетевых графиков. Благодаря ус |
||||||||||||
п 150 строк/'с. |
|
|
|
тройствам такого типа и появился |
|||||||||
А если ЭВМ должна выдать рас |
рис. 9. |
|
|
|
|
инфор |
|||||||
писание лекций в вузе, ведомость |
Решение проблемы вывода |
||||||||||||
заработной платы |
пли |
содержание |
мации голосом,' путем произнесения |
||||||||||
искомого документа? Для таких це |
слов и звуковых |
сигналов находит |
|||||||||||
ся пока в стадии поисков. Речь идет |
|||||||||||||
лей служат |
печатающие устройства |
||||||||||||
об устройствах синтеза |
речевых сиг |
||||||||||||
(ЕС-7030, ЕС-7032). Они преобра |
|||||||||||||
налов. Область их |
применения |
свя |
|||||||||||
зуют выводимую из ЭВМ информа |
зана с получением |
справок |
от |
ин |
|||||||||
цию в систему печатных |
знаков |
||||||||||||
формационного центра голосом, с |
|||||||||||||
(цифр, букв, специальных симво |
|||||||||||||
синхронным переводом с иностран |
|||||||||||||
лов), фиксируемых на бумаге. Ско |
ного языка и пр. |
В настоящее время |
|||||||||||
рость печати 650—900 строк/мин. |
делаются лишь первые шаги в этом |
||||||||||||
Но и такое представление инфор |
направлении: машину учат произно |
||||||||||||
мации |
не может |
всех |
удовлетво |
сить буквы, слова, составлять фра |
|||||||||
рить. |
Конструктор, |
например, |
пред |
зы. Так, в Японии с помощью син |
67
тетических звуков ЭВМ составляет любые предложения, а в лабора тории экспериментальной фонетики Института языкознания АН Грузин ской ССР электронную машину на учили произносить грузинские слова и фразы. Рассказывают, что при настройке на русскую речь она за говорила с характерным кавказ ским акцентом.
О программировании и языках общения с ЭВМ
Первая программистка
Всем известно имя одного из ве личайших поэтов-лириков мировой литературы Джорджа Байрона. Но мало кто знает о его дочери Августе Аде Лавлейс, разработав шей первый язык общения с вычис лительной машиной.
Судьба даровала им обоим корот кую жизнь (37 лет), но достаточную для того, чтобы с блеском проявил
ся их талант: поэтический — отца м математический— дочери. Байрон выступил как создатель нового ли тературного жанра — лирико-эпи ческой революционной поэмы. Ада' Байрон нашла свою поэзию в мате матике, навсегда связав (по ее сло вам) свои «устремление и честолю бие- с х, у, z». Она заложила осно вы современного программирования,
|
9. Так рисует и чертит ЭВМ |
|
|
|
|
|
||
разработала первый язык общения |
ванной в виде малозаметных «При |
|||||||
с машиной и написала на нем пер |
ложений |
переводчика» |
к |
книжке |
||||
вые программы для первой в мире |
Л. Ф. Меиабреа «Очерк аналитиче |
|||||||
вычислительной |
машины — «анали |
ской машины, изобретенной |
Чарль |
|||||
тической» машины Бэббеджа. |
зом Бэббеджем», прославили имя |
|||||||
Десятки поэтических |
произведе |
Ады Лавлейс. |
мастерскую |
|||||
ний, |
и среди них роман в стихах |
Юная |
Ада посещала |
|||||
«Дон Жуан», сделали бессмертным |
Бэббеджа, увлеченно изучала воз |
|||||||
имя |
Байрона. И |
всего 50 страниц |
можности его интересной идеи. |
«В |
||||
математической |
прозы, |
опублико |
то время как большинство |
из |
при |
69