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

книги из ГПНТБ / Кушнерев Н.Т. Программирование для ЭВМ Минск-32

.pdf
Скачиваний:
37
Добавлен:
24.10.2023
Размер:
11.94 Mб
Скачать

Г л а в а 3. ОСНОВНЫЕ ОПЕРАТОРЫ

3.1. ВЫПОЛНЕНИЕ КОМАНДЫ

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

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

 

 

Процесс .выполнения

типовой команды

состоит

из

обработки

команды

и реализации

операции, указанной

в ней.

Обработка

команды

в машине состоит из чтения кода команды

из

ячейки

МОЗУ, индексирования

адресов,"базирования

адресов

и

чтения

операндов. Адрес очередной выполняемой

команды

(К)

находится

в С-чАК. Перед выборкой команды содержимое сумматора пересы­ лается'в регистр Р2, а сумматор очищается. Составные части про­ читанной команды распределяются между регистрами следующим образом. Первый и второй относительные адреса команды ai и аг записываются соответственно в разряды 104-20 и разряды 264-36 сумматора и находятся там до конца обработки команды. Номер индекса і и номера базисов бі и бг записываются соответственно в регистр номера индекса и регистры номеров базисов. Код операции записывается в регистр дешифратора операций и сохраняется там до конца выполнения команды. Если адрес команды К выходит за

диапазон

допустимых адресов, т. е. меньше АЗН или больше

А З В + 777,

то устанавливается в единицу указатель ЗЩ.

После чтения команды анализируются разряды номера индек­ са. Ненулевое значение і вызывает прибавление содержимого ячей­ ки индекса (ячейки с адресом Аі = АБИ + і) к содержимому сумма­ тора. Этот процесс носит название индексирования. С помощью индексирования можно изменить (иногда говорят «модифициро­ вать») адреса, указанные в команде. Это используется, например, при последовательном переборе ячеек МОЗУ. В соответствии с на­ значением ячейка МОЗУ, используемая для хранения индексов, должна содержать две независимые друг отдруга константы Ді(Аї) и Аг(А/) для изменения первого и второго адресов коман­ ды в разрядах 54-20 и 214-36 соответственно (рис. 33). Будем на­ зывать их константами индексирования. При индексировании бло­ кируются переносы единиц из разрядов 21 и 5, если они возникают.

. Если адрес A i выходит за диапазон допустимых адресвв, то устанавливается в единицу указатель ЗЩ.

60

Значение некоторых разрядов отдельных команд точно зафик­ сировано, что указывается в описании этих команд. В таких слу­ чаях константа индексирования должна быть выбрана программи­ стом так, чтобы после индексирования значения таких разрядов совпадали с зафиксированными. Индексирование не производится, если 1 = 0.

* s

 

 

 

го г.'

зв

//(/лейне

Кш/птш

андеяссро^ам/г

 

 

"розрядіГТ'

первого

адреса -

й,(ДІ)<

второго адресе

г(

Рис. 33. Структура ячейки индекса.

После индексирования или сразу после чтения кода команды, если индексирование не производилось, происходит базирование адресов команды. Базирование заключается в прибавлении к на­ ходящимся в сумматоре адресам базисных адресов. Положение базисного адреса в МОЗУ определяется номером базиса бі или б2 , заданного в коде команды. Соответствие значений бі (62) и базис­ ных адресов, расположенных в ячейках уровня, на котором выпол­ няется программа, приведено на рис. 34. Если номера базисов обо­ их адресов команды совпадают или соответствуют базисным ад­ ресам, расположенным в одной ячейке уровня, то оба адреса бази­ руются одновременно. В других случаях адреса базируются после­ довательно. Появляющиеся при базировании переносы из двадцать первого и пятого разрядов блокируются.

0

*5

202!

38,

нулевые

АБ1

АВО

разряды

 

 

 

нулевые

АвЗ

 

лег

разряды

 

 

 

 

 

WSJ-*

 

S,(f3)-2

Рис. 34. Соответствие разрядов ячеек уровня и номеров базисов.

После базирования обоих адресов содержимое СчАК увеличи­ вается на единицу.

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

зом, А и — абсолютный адрес операнда

определяется как

А к =

a K +A K (Ai) - r - (6 K ),

где к=1,2 — номер адреса

операнда в

команде,

(бк) — значение базисного адреса.

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

Выполнение операции либо производится за один или несколь­ ко тактов арифметического устройства, либо совмещается с так­ тами чтения операндов или записи результата. При выполнении операции устанавливаются в нуль или единицу специальные инди­ каторы «Нуль» (НУЛЬ) и «Минус» (МН), которые могут быть использованы последующими командами.

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

Состояние индикатора МН совпадает со значением нулевого разряда результата операции.

Индикаторы НУЛЬ и МН устанавливаются в единицу одновре­ менно, если выполнены оба условия.

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

должна

производиться запись, выходит

за допустимый

диапазон,

то устанавливается в единицу указатель

ЗЩ, а запись

в ячейку с

этим адресом

не производится.

 

 

При

выполнении команды какое-либо из внешних

устройств

может

подать

запрос на приостановку. Приостановка производит­

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

Время выполнения команды складывается из времени чтения команды (5 мксек), индексирования (5 мксек), базирования (5 или 10 мксек), чтения операнда или записи результата (5 мксек для каждого обращения к МОЗУ) и времени выполнения операции. Последнее зависит от вида операции и структуры операндов. Напри­ мер, для большинства операций с одним нулевым операндом отсут­ ствует такт операции. Время выполнения арифметических опера­ ций с плавающей запятой зависит от количества сдвигов мантиссы

при выравнивании,порядков или

при нормализации

результата.

В связиіс этим в дальнейшем при

описании команд

указывается

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

62

3.2. КЛАССИФИКАЦИЯ ОПЕРАТОРОВ

Основные операторы, используемые для записи команд при со­ ставлении программ, можно разделить на группы, соответствую­ щие командам машины, реализующим действия:

над логическими константами; над двоичными числами с фиксированной запятой;

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

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

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

тическую

операцию

символом

 

« *

»,

то

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

состоит в следующем:

 

 

 

 

 

 

 

Номер

 

Запись оператор»

 

 

Машинный код

Выполнение оператора

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

 

на ЯСК

 

 

команды

 

 

 

 

0

«3

[:И;]

B l ;

В2

і

1 тс

«

 

(В2)*(В1)—• В2

 

 

 

 

 

1

^ | t 0 i a i 6 2 a j

 

1

.

[:И;]

B l ;

В2

{ *5 } і б і а і б 2 а *

 

(В2).(В1)

 

 

 

 

 

 

 

2

. В

[:И;1

B l ;

В2

(

*6 } г б 1 а ' б 2а«

 

( С м ) . ( В І ) — В 2

 

 

 

 

 

 

3

[:И;]

В1

 

{

* J }/б,а,00

 

(См)*(В1)

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

Третья разновидность арифметических и логических операто­ ров не использует второго адреса, поэтому при записи на ЯСК он отсутствует, а в машинном коде команды на месте бг и &2 стоят нули. При выполнении такой команды второй адрес не базируется.

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

63

3.3.ОПЕРАТОРЫ ДЕЙСТВИЙ НАД ЛОГИЧЕСКИМИ КОНСТАНТАМИ

Кэтой группе относятся операторы пересылки, поразрядные операторы («Поразрядно сложить», «Логически сложить», «Логи­ чески умножить»), а также операторы «Циклически сложить», «Суммировать количество единичных разрядов», «Логически сдви­ нуть», «Нормализовать».

ПЕ Р Е С Л А ТЬ СЛОВО (П)

П

[:И;] В1; В2

—10 і бійі бга2

Т = 25 мксек

Содержимое В1 пересылается в ячейку В2.

ПЕРЕСЛАТЬ МАССИВ С Л О В . ( £ Р У П )

Оператор записывается двумя строками.

ГРУП

[:И'; ] В'2

—171' 00 б'2

а'а

Т«=30+10п

мксек,

где п —

количество

пересылаемых

П

[:И;] В1; В2

—10 і біаіб2 аз

 

 

слов

 

 

 

 

 

 

 

 

 

В'2 соответствует второму адресу

 

машинной команды,

что не­

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

декса И' содержать

только Дг(Лі).

 

 

При

выполнении

оператора содержимое ячеек МОЗУ,

начиная

с ячейки

В1, пересылается в другое место МОЗУ, начиная

с ячей­

ки В2. Количество

пересылаемых слов," уменьшенное на единицу,

должно быть указано в разрядах 24-f-36 ячейки

В'2. Может быть

переслано не более

8191 слова. Результатом операции считается

последнее пересылаемое слово.

 

 

Оператор может

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

сива слов, но также для заполнения массива

ячеек одинаковой

информацией, например, нулевым кодом. Пусть нулевой код хра­ нится в ячейке с этикеткой НУЛЬ. Тогда, чтобы заслать нуль в 109 ячеек, начиная с адреса А, необходимо записать следующие опера­ торы

ПНУЛЬ; А

ГРУП +107

А;А-Н

ПЕРЕСЛАТЬ С ОБРАТНЫМ ЗНАКОМ ( П 0 3 Н )

П 0 3 Н

[:И;] В1; В2 —11 і бів] бяаа

Т«=25 мксек

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

64

ПЕРЕСЛАТЬ

МОДУЛЬ ( П М 0 Д )

 

П М 0 Д

[:И;] В1; В2 —12 і біВі бга2

Т = 2 5 мксек

Содержимое В1 с нулем

в

нулевом

разряде пересылается в

ячейку В2.

 

 

 

 

ПЕРЕСЛАТЬ

ЗНАК (ПЗН)

 

 

 

ПЗН

[:И;] B l ; В2

-14 і

біаі бгЭг

Т = 3 0 мксек

Результатом является слово в ячейке В2, содержащее нулевой разряд из В1 и остальные разряды из В2. Нулевой разряд ячейки В2 и разряды 1-=-36 ячейки В1 на выполнение операции не влияют.

ОБМЕНЯТЬ СЛОВА (0)

0

[:И;] B l ; В2

-г—15» біЯі бгЭг

Т = 3 5 мксек

Содержимое В2 пересылается в ячейку В1 и наоборот. На сум­ маторе в качестве результата сохраняется слово, пересылаемое в ячейку В2. По этому слову устанавливается состояние индикато­ ров НУЛЬ и МН.

ОБМЕНЯТЬ МАССИВ СЛОВ ( 0 Р У П )

Оператор записывается в двух

строках

 

 

 

ГРУП

[:И'; ]

В'2

—17/'

00 б'2 а2 '

Т = 3 0 + 20п

мксек,

где п—

количество

обмениваемых

0

[:И;]

B l ; В2

—151 біаі

6І&І

пар слов

 

 

 

 

 

 

 

 

 

 

В'2 соответствует

второму адресу

машинной команды, что не­

обходимо учитывать

при его индексировании, т. е. ячейка

индекса

И' должна содержать только Аг (Ai).

 

 

 

 

При выполнении оператора массив слов МОЗУ, начиная с ячей­ ки В2, пересылается на место массива, расположенного начиная с ячейки В1, который в свою очередь пересылается на место пер­ вого массива. Количество слов обмениваемых массивов, уменьшен­ ное на единицу, указывается в разрядах 24-4-36 ячейки В'2. Макси­

мальное количество

слов при этом равно 8191. Результатом опера­

ции является слово, записываемое в ячейку

В2 + п—1.

ЧИТАТЬ И З ЯЧЕЙКИ

(Ч)

 

[:И;] В2

—36 і б[Яі бгЭг

Т = 20 мксек

В2 соответствует второму адресу машинной команды, что необ­ ходимо учитывать при его индексировании, т. е. ячейка индекса должна содержать только A 2 (At) . Первый адрес в машинном эк-

І, Заказ 5093.

65

вив'аленте оператора проставляется транслятором и является ад­ ресом перехода к следующему оператору.

При выполнении оператора содержимое В2 вызывается на сум­ матор.

ЗАПИСАТЬ В ЯЧЕЙКУ (3)

З [:И;1 В2 —ЗО і біаі б 2 а 2 Т = 2 0 мксек

В2 соответствует второму адресу машинной команды, что необ­ ходимо учитывать при его индексировании, т. е. ячейка индекса должна содержать только Лг(Аг'). Первый адрес в машинном экви­ валенте оператора проставляется транслятором и является адре­

сом перехода

к следующему оператору.

 

При выполнении оператора результат

предыдущей операции

пересылается

в ячейку В2.

 

ПЕРЕСЛАТЬ ПОРЯДОК ( П П

0 Р )

 

П П 0 Р

[:И;] В1; В2

— 16г біаі б 2 а 2

Т—30 мксек

Результатом операции является слово, содержащее разряды О-т-29 содержимого В2 и разряды 30+-36 содержимого В1, которое записывается в ячейку В2. Разряды О-т-29 содержимого В1 и раз­ ряды ЗО-т-36 содержимого В2 на выполнение оператора не влияют.

П О Р А З Р Я Д Н О С Л О Ж И Т Ь (ПС)

Имеются четыре разновидности оператора:

ПСЗ

:И;]

В1; В2

+04

і 6t a,

б 2

а 2

Т = 30

мксек

ПС

[:И;]

В1; В2

+051

б,аі

б 2 а 2

Т = 25

мксек

ПСВ

:И;]

B l ; В2

+06

і

біа,

б 2 а 2

Т = 2 5

мксек

ПСР

:И;]

В і

+07

і

біа,

00

 

Т = 1 5

мксек

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

0 ф Э = О ;

0 ф 1 = 1;

1 + 0 - 1 ;

1 ф 1 - 0 .

где ф знак операции поразрядного сложения.

Оператор может использоваться для сравнения логических кон­ стант на «равно-неравно» или для формирования их из частей.

66

ЛОГИЧЕСКИ С Л О Ж И Т Ь (ЛС)

Имеются четыре разновидности операторов

Л С З

[:И;]

В1; В2

+ 7 4

£ 6t ai

б2 а2

Т = 30

мксек

ЛС

[:И;]

В1; В2

+75 і

біаі

б2 а2

Т = 25

мксек

лев

[:И;]

В1; В2

+76

і

біаі

б2 а2

Т = 25

мксек

Л С Р

[.И;]

В1

+ 7 7

і

6,3,

00

Т = 1 5

мксек

 

 

 

 

 

 

 

 

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

0 V 0 = 0 ;

0 V 1 = 1; I V 0 = 1 ; 1 V 1 = 1,

где V — знак операции логического сложения.

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

ЛОГИЧЕСКИ У М Н О Ж И Т Ь (ЛУ)

Имеются четыре разновидности операторов:

Л У З

[: И;] В1; В2

+70

і

біаj

б2

а2

'

Т = 3 0

мксек

ЛУ

[: :И;1 В1; В2

+71

і

біЗі

б2 а2

 

Т = 2 5

мксек

ЛУВ

[: И;] В1; В2

+72

і

б\&і б2

а2

 

Т = 2 5

мксек

Л У Р

[ :И;] В1

+73 і б,а, 00

 

 

Т = 15 мксек

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

0 Л 0 - 0 ; О Л 1 = 0 ; 1 Л 0 = 0 ; 1 Л 1 = 1.

где Л — знак операции логического умножения.

Оператор используется для выделения части логической кон­ станты. При этом одним из операндов является так называемый логический выделитель, содержащий единицы в разрядах, соот­ ветствующих выделяемым разрядам, и нули в остальных разря­ дах. Например, для выделения разрядов 30-^36 логический выде­ литель может быть определен как КЧ, имеющая в адресной части 177В.

5*

67

Л О Г И Ч Е С КИ СДВИНУТЬ (ЛСД)

Имеются четыре разновидности оператора:

Л С Д З

И;]

B l ;

В2

+ 60 і

біаі

б 2 а 2

Т = 3 0 + 9 5

мксек

Л С Д

И;]

B l ;

В2

+61 і

біаі

б2 а2

Т = 25+90 мксек

Л С Д В

И;]

ВЦ

В2

+62 і 6t ai

б 2 а 2

Т = 25+90

мксек

Л С Д Р

И;]

В1

 

+ 63 і

біаі

00

Т = 15+50

мксек

В сдвиге участвуют все тридцать семь разрядов содержимого В2 или сумматора. Величина и направление сдвига определяются разрядами 30+-36 содержимого ячейки В1, которые в совокупно­ сти называются константой сдвига. Остальные разряды ячейки В1 не используются. Если тридцатый разряд константы сдвига содер­ жит 0, то слово сдвигается влево на количество разрядов, указан­ ное в разрядах 31-=-36 константы сдвига. Если же этот разряд со­ держит 1, то сдвиг производится вправо. Освобождающиеся при їдвиге разряды заполняются нулями, а разряды, выходящие за разрядную сетку, теряются. Оператор используется для сдвига ча­ стей кода из одного места ячейки в другое.

Константу сдвига можно определить, например, с помощью оператора КЧ. Так, константу сдвига влево на четыре разряда можно задать как КЧ, в адресной части которой указывается 4. Константу сдвига можно задать также в виде литерала в опера­ торе ЛСД, как показано на примерах:

 

Hon

 

 

,

,25,

,

,

 

,30,

 

Лфесо

 

 

и

 

 

замечания

 

 

 

 

 

,

 

і ,

l?s

,

,

,21

S2,

і

і

і

і

,35,

,

,

,

,40,

 

 

 

 

,

,50,

 

л ,

c u

t ,

,

* , 4

І б ,

і \ е І

г

,

, * , 4 , a . )

у

\-,0-хд,Нуег,

 

 

 

 

,Т\я,

 

 

,

,

,

,

,

,

,

л ^

и г ,

і

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

l

i

t .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I

,

1 1

,

I

1 1 1

,

1

1

' і I

1

1

,

1

1 1

1 1 І 1 ,

1 1

1

1

1 1

С Л О Ж И Т Ь ЦИКЛИЧЕСКИ

 

(СЦКЛ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

сцкл

 

[:И;]

 

ВЦ

 

В2

—74 і

 

 

б 2 а 2

 

 

 

Т = 30+35

мксек

 

 

Производится сложение

 

операндов

 

и

при

появлении

 

переноса

из нулевого разряда прибавляется единица

к

тридцать

 

шестому

разряду суммы. Результат

записывается

в

ячейку

с адресом

В2.

Оператор

может

быть

 

использован

для

получения

контрольных

сумм

массивов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

С Л О Ж И Т Ь Ц И К Л И Ч Е С К И МДССИВ СЛОВ ( оіщд )

 

 

 

 

 

 

 

 

 

Оператор записывается в двух строках

 

 

 

 

 

 

 

 

 

 

 

 

ГРУП

 

[:И';]

 

В'2

—Пі'

 

00

6'2 a'j

 

 

Т = 2 5 + 5

п

мксек,

где

 

п—

 

 

 

 

 

 

количество

циклически

 

скла-.

 

С Ц К Л

 

1:И;]

ВЦ

 

В2

—74 і

біаі

б2 а»

 

 

 

 

 

 

 

 

дываемых

 

слов

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

68

В'2 соответствует второму адресу машинной команды, что необ­

ходимо

учитывать при его

индексировании, т. е. индексная ячейка

должна

содержать только

A 2 (Aj) .

При

выполнении оператора к содержимому В2 циклически при­

бавляются слова массива, расположенного в последовательных

ячейках МОЗУ, начиная с В1. Полученный результат

(контрольная

сумма массива) остается

в ячейке с адресом В2. Количество слов

в массиве, уменьшенное

на единицу, указывается

в разрядах

244-36 ячейки В'2. Максимальное количество слов в массиве 8191.

СУММИРОВАТЬ КОЛИЧЕСТВО ЕДИНИЧНЫХ РАЗРЯДОВ (СЕ)

СЕ

[:И;] B l ; В2

-76 і біаі бга2

Т=25-^90 мксек

Подсчйтывается~ количество единичных разрядов в ячейке В1 и полученное двоичное число записывается в младшие разряды ячей­ ки В2. Остальные разряды В2 заполняются нулями.

НОРМАЛИЗОВАТЬ ( Н 0 Р М )

Н 0 Р М

[:И;] B l ; В2 -75 і біаі бга2

Т = 30н-90 мксек

Разряды с первого по тридцать шестой содержимого В1 сдвига­

ются вЛево до тех пор, пока в первом разряде

не появится единица.

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

дах, то результатом операции являются нулевые

слова в См, В2 и

В 2 + 1 . Только в этом случае и устанавливается

в единицу инди­

катор НУЛЬ. Оператор может быть использован для перехода от

чисел с фиксированной запятой к

числам с

плавающей

запятой,

так

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

сдвигов

представляет собой порядок числа, а

из

сдвинутого числа

можно

легко

получить

мантиссу

исходного

числа с плавающей запятой. Для этого необходимо записать

груп­

пу операторов

 

 

 

 

 

 

 

 

Н 0 Р М

Ч И С Л 0 ; С

 

 

 

 

 

ЛУР

—777777777400В

 

 

 

 

 

ЛСВ

С; С

 

 

 

 

 

Здесь в ячейке Ч И С Л 0 находится число с фиксированной

запя­

той. Результат (число с плавающей

запятой)

будет записан в ячей­

ку С. Следует иметь в виду, что этой программой используется и ячейка С + 1 .

69

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