Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Шор, И. Я. Пять бесед о вычислительной технике

.pdf
Скачиваний:
3
Добавлен:
19.10.2023
Размер:
4.26 Mб
Скачать

сутствующих только глазело на это

манды для выполнения арифмети­

прекрасное устройство,... юная мисс

ческих и логических операций, опе­

Байрон разобралась в принципе его

раций передачи информации, управ­

работы и оценила его красоту»,-—

ления.

 

 

 

 

 

вспоминает в своих мемуарах не­

Попытаемся составить

программу

кая миссис де Морган.

 

 

на машинном

языке для

решения

В названной

уже

единственной

простого примера

 

 

 

 

публикации

Ады

Лавлейс

четко

 

 

х у

 

 

 

сформулированы

принципы

постро­

 

z

 

 

 

 

= ——

 

 

 

ения команд программы («... необ­

 

 

л -

+ у

 

 

 

ходимо строго различать операции,

 

 

 

 

 

 

 

объекты, над которыми операции со­

Но

предварительно

проследим,

вершаются, и результаты опера­

как

решит его

школьник

по

дей­

ций»), подняты вопросы об эконо­

ствиям:

значение

числителя

мии рабочих ячеек памяти, да и сам

1)

найдет

термин «рабочие ячейки» введен ею.

дроби ху,

знаменатель

дро­

 

 

 

 

 

 

 

2)

определит

Язык цифр

 

 

 

 

 

 

би х+у;

 

 

 

 

 

 

 

 

 

 

 

3) вычислит частное от деления

Ада Лавлейс предложила первую

результата первого действия на ре­

зультат второго.

 

 

 

 

разновидность

языка

для общения

Перейдем к машинному языку.

с машиной — так

называемый

ма­

ЭВМ не понимает, что

такое х, у, г.

шинный язык. Он состоит из команд,

Необходимо как бы «выписать ордер

понятие о которых было дано выше.

на проживание» исходных

данных

В распоряжении

программиста

це­

.г и у, результатов

промежуточных

лая система

таких

команд—

ко­

действий (х+ у) и ху и окончатель-

ного результата z в ячейках памяти

Первая

команда дает

инструк­

с адресами, которые не заняты.

цию:

сложить

(01 — код

операции

Например:

 

 

 

 

 

сложения)

содержимое ячеек

0016

 

 

 

 

 

и 0017 (т. е. х

и у)

и результат

за­

х «проживает» в ячейке по адресу 16

писать по адресу

0019. Вторая

ко­

 

 

 

 

 

 

 

 

17

манда: разделить

(04 — код

опера­

У

 

 

n

n

 

п

 

ции

деления)

содержимое

ячейки

-V У

 

 

и

II

 

я

 

18

0018 (т. е. ху)

на содержимое ячей­

X -|- У

 

 

и

и

 

и

 

19

ки с адресом 0019

(т. е. х+у)

и ре­

S

 

u

n

n

 

 

 

20

зультат запомнить в ячейке по адре­

Для

выполнения

первого

деист-

су 0020.

 

решения приведенного

вня запишем команду:

 

 

 

Итак, для

 

 

 

примера на трехадресной ЭВМ необ­

 

 

 

 

 

 

 

 

 

 

 

03

0016

0017

0018

 

ходимы три команды. Когда их вво­

 

 

 

дят (например,

печатают на машин­

Мы уже знаем, .

что процессор

ке), то они записываются

в ячейки

ЭВМ

выполнит

ее

так:

содержи­

оперативного

 

запоминающего

ус­

мое ячейки с адресом 0016

(т. е. х)

тройства,

адрес первой из которых

умножит

(03 — код операции умно­

задает оператор в

специальной

ко­

жения) на содержимое ячейки 0017

манде ввода. Если он указал

 

100-ю

(т. е. у)

и результат операции запи­

ячейку, то три команды запишутся

шет в ячейку по адресу 0018.

в 100, 101-ю и 102-ю ячейки.

 

 

эти

Второе и

третье действия

маши­

Процессор

будет выполнять

на выполнит по командам:10

 

 

команды

в

естественном

порядке

 

01

 

0016

 

0017

 

0019

их следования. В системе команд

 

 

 

 

ЭВМ

имеются

и такие, которые поз­

 

04

 

С018

 

0019

 

0020

воляют программисту нарушить

ес­

71

тественный порядок их выполнения. ЭВМ решила задачу, но ответ она не отпечатает, если в 103-й ячейке па­ мяти не поместить команду вывода на печать содержимого ячейки 0020. Составление программы на ма­ шинном языке — дело кропотливое, хотя стремление создать возможно более короткую программу для слож­ ной задачи вызывает обычно спор­ тивный азарт. Стремление сокра­ тить время программирования при­ вело к созданию комплекса про­ грамм, облегчившего труд програм­ миста и называемого математичес­ ким обеспечением. Простейшая его

разновидность — стандартные про­

граммы

(вычисление элементарных

функций,

решение алгебраических

уравнений, вычисление определен­ ных интегралов, решение диффе­ ренциальных уравнений и пр.). Час­

то стандартные программы

поме­

щаются в п о с т о я н н у ю

п а ­

м я т ь ЭВМ, отличающуюся от опе­ ративной тем, что из нее можно только читать.

Преимущество стандартных про­ грамм легко понять из такого при­ мера.

Пусть задана система линейных алгебраических уравнений:

яиЛ'| + a12-VTo+

.

. .

+ a lnx ll = b[,

^21-Н

<*22*2 "Ь

.

. .

4“

п ^ п

Ь о,

< * „ 1 * 1

" 1 " < * / | 2 * 2 Ь

.

. .

+

С1ппХ п

Ьп-

Для ее решения

 

достаточно

отпе­

чатать на машинке коэффициенты я и,

й12, . . . , й[„, blt a<i[, а22, . . . , я2„"

b'ii. . . ,

^*//2» . . .

1

^п1бук­

вы „су"

(машина

поймет это как

обращение к стандартной программе решения системы линейных алгебраи­ ческих уравнений) и ответить на воп­ рос ЭЦВМ „п = “? („какой порядок системы уравнений?"). После этого ЭЦВМ отпечатает результат решения.

— числовые значения х и х 2, . . .. х п Укажем, что малой ЭЦВМ «Наи- рп-К» но плечу такая система из 28

уравнений.

72

 

 

ЭВМ понимает русские слова

ЭВМ, мигая глазами-лампочками,

 

А как быть, если необходимо про­

тут же «отвечает»:

 

 

 

23 2 1975 г 1 «напри».

1975 года,

извести расчеты по громоздким фор­

(«Сегодня, 23 февраля

мулам, да еще многократно, для раз­

вы первый

обращаетесь ко мне. Я

ных исходных данных, а с програм­

к вашим услугам»).

 

 

мированием

Вы не

знакомы? На

«1 до» — печатает человек даль­

помощь

приходит

автоматическое

ше. «Напри» сразу же понимает его

программирование.

 

 

и сама заканчивает мысль, быстро

 

....Перед нами ЭВМ кабинетного

допечатывая «допустим»

до конца.

типа.

Это первая в

СССР машина

Читаем

первую строку

програм­

с

автопрограммированием —■«Нап­

мы:

 

 

 

ри».

За

пишущей машинкой сидит

1 допустим д:=0,1

 

человек, в руках у него лист бума­

 

 

 

 

ги

с

труднообозримой

формулой.

«2 вы» — печатает

оператор, «чис­

Проследим со стороны за его дей­

лим»— добавляет

ЭВМ,

подтвер­

ствиями.

 

 

 

клавиши

ждая, что рабочий контакт нала­

 

Человек нажимает две

жен. Напряженно вглядываясь в

пишущей машинки. Читаем отпеча­

символы своей формулы на листе,

танное:

 

 

 

 

человек печатает ее. Вторая строч­

 

 

 

 

ап

 

 

ка программы готова:

 

 

 

 

 

 

 

2 вычислим

у = 385л3(ехр(— 8,6л:))/

(в свободном

переводе это означает:

1(хп— 1,3* -I- 2,5).

 

 

«Не откажите в любезности гово­

 

 

 

 

 

 

рить со мной на языке автопрограм­

Далее на бумагу красивым шрифтом

мирования») .

 

 

 

ложатся строки:

 

 

3 печатаем с 5 знаками х у

4 вставим х = х 4- 0,1

5 если л*<1,25 идти к 2 ■6 кончаем

исполним 1

Снова просмотрим строки про­ граммы: это не что иное, как крат­ кая запись на русском языке ин­ струкции машине. Машине предло­ жено д о п у с т и т ь , что л:= 0,1, н при этом значении х в ы ч и с л и т ь (/по формуле. Третий пункт велит о т п е ­ ч а т а т ь с 5 знаками значение х и полученное в результате вычислении

значение у.

После печати резуль­

тата ЭВМ

предписано в с т а в и т ь

х равным прежнему плюс 0,1 (уве­ личить х на 0,1),и е сли это значе­ ние х еще по-прежнему меньше за­ данного числа 1,25, то и д т и ко 2-й строке инструкции (повторить вы­ числение) .

Вычислив значение 1/прих=0,2, ЭВМ отпечатает эти значения хм у, а затем в с т а в и т значение х = 0,3 и т. д. Наконец, при х = 1,3, убедив­

шись, что неравенство в пятой стро­ ке программы не выполняется, «Напри» не вернется к строке 2, а приступит к выполнению шестой строки — к о н ч и т вычисления.

Пока мы беседовали о програм­ ме, на бумагу легли аккуратно отпе­

чатанные

столбиком

значения (/для

Л'= 0,1; 0,2; 0,3; п т. д.

до 1,2.

 

Достаточно ввести

в

программу

еще две строки со словами

«х р а -

н и м » и

« н а ч е р т и м

»,

чтобы

ЭВМ выбрала удобный

масштаб и

отпечатала по точкам график задан­ ной функции.

Каким же образом достигается такая простота общения с ЭВМ? Благодаря специальной программе, которая автоматически переводит привычные для нас слова и матема­ тические символы иа понятный ма­ шине язык цифр. Однако возмож­ ности автопрограммировання огра­ ничены. При составлении сложных алгоритмов используются универ­ сальные алгоритмические языки.

74

 

 

 

Язык для алгоритмов

значенных для описания алгорит­

Бесконечные. полчища цифр на­

мов. Девиз алгоритмических языков

достоин математиков: «То,

что во­

перника мучили is кошмарных снах

обще может быть сказано,

может

не одного программиста, составляв­

быть сказано ясно, а о чем невоз­

шего сложные программы на ма­

можно

говорить — о

том

 

следует

шинном языке. Если на первых по-

молчать».

 

 

 

 

языков

цах программист получал

радость

Один из первых удачных

от общения с машиной на ее языке,

такого

рода — ФОРТРАН,

 

детище

то с усложнением задач труднообоз­

американской фирмы IBM. Из-за

римые колонки цифр стали прегра­

своей

простоты и несложности транс­

дой общения даже между специа­

ляторов (автоматических перевод­

листами, оказались весьма неудоб­

чиков на машинный язык)

это и се­

ными для

публикации

и

обучения

годня

наиболее

распространенный

(тем более, что разные ЭВМ имели

язык, особенно в западных странах.

отличные друг от друга машинные

Через несколько лет после ФОРТ­

языки), служили причиной ошибок.

РАНА, в 1960 году, Международная

А ошибки в программе обходятся

конференция

в

Париже

приняла

порой весьма дорого. Так, из-за про­

универсальный

язык

АЛГОЛ-60,

пуска

одного

знака

в программе

признанный удобным

средством

ре­

пришлось

подорвать

космическую

шения

задач

вычислительного

ха­

ракету стоимостью около 20 млн.

рактера. Он удобен также для пуб­

долларов, стартовавшую в 1962 го­

ликации

алгоритмов

и

обучения

ду с мыса Кеннеди (США) к Венере.

программированию.

 

 

 

 

Недостатки

машинных

языков

В 1968 году коллективом ученых

привели

к

созданию

универсаль­

разработан международный универ­

ных искусственных языков,

предна­

сальный

алгоритмический

язык

75

АЛГОЛ-68. При решении экономи­

люстрирует способность

человечес­

ческих задач хорошо зарекомендо­

кого мозга отрабатывать одновре­

вал

себя

предложенный

фирмой

менно ряд мыслей. Аналогичная

IBM язык КОБОЛ. Существует еще

способность

обрабатывать

инфор­

целый ряд языков (ДЖОВИАЛ,

мацию но

нескольким программам

АЛЬФА, АЛКОПОЛ, СНОБОЛ,

в вычислительной технике получила

АПЗ,

ЛИСП и другие).

 

название

мультипрограммирования.

 

 

 

 

 

Зачем нужен такой

режим

работы

 

 

 

 

 

ЭВМ?

 

 

 

 

 

 

 

Несколько

программ

одновременно

При быстродействии современных

машин нежелателен даже секунд­

...Черный «Мерседес» мчится по

ный простой не только самой ЭВМ,

но и отдельных ее

устройств.

На­

дороге к швейцарской границе. За

пример,

простаивает арифметичес­

рулем — штандартенфюрер

Штир­

кое устройство при вводе информа­

лиц. Пастор Шлаг старательно, пы­

ции с перфокарт. При работе же в

таясь не упустить ни одной детали,

режиме

мультипрограммирования

повторяет

содержание

порученного

во время ввода исходных данных по

ему задания. Пастору кажется, что

одной

программе

арифметическое

Штирлиц не слушает его. Штирлиц

устройство может вести

обработку

и в самом деле думает о

другом,

информации

согласно

фрагменту-

его мысли заняты судьбой операции,

второй программы.

 

 

ЭВМ ис­

выполняемой Плейшнером. Но ког­

На

многопрограммных

да пастор ошибается,

Штирлиц тут

пользуется и

другой режим — раз­

же поправляет его...

 

 

деление времени. Ряд пользовате­

Этот эпизод из фильма «Семнад­

лей ЭВМ одновременно

вводят

ин­

цать мгновений весны» хорошо ил­

формацию в

машину с

выносных

76

пультов (например, телетайпов). ЭВМ выполняет ряд программ по­ следовательно маленькими порци­ ями. В связи с большим быстродей­ ствием машины у каждого пользова­ теля создается впечатление, что он имеет отдельную машину с достаточ­ но большой памятью и быстродей­ ствием.

* * *

Вы познакомились с устройством и работой электронных цифровых вычислительных машин.

Поговорим теперь о машинах дру­ гого типа — вычислительных маши­

нах непрерывного принципа дей­ ствия.

Беседа третья

ОБ АНАЛОГИИ И АНАЛОГОВЫХ ВЫЧИСЛИ­ ТЕЛЬНЫХ МАШИНАХ

Можно ли, не выходя из стен ла­ боратории, без корабля и без моря синтезировать и исследовать при разных навигационных условиях систему автоматического управле­ ния курсом — авторулевой? А раз­ работать для нового самолета, су­ ществующего пока лишь в чертежах, автоматическую систему •— автопи­ лот, обеспечивающую высокие дина­ мические свойства при полете?

Положительно ответить на эти во­ просы помогает аналогия явлений в природе, о которой В. И. Ленин го­ ворил: «Единство природы обнару­ живается в «поразительной анало­ гичности» дифференциальных урав­ нений, относящихся к разным об­ ластям явлений».

Дифференциальные уравнения — это та основа, на которой базиру­ ется идея аналоговой вычислитель­ ной машины (АВМ). И тем не менее

78

в'настоящей, беседе мы попытаемся дать основные понятия об АВМ и построить модель движения, lit1 ис­ пользуя аппарат дифференциальных уравнений, а исходя только из ши­ роко известных каждому аналогий в окружающем нас мире.

Сила аналогии

~ Мама, мама, паровоз купа­ ется!— закричала маленькая Ляля, увидев впервые в жизни пароход. Этот и ряд других эпизодов из кни­ ги Корнея Чуковского «От двух до пяти» убедительно показывают, как на пути к познанию человек с дет­ ства призывает себе на помощь ана­ логию. Пусть порой ложную, осно­ ванную. на ассоциациях по случай­ ному признаку, но безусловно важ­ ную в развитии мировоззрения.

Аналогией пользуются все. Она нужна поэту: аналогия усиливает наше восприятие создаваемых им образов.

Ей лет четырнадцать; ее глаза Как на сережке пара спелых

вишен.; Она тонка, легка, как стрекоза; И в голосе ее трав шелест слышен.

(Валерий Брюсов)

Когда на бледном лбу горят лучом румяным Вечерних люстр огни, как солнеч­

ный рассвет...

(Шарль Бодлер)

Аналогию используют в медицине: действие лечебных препаратов ис­ пытывают на животных, а затем применяют их для лечения челове­ ка, предполагая аналогичное дей­ ствие.

Аналогию призывает на помощь конструктор, придавая подводной лодке обтекаемую форму рыбы, а самолету — форму птицы.

Аналогия дала жизнь многим на­ учным открытиям. Так, Ом открыл

79

Соседние файлы в папке книги из ГПНТБ