• Ешқандай Нәтиже Табылған Жоқ

ЭЛЕМЕНТЫ ПРОГРАММИРОВАНИЯ

N/A
N/A
Protected

Academic year: 2023

Share "ЭЛЕМЕНТЫ ПРОГРАММИРОВАНИЯ"

Copied!
346
0
0

Толық мәтін

(1)

D. В. ГНЕДЕНКО, В. С. КОРОЛЮК, Е. Л. ЮЩЕНКО

ЭЛЕМЕНТЫ

ПРОГРАММИРОВАНИЯ

И З Д А Н И И В Т О Р О Е С Т Е Р Е О Т И П Н О Е

Д о п у щ е н о М ч н и с т е р с т п о м

в ы с ш е го и с р е д н е г о с п е ц и а л ь н о г о о б р а з о в а н и я Р С Ф С Р в к а ч е с т в е у ч е б н о г о п о с о б и я

д л я в ы с ш и х у ч е б н ы х з а в е д е н и й

<

‘І 2 ( С

j ;j

Г О С У Д А РС Т В Е Н Н О Е И ЗД А Т Е Л Ь С Т В О Ф И 311КО-М АТЕМ АТИЧЕСКОЙ ЛИ ТЕ РА Т У РЫ

М О С К В А 1 У 6 3

(2)

518 Г 56

А Н Н О Т А Ц И Я

Книга «Элементы программирования» м ож ет служить р у к о ­ водством по программированию для цифровых автом атиче­

ских машин. В ней нашли отраж ен ие исследования в области автоматизации программирования, реш ения логи ческ их задач на циф ровы х автоматических машинах, а такж е операторны й м етод, предлож енны й А . А . Ляпуновым.

Книга предназначена для студентов уни вер си тетов, втузов и м ож ет быть полезна для работников научно-нсследователь- ских институтов, занимаю щ ихся вопросами программирования.

Книга м ож ет служить учебны м пособием при подготовке кадров программистов.

Б о р и с В л а д и м и р о в и ч Г н сд ен /со , В л а д и м и р С ем ен о в и ч К о р о л ю к , Е к а т е р и н а Л о г в и н о в н а Ю щ ен ко.

Э Л ЕМ ЕН Т Ы ПРО ГРАМ М Ы РО В А Н I ІЯ М., Ф и зм атгн з, 1963 г., 318 стр. с илл.

Р еда к то р С о л о в ь е в а JI. А .

Т ех н . р едак тор М у р а ш о в а I I. Я - К ор рек тор А н д р и а н о в а Л . П.

П ечать с матриц. П о д п и сан о к печати 1/XII 1962 г. Бумага GOxOOVir;. <1»из. к е ч .-л . 21,75.

У словн. п еч . л. 21,75. У ч.-изд. л. 17,3-1. Т и р а ж 50 000 э к з. Ц ен а книги 62 коп . З а к а з Кі 1166.

Г о су да р ств ен н о е издательство ф и зи к о-м атем ати ческ ой литературы . М осква, В-71, Л енинск ий п р о сп ек т , 15.

Т и п огр аф и я Кг 2 нм. Епг. С ок олов ой У Ц В и П П Л е н с о в н а р х о за . Л е н и н г р а д , И зм а й л о в ск и й пр., 29.

(3)

От а в т о р о п ... ... 5

В в е д е н и е ...! ! ! 7

Г л р в а I. П р и н ц и п ы у с т р о й с т в а э л е к т р о н н ы х в ы ч и с л и т е л ь н ы х м а ш и н ... 13

§ 1. Вы бор системы с ч и с л е н и я ... 13

§ 2. Основные логи ческ ие операции ... 18

§ 3. Элем ентарны е электронны е с х е м ы ... 22

§ 4. П редставление чисел в машине ... 31

§ 5. Операции над числами в цифровы х м а ш и н а х ... 3 5 § 6. П ер ев од из одной системы счисления, в д р у г у ю ... 4 3 Г л а в а II. П р и н ц и п ы п р о г р а м м н о г о у п р а в л е н и я на ц и ф р о в ы х а в т о м а т и ч е с к и х м а ш и н а х ... 4 5 § 1. Принципиальная схем а Ц А А 1 ... 4 5 § 2. Элементарны е операции, выполняемые Ц А Л 1 ... 52

Г л а в а III. Э л е м е н т а р н о е п р о г р а м м и р о в а н и е . . . . ... 63

§ 1. Н еп оср едств ен н ое п р о г р а м м и р о в а н и е ... 06

§ 2. Разветвляю щ иеся п р о ц е с с ы ... 7 7 § 3. Ц иклические п р о ц е с с ы ... 8 9 § 4. Ц иклические процессы , зависящ ие от п а р а м е т р о в ... 112

§ 5. Б л ок -схем ное програм мирование и п ередача управления на п о д п р о г р а м м ы ... 139

§ 6. Ф ормирование содерж ан ия запом инаю щ его устройства . . . . 140

§ 7. Групповы е операции ... 153

Г л а в а IV. О п е р а т о р н о е п р о г р а м м и р о в а н и е ...109

§ 1. Схемы с ч е т а ...109

§ 2. Схемы п р о г р а м м ...172

§ 3. П рограммирование сложных циклических п р о ц е с с о в ... 182

§ 4. Л огически е условия в схем ах п р о г р а м м ... 218

§ 5. П рограммирование логических оп ераторов . . . : ... 225

§ 0. С одер ж ател ь ное преобр азован и е схем п р о г р а м м ...230

Г л а в а V. А д р е с н о е п р о г р а м м и р о в а н и е ... 210

§ 1. Понятие адресн ой п р о г р а м м ы ... 241

§ 2. Схемы обозр еван ия к о д о в ... 248

§ 3. Программы задач линейной а л г е б р ы ... 254

§ 4. Н еариф м етические з а д а ч и ... 201

Г л а в а VI. А в т о м а т и за ц и я п р о г р а м м и р о в а н и я ... 284

§ 1. Общий об зо р м е т о д о в ... 284

§ 2. П остроение алгоритмов операторной программирующ ей про­ граммы ...293

§ 3. М етод адресн ого п р о г р а м м и р о в а н и я ...298

ОГЛАВЛЕНИЕ

1*

(4)

4 ОГЛАВЛЕНИЕ

Г л а в а VII. О р г а н и за ц и я р а б о т ы н а Ц А М ... 300

§ 1. О форм ление программ на б л а н к а х ...300

§ 2. В вод программ в З У и контроль в в о д а ... 302

§ 3. П рооерка правильности работы м а ш и н ы ...303

§ 4. Отладка п р о г р а м м ... 307

П р и л о ж е н и е ... 309

Б Э С М ... ... 309

С т р е л а ... ЗШ У р а л ... 325

М - 3 ...3 3 3 К и е в ... .... ... 337 Цитированная л и т е р а т у р а ... .... J47

(5)

ОТ А В ТО Р О В

Н а с т о я щ а я книга написана на основании опыта работы а в ­ торов на универсальны х цифровых автоматических машинах, чтения курсов лекций по программированию , проведения соот­

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

ситете. С одерж ан и е нашей книги ясно из оглавления, и на нем пет необходимости останавли ваться.

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

Гнеденко Б. В., К о р о л ю к В. С., Ю щ енко Е. Л.

(6)
(7)

В В Е Д Е Н И Е

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

Впервые перед наукой откры лась возм ож н ость производить колоссальные по м а с ш т а б а м вычислительные работы в исклю­

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

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

стоит лиш ь в том, что д л я получения окончательного резуль­

тата необходимо выполнить миллионы, а то и миллиарды а р и ф ­ метических операций. Д л я примера у к а ж е м на решение систем большого числа линейных алгебраических уравнений. П ринци­

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

тании, умножений н делений. Д л я систем указан ного вида, со­

д е р ж а щ и х 200— 300 неизвестных с соответствующим числом уравнений, получение ответа достигается лиш ь после производ­

ства нескольких десятков миллионов э лем ен тарн ы х ари ф м ети ­ ческих действий. Д а ж е лучш ему вычислителю, в руках которого находятся простейшие вычислительные средства — ар и ф м о ­ метры, таб ли цы и пр., — требуются годы, а то и десятилетия напряж енного труд а д л я решения одной-едннствениой зад ач и столь простого типа. Конечно, иногда з а д а ч а д опускает ра зб и е ­ ние на части, к а ж д а я из которых мож ет быть решена не­

зависимо одна от другой. В таком случае можно значительно ускорить вычислительный процесс, поручив выполнение не­

зависимы х групп операций различны м вычислителям. Однако

(8)

8 ВВЕДЕНИЕ

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

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

ствующей вычислительной техники удалось довести до числен­

ных расчетов, а тем самым и до непосредственных применений.

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

д ило и приводит, в частности, к тому, что в практике мирятся с н еоп равданн о высокими зап ас ам и прочности; в особо ж е от­

ветственных случаях прибегают к дорогостоящим экспериментам и моделированию. Применение быстродействующих вычисли­

тельных машин открывает перед современной техникой не­

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

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

вание вычислительных методов. Внедрение этих методов позволит выбирать оптимальные варианты решения и н ж ен ер ­ ных зад а ч и тем самым принесет огромный экономический эффект.

К а к ни велико значение повой вычислительной техники д л я производства вычислительных работ, быть может, еще больш ее значение имеет то, что быстродействующие цифровые вычисли­

тельны е машины оказалось возможны м приспособить к реш е­

нию з а д а ч логического характера. В качестве примера такого рода можно привести удачные попытки осуществления а в т о м а ­ тического перевода с одного языка на другой, проводимые в С СС Р, СШ А и других странах. Оказалось, что на машину удается переложить некоторые функции интеллектуальной д е я ­ тельности и тем самым освободить человека от монотонных мыслительных операций, соверш аемых по определенным п рав и-- лам . Особенно большие перспективы открываются в связи с ис­

пользованием вычислительных машин для автоматического уп равл ен ия производственными процессами. Это н аправление п ривлекает большое число ученых и инженеров. Чтобы хар а ктер этого рода приложений был достаточно отчетливо выяснен, мы

(9)

ППЕДЕППЕ 9

приведем несколько примеров, заи м ствов ан н ы х из технической литературы.

Фирма «Сокони мобил ойл компани» исп ользовала э ле к ­ тронную вычислительную машину д ля выбора наивыгоднейшего реж им а перегонки нефти. Исходными данны ми при этом являю тся стоимость на рынке нефтепродуктов, рабочей силы, различных м атери ал ов и ряд других факторов. Д л я составле­

ния программы были предварительно математически описаны процессы каталитического крекинга, ал ки л и р о ва н и я и др. П р о ­ грамм а, м од ели рую щ ая процесс перегонки, вклю чает в себя 6000 ком анд и чисел и осущ ествляется машиной за 9 минут, из которых 6 минут затр а ч и в аю тся па ввод в маш ину программы.

Фирма «Вест Пенн электрик», с о зд а л а электронную вычисли­

тельную машину д ля выбора наиболее экономичного реж има работы энергосистемы мощностью 1300 Мет, объединяющей д е ­ сять тепловых электростанций и одну гидростанцию. О б щ а я протяженность л и н и й ' электропередач 2500 км при н а п р я ж е ­ ниях в 66 и 132 кв. М аш ин а используется д л я расчета опти­

мального р еж и м а работы системы при учете потерь в сетях, стоимости топлива на отдельных станциях, коэффициентов по­

лезного действия генераторов, раб отаю щ их д л я покрытия н а ­ грузки, и учета других факторов, определяю щ их стоимость энергии. Полученное решение используется д л я распределения

н агрузок м еж д у станциями.

В н астоящ ее время в периодической печати появилось з н а ­ чительное число работ, касаю щ ихся применения быстродей­

ствующих вычислительных машин к автоматическому уп рав л е­

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

священной научным проблемам автом атизаци и производ­

ства [1].

Несомненно, что в указанны х н ап рав л ен и я х исследователь­

ская работа еще только начинается и д а ж е самое б лиж айш ее будущее принесет необозримые успехи. Но д л я этого необхо­

д им а упорная и систематическая работа по изучению и м а т е м а ­ тическому описанию процессов, п о д л еж ащ и х автоматизации.

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

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

(10)

1 0 В В Е Д Е Н И Е

тельного физического труда путем использования р а з н о о б р а з ­ ных машин. Одновременно, но в сравнительно меньшей степени, человечество стремилось и к облегчению умственного труд а, к тому, чтобы переложить на те или иные приспособления часть загр у зк и интеллекта. На протяжении столетий на өтом пути у д ал о сь сделать немало. Чтобы в этом убедиться, достаточно вспомнить об изобретении книгопечатания, фотографии, зв у к о ­ записи, счетных машин и приспособлений и многого другого.

К а ж д о е из указан ны х изобретений п ереклады вало на машины то, что раньш е способен был осуществлять лишь разум чело­

в е к а — н ак а п л и в ать и п ередавать другим опыт и знания, з а п о ­ м и нать образы и звуки, производить вычисления и т. д. Теперь мы стоим на пороге повои эпохи, когда силы природы будут использованы т а к ж е д л я увеличения интеллектуальной мощи человечества и д ля освобождения человека от утомительной однообразной умственной работы. Это даст возможность сосре­

доточить творческие возможности на нерешенных проблем ах, на развитии новых направлений в науке. Электронные вычисли­

тельны е машины являются в аж н ы м шагом на этом пути; п ер­

вые попытки использования их в указанном направлении у ж е сд ел ан ы и оказал и сь исключительно удачными. Д а л ь н е й ш и е возможности представляются нам буквально неисчерпаемыми.

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

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

вать в заи м н ом у развитию соответствующих дисциплин.

С ам о собой разумеется, что быстродействующие вычисли­

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

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

(11)

ВВЕДЕНИЕ 11 шина могла без в м еш ательства человека пройти весь путь от начальных условий задачи до выдачи численных результатов и п рекращения вычислений, необходимо предварительно р а зл о ­ жить процесс решения зад ач и на элементарны е операции и тем самым создать условия, при которых она мож ет автоматически в необходимом порядке, ш аг за шагом, проделать все требуе­

мые операции. Здесь очень важ н о подчеркнуть слово автом ати ­ чески, так как всякое вмеш ательство человека в огромной сте­

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

ловеку на изменение хода вычислений нужны уже минуты. Т а ­ ким образом, необходимо, чтобы маш ина ие только произво­

дила сложение и умножение, по чтобы в ней автоматически происходил переход от одной операции к другой, «зап ом и н а­

ние» результатов промежуточных вычислений, выбор чисел из

«памяти», изменение х а р а к те р а вычислений, вы дача окончатель­

ных результатов, своевременное прекращ ение работы машины.

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

вания.

Н аш а цель — и злож и ть в настоящей книге основные идеи этой дисциплины на базе рассмотрения ка к совершенно элемен­

тарных, т а к н более сложных примеров. В значительной части эти примеры заимствованы нами из практики и встречались нам при решении конкретных зад ач на быстродействующих вы­

числительных машинах. Помимо изложения основ п рограмми­

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

грамм ирования, которые р азр а б а ты в аю тс я в настоящее время.

В частности, мы уделяем значительное внимание операторному методу програм м и рован ия, предлож енному Л. Л. Л япуновым.

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

дов ан ал и за теперь пущен в ход. При этом обнаруж илось, что д а л ек о не ка ж д ы й из этих методов приспособлен к особенно­

стям автоматического счета. Д л я применения ранее р а з р а б о ­ танных методов приближенны х вычислений к работе па машине требуется их усоверш енствование и развитие. Н уж но вспомнить т а к ж е старые, д ав но забы ты е приемы приближенны х вычислений;

(12)

1 2 ВВЕДЕНИЕ

м о ж ет случиться, что некоторые из них о к а ж у тся у д а ч ­ ными. Конечно, необходимо т а к ж е создание новых п р и б л и ж ен ­ ных методов; эти исследования нужно форсировать хотя бы потому, что привычные подходы к ряду важ н ы х з а д а ч приводят к исключительно трудоемким вычислениям д а ж е д ля соврем ен ­ ных машин. К таким зад а ч а м относятся, в частности, м ногомер­

ные з ад ач и математической физики. Известно, например, что зад ач и , связанны е с расчетом гетерогенных атомных котлов, при приведении их к уравнениям в конечных разностях в ряде сл уч аев требуют рассмотрения сеток, содерж ащ и х миллионы узлов. О бщ ее число элементарных операций, которые при этом д о л ж н ы быть осуществлены, достигает десятков м и ллиардов.

При р а зр а б о тк е приближенных методов а н ал и за возникли но­

вые зад ач и , с которыми ранее почти не приходилось в стре­

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

в ан ия устойчивости счета.

В настоящ ее время еще не установилась окончательная т е р ­ минология д ля наименования современных вычислительных м а ­ шин с программны м управлением. П ервоначально их н а зы в а л и электронными вычислительными машинами, подчеркивая этим то, что основными элементам и этих устройств являлись э л е к ­ тронные приборы. Д ал ее, поскольку на смену электронным э л е ­ ментам теперь приходят другие, к а ж етс я естественным у к а з ы ­ вать в первую очередь на то, что эти машины являю тся не м о ­ д елирую щ им и устройствами, а выдают цифровые результаты ; было внесено предложение н азы вать такие машины ав т о м а т и ­ ческими быстродействующими цифровыми вычислительными м а ш и н а м и (А Б Ц В М, см. Л. Л. Л япунов и Г. А. Ш естопал [2]).

Мы п ред ла гаем их н азвать короче — цифровая автом атич еская м а ш и н а (Ц Л М), поскольку представление о быстродействии маш ины сильно меняется. Т ак 30 000— 100 000 операций в се­

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

П оэтому мы сохраняем лишь д в а основных качества в н аи м е­

новании машины: то, что она цифровая, и то, что она а в то м а ти ­ чески действует.

(13)

Г Л Л В Л I

П Р И Н Ц И П Ы У С Т Р О Й С Т В А Э Л Е К Т Р О Н Н Ы Х В Ы Ч И С Л И Т Е Л Ь Н Ы Х М А Ш И Н

В настоящей гл аве рассм атриваю тся арифметические и ло­

гические принципы устройства цифровых вычислительных м а ­ шин. С техническими особенностями осущ ествления этих прин­

ципов и связанны ми с ними идеями конструирования цифровых автоматических машин Щ А М ) читатель мож ет познакомиться по имеющейся литературе.

Вместе с тем следует отметить, что в н астоящ ее время еще не создана м атем атич еск ая теория конструирования Ц А М , в связи с чем одной из центральны х за д а ч современной вычи­

слительной м атематики и техники явл яется развитие теории синтеза электронных вычислительных и управл яю щ и х схем.

§ 1. Выбор системы счисления

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

торому один и тот ж е числовой символ (ц и ф ра) имеет разл и ч ­ ные значения в зависимости от места, которое он занимает. Т а ­ кая система записи чисел основана на том, что некоторое число единиц, например с, объединяется в одну единицу второго р а з ­ ряд а; объединение с единиц второго р а з р я д а составляет еди­

ницу третьего р а зр я д а , и т. д. Число с носит н азван ие осн ова­

н и я счисления.

В качестве основания счисления мож но взять любое целое число, большее единицы. В системе счисления с основанием с любое число а запи сы вается в виде

р~ 1

а = ± 2 (1 )

/с ~ — оо

где величины ак принимают значения 0, 1, 2, . . с— 1, а р — некоторое целое число, зав и ся щ ее от с и от а. Если ввести

(14)

обозначение (3„ = то число а мож ет быть зап и сан о в виде, несколько отличном от (1):

оо а = ±

п

- 1

Число р назы вается порядком числа а (иоиятпо, что зн а ч е ­ ние р зависит от того, какую систему счисления мы уп отреб­

л я е м ). П оря док числа определяет место запятой в записи числа, а именно, з а п я т а я д о л ж н а стоять перед $1Г Х- М ножи-

СО

тель всегда заключен в полуинтервале [0,1]; он носит на-

п-

1

з в ан и е мантиссы числа а.

В повседневной жизни наиболее употребительна д еся ти ч ­ ная позиционная система счисления, в которой за основание принято число десять. Любое число в этой системе счисления, к а к это хорошо известно, может быть записано с помощью р а с ­ полож енны х в соответствующем порядке десяти числовых з н а ­ ков: 0 , 1, 2 , 3, 4 , 5, 6, 7, 8, 9. Например, число 429,538 я в л яе тся сокращ енной записью вы раж ен и я

4 - 102 + 2 . 101 -4-9 ♦ 10° — 5 * 10-1 Ч - З - 10~2 + 8 • 10~3- Подобны е ж е сокращенные записи мы будем впоследствии уп отреб лять д л я изображ ения чисел, записанных в позицион­

ных системах счисления с другим, иедесятичным основанием.

Так, например, в восьмеричной системе счисления запись 321,57 означает, что рассматривается число

3 • 82 -f- 2 • 81 - f- 1 • 8° + 5 7 - 8 - 2.

В ряд е ка к теоретических, т а к и практических зад ач н еко­

торые системы счисления, отличные от десятичной, п р ед став ­ л я ю т известные преимущества. Так, например, д воичная си ­ стема счисления используется в большинстве современных Ц А М к а к в силу простоты технического осуществления операций над двоичными числами, так и в силу широко откры ваю щейся при этом возможности использовать методы математической логики, в частности, исчисления высказываний. В практике работы Ц Л М применяются та к ж е и другие системы счисления — зось- меричиая, шестнадцатеричная и некоторые другие.

Отметим, что двоичная система счисления для и зображ ен и я одного и того ж е д и апазона чисел требует меньшего числа э л е ­ ментов машины для их записи, чем десятичная. Действительно, количество чисел, имеющих п разрядов, в системе счисления с основанием с равно М = сп. Необходимое для представления этих чисел число элементов пропорционально N c — с • п. За ф н - 14 ПРИНЦИПЫ УСТРОЙСТВА э л е к т р о н н ы х в ы ч и с л и т е л ь н ы х МАШИН [г л. I

(15)

ВЫПОР СИСТЕМЫ СЧИСЛЕНИЯ 15 ксируем число М и найдем то с, при котором N c достигает ми­

нимума. И з первого написанного нами равенства находим, что

In

М

п =. In

с

Подставив это значение в в ы раж ение д л я N c, находим:

с

in

М

In

с

Л егко найти, что минимум этого в ы раж ен и я достигается при с = с = 2,71828 . . . С рассматриваемой точки зрения самой вы ­ годной системой счисления является троичная. Д л я и зображ ен и я всех чисел от 1 до 106 в десятичной системе счисления т р е ­ буется 60 элементов, в двоичной — 40,' а в троичной — 38. О д ­ нако увеличение числа элементов д ля записи чисел в двоич­

ной системе по сравнению с троичной невелико. Если число элементов, необходимое д ля записи в двоичной системе, об озна­

чить N 2, а д ля записи в троичной — N 3, то

^ = 1 ^ 1 =N 3 6 111 2 2^ 46 Igio 1 ^ 1,0 5 6.

Троичная система счисления пе получила широкого приме­

нения в цифровых маш инах в связи с трудностями конструи­

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

ленных схемах соединений об л а д а ть д вум я устойчивыми р а з ­ личными состояниями, — конденсаторы, электронны е лампы кристаллические триоды и др. Схемы существующих эле м ен ­ тов, из которых составляются Ц А М , по своему существу являю тся двоичными. Конденсатор мож ет быть за р я ж е н и не зар я ж ен , л а м п а мож ет проводить или пе проводить ток.

К тому ж е двоичная система счисления предпочтительнее перед другими системами счисления б л а г о д а р я исключительной про­

стоте выполнения арифметических операций н ад двоичными числами.

Некоторым неудобством двоичной системы счисления в Ц А М (как, впрочем, и всякой другой системы счисления, от­

личной от десятпчноіі) является необходимость перевода ис­

ходных данных из десятичной в двоичную систему при вводе их в машину и обратного перевода из двоичной системы в д е ­ сятичную при выводе результатов вычислений. Эта необходи­

мость обусловлена тем, что д есятичная система счисления является общепринятой. Однако в п одавляю щ ем большинстве зад ач объем вычислительных операций превосходит количество входных и выходных данных, которые только и п о д л еж ат

(16)

переводу из одной системы счисления в другую, и поэтому у к а ­ занный недостаток является совершенно несущественным.

К тому ж е этот перевод зачастую производится автоматически.

Т а к как мы не предполагаем у читателя привычки к систе­

мам счисления, отличным от десятичной, то для ориентировки приводим небольшую табличку записи чисел в различны х си­

стемах (см. табли цу 1). При этом отметим, что поскольку в по­

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

ния десяти, одиннадцати, д венадцати, тринадцати, ч еты рна­

дцати и пятнадцати — соответственно знаки 0, 1, 2, 3, 4, 5 . 1G ПРИНЦИПЫ УСТР0ІІСГПЛ ЭЛЕКТРОННЫХ ВЫЧИСЛИТЕЛЬНЫХ МАШИН [ г л . I

Т а б л и ц а 1. Запись чисел в различных систем ах Системы счислении

деся­

тична* | дноичипи троичная пятеричная иэсьмеричпая шестнадцате­

ричная

1 1 1 1 1 1

2 10 2 2 2 2

3 и 10 . 3 3 3

4 100 11 4 4 4

5 101 12 10 5 5

G 110 20 11 0 6 .

7 111 21 12 7 7

8 1000 22 13 10 8

9 1001 100 14 И 9

10 1010 101 20 12 б

11 1011 102 21 13 1

12 IKK) 110 22 14 2

13 1101 111 23 15 3

14 1110 112 2 4 16 4

15 1111 120 3 0 17 5

16 1000 0 121 31 2 0 10

17 10001 122 32 21 11

0, 5 0,1 0 , 1 1 . . . 0 , 2 2 . . . 0,4 0,8

0,3 0 , 0 1 0 0 1 . . . 0 , 0 2 2 0 0 . . . 0 , 1 2 2 . . . 0 , 2 3 1 4 6 . . . 0 , 4 2 2 2 . . . 0 ,( 3) 0 , 0 1 0 1 . . . 0,1 0 , 1 3 1 3 . . . 0 , 2 5 2 5 . . . 0 , 5 5 . . .

При подготовке за д а ч нередко пользуются восьмеричной и шестнадцатеричной системами счисления. Переход от этих си­

стем к двоичной осущ ествляется весьма просто. Действительно,

(17)

ВЫГ.ОР СИСТЕМЫ СЧИСЛЕНИЯ 17 каждыіі р а з р я д восьмеричной системы п реобразуется в неко­

торое трехзначное двоичное число; точно т а к ж е каждый р а з ­ ряд шестнадцатеричной системы преобразуется в четырехзнач­

ное двоичное число. Таким образом, например, число 1175, записанное в восьмеричной системе, в двоичной системе прини­

мает такой вид: 1001111101. Число 528, записанное в шестна­

дцатеричной системе, в двоичной имеет такую запись:

10111001000. Д л я перехода от двоичной записи числа к восьме­

ричной нужно разбить двоичную запись па группы по три цифры справа налево и ка ж д ую группу зам енить восьмеричным числом, пользуясь таблицей 1. Д л я перехода от двоичной записи к шестнадцатеричной нужно двоичную запись разбить сп рава палево па группы по четыре цифры и к аж д ую группу заменить соответствующей шестнадцатеричной цифрой. Н а п р и ­ мер, число 11101111001, записанное в двоичной системе, в вось­

меричной записи имеет вид 3571. То ж е число д л я перевода в шестнадцатеричную запись нужно предварительно записать группами по четыре цифры: 111 0111 1001; по таблице 1 нахо­

дим, что в шестнадцатеричной записи это число будет выглядеть так: 779.

Нет необходимости подробно о станавл и ваться на том, что простота ука зан н ы х преобразований объясняется тем, что числа восемь и ш естн адцать являю тся целыми степенями двойки (8 = 2:j; 16 = 2 4).

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

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

Приведем по одному примеру на ка ж д о е арифметическое действие над двоичными числами.

Т а б л и ц а двоичного Т а б л и ц а двоичного с л о ж е н и я у м н о ж е н и я

0 - f - 0 = 0 0 + 1 = 1 1 + 0 = 1 1 -4-1 = 10

0 X 0 = 0 0 X 1 = 0 1 X 0 = 0 1 X 1 = 1

Д в о и ч н о е с л о ж е н и е Д в о и ч н о е вы ч ит ание 1010011,111

+

11001,110 1101101,101

1100101,101

10101,111 , .-1001111,110

2 З а к . п о з . Э л ем ен т ы п р о гр а м м и р о в а н и я

\

(18)

1 8 ПРИНЦИПЫ УСТРОЙСТВА ЭЛЕКТРОННЫХ ВЫЧИСЛИТЕЛЬНЫХ МАШИН [г л. I

Д в о и ч н о е у м н о ж е н и е 11001,01 X 11,01

1100101 1100101 1100101 1010010,0001

Д в о и ч н о е д е л е н и е 10100110011 11011

~ 1011_________________1111001

10011

1011

10001

1011

01100

1011

0001011 1011

§ 2. Основные логические операции

Применение в электронных вычислительных м аш и нах д вои ч ­ ной системы счисления д ает возможность использовать а п п а р а т математической логики, в частности исчисление в ы сказы ваний, при ан ал и зе и построении функциональных схем машин.

В математической логике под вы сказы ванием понимается лю бое предложение, относительно которого имеет смысл гово­

рить об его истинности или ложности, например: «С егодня чет­

вертое число», «человек бессмертен», «дважды двачетыре».

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

дем принимать во внимание лиш ь их истинность или лож н ость, н и к ак не учитывая их конкретного содержания.

В ы сказы в ан и я мы будем обозначать заглавн ы м и буквам и латинского ал ф ави та. Если А истинно, то будем писать /1 = 1, если /1 ложно, то будем писать А = 0 . Если в ы сказы ван ие ка- кнм-то образом зависит от некоторого парам етра, то его зн а ч е ­ ние истинности представляет собой функцию, способную прини­

м ать лишь два значения: 0 или 1. В ы сказы ван ие всегда истин­

ное определяет постоянную функцию, равную 1; вы сказы ван ию всегда л о ж н о м у соответствует функция, которая тождественно равн а 0. В приведенных выше примерах первое высказы вание верно только в течение двенадц ати дней в году, второе лож н о всегда, третье всегда истинно.

П ерем ен н ая величина, которая мож ет принимать лиш ь два значения, н азы вается двоичной переменной. Согласно введен­

ному определению всякое высказы вание является двоичной переменной.

В современных Ц А М действия над числами (записанными в двоичной системе), передача двоичных кодов из одного блока

(19)

ОСНОВНЫЕ ЛОГИЧЕСКИЕ ОПЕРАЦИИ 19 машины в другой, управление этой передачей осущ ествляются посредством устройств, которые способны находиться только в двух состояниях (этим состояниям приписываются значения О и 1). Таким образом, работа уп равл яю щ и х схем устройства передачи информации в Ц А М представима некоторыми функ­

циями от двоичных переменных, которые сами т а к ж е прини­

м аю т лишь два значения. Такие функции н азы ваю тся двоич­

ны м и функциями.

М атем ати ческая логика изучает вопросы представления и п реобразован ия двоичных функций от двоичных аргументов по­

средством некоторых логических операций, н азы ваем ы х логиче­

скими связями. И з простых высказываний при помощи логиче­

ских связей могут быть составлены слож н ы е высказывания, принимающие значения истинно (1) или ложно (0) в зависи­

мости от значений составляю щ и х простых высказываний. Так к а к высказы вания можно р ассм атрив ать ка к двоичные пере­

менные, то логические связи м еж д у в ы сказы ваниям и можно представить Как операции н ад двоичными переменными вели­

чинами. Определим основные логические операции.

1. О т р и ц а и и е. Отрицание высказы вания А обозначается символом А (читается: «не /Ь>). Значение истинности вы с казы ­ вания А определяется следующей таблицей:

О т р и ц а н и е Г = ° 0 = 1 .

Таким образом, отрицанием в ы сказы ван ия А является сложное вы сказы ван ие / 1, которое ложно, когда А истинно, и истинно, когда А ложно.

2. Л о г и ч е с к о е у м н о ж е н и е . Логическое умножение в ысказываний А и В об означается символом /1 / \ В (читается:

«А и В » ). Значение истинности логического произведения А / \ В определяется в зависимости от значений истинности в ы с к а зы в а ­ ний /1 и В но следующей таблице:

Л о г и ч е с к о е у м н о ж е н и е 0 д о = 0 0 / \ 1 = 0 1 Д 0 = 0 1 А 1 = 1

Операция логического умножения назы вается конъ ю нкцией, а символ А —знаком конъ ю нкции.

Конъюнкция А А В двух высказы ваний представляет собой сложное высказы вание, которое истинно тогда и только тогда, когда истинны составляю щ ие его вы с казы в ан и я А и В.

Ақпарат көздері

СӘЙКЕС КЕЛЕТІН ҚҰЖАТТАР

Зерттеудің негізгі мақсаты – шарап ӛндірісінің қалдығы шарап қышқылының аминді туындыларын алу, олардың реакциялық қабілеттілігін және құрылысын анықтау, сонымен қатар алынған

Назарбаев Қазақ КСР-і және РКФСР арасындағы Шарттың 1,6 бабына сәйкес Ресей мемлекет басшысынан: - Орал казактарын конфронтация мен сепаратизмге айдап салып отырған республикаға