Файл: Караваев, Н. И. Электронные цифровые вычислительные машины и программирование учеб. пособие.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 21.10.2024

Просмотров: 102

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

- 266 -

оператор

После каждого оператора ставится точка с запятой.

Блок представляет собой самую совершенную синтаксичес­

кую единицу АЛГОЛа.

 

 

 

 

 

 

Блок -

автономный участок

программы,

включающий в себя

информацию двух видов: описания данных и других

объектов,

участвующих в вычислениях, и операторы.

 

 

 

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

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

скоб­

кой ое^иг

и заканчивается

словесной скобкой

e n d

 

Программа в АЛГОЛе представляет собой либо блок, либо

составной

оператор.

 

 

 

 

 

 

В заключение приведем пример простейшей программы на

 

АЛГОЛе.

 

 

 

 

 

 

 

Пример. Два одномерных массива

а й в

содержат по 30

эле­

ментов. Вычислить

зо

 

\2

 

 

 

Программа на АЛГОЛе записывается следующим образом:

 

 

D : - О ;

(о% IЫ

$hp

i unlit

Зо

do

 

e u d


- 267 -

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

§9.4.ТРАНьЛЯТиРЬ

Современные трансляторы - это мощные программирующие программы, переводящие запись алгоритмов с некоторого вход­ ного языка на язык конкретной ЗьВМ. Перевод состоит в заме­ не символов и синтаксиса входного языка символами и синтак­ сисом машинного языка, при сохранении неизменным смыслового содержания переводимого текста.

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

Оно должно быть минимальным.

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

Определенные ограничения на входной язык накладываются со стороны самой ЭЦВМ и, в частности, устройств ввода информации. Последние, как правило, имеют довольно ограниченный алфавит,

- 268 -

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

В основе построения трансляторов лежит блочный принцип. Это объясняется сравнительно небольшими размерами ОЗУ ЭЦВМ, не позволяющими размещать одновременно обрабатываемую инфор­ мацию и транслятор в целом.

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

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

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

После ввода информации на ЭЦВМ происходит при необходи­ мости перекодировка ее на промежуточный язык и перевод инфор­ мации на внутренний язык. Затем в ОЗУ один за другим вызы­ ваются блоки программирования. В задачу каждого блока входит реализация алгоритмов программирования для единиц языка опре­ деленного типа.

После того как запрограммированы все синтаксические еди-


- 269 -

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

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

Работа по созданию трансляторов носит коллективный харак­ тер и продолжается порой годами. Например, суммарная трудо­ ёмкость разработки системы автоматизации программирования АЛЬФА оценивается в 35 человеко-лет.

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


Ли т е р а т у р а

1. ДРОЗДОВ Е.А., КОМАРНИцКИй В.А., ПЯТИБРАТОВ А.II. Электронные цифровые вычислительные машины. Воениздат,1058.

2. КСЕНОФОНТОВ И.С., ЛЕМБЕРГ В.М., ПУЧКО А.Н., АЖОВ- ЕМЕЛЬЯНОВ О.Д., ЯКОВЛЕВ К.А. Электронные цифровые вычисли­ тельные машины. "Машиностроение", 1У70.

3. ПЕНйГАЛОВ Н.А., ЯКОВЛЕВ Б.Ф. Электронные вычислитель­ ные устройства. ВАА, 1966.

4.АЙНБЕРГ В.Д., ГАВРИЛЕНКО Е.Т., САБСОВИЧ Л.-. Пронраммирование для электронных вычислительных машин типа "Урал". "Наука", 1966.

5.ГУТЕР Р . С , РЕЗНИКОВСКИ? П.Т., РЕЗНИК СМ. Програм­ мирование и вычислительная математика. "Наука", 1971.

6.МАК-КРАКЕН Дж. Программирование на АЛГОЛЕ. "Мир",

1964.

7.ЖОГОЛЕВ Е.А., ТРИФОНОВ HJI . Курс программирования. "Наука", 1971.

8.КАЛАЧЕВ В.М., ЯКУБОВИЧ М.М. Программирование для ЭЦВМ "Минск-2" и "Минск-22". "Советское радио", 1971.

9.ПРОХОРОВ В.И., ПОГОРЕЛКО И.А., ЯКОВЛЕВ З.А. Основы программирования для электронных цифровых вычислительных машин. "Высшая школа", 1967.

10. СОЛЛОГУБ А.В. Автоматизация вычислений. Куйбышевс­ кое книжное изд-во, 1969.

О Г Л А В Л Е Н И Е

 

 

 

 

 

 

 

 

Стр.

Введение

 

 

 

 

 

3

 

 

Ч а с т ь

п е р в а я

 

 

 

 

ОСНОВНЫЕ УСТРОЙСТВА ЭЦВМ И ПРИНЦИП ИХ ДЕЙСТВИЯ

 

Глава

1. АРИФМЕТИЧЕСКИЕ И ЛОГИЧЕСКИЕ ОСНОВЫ

 

 

 

 

ЭЛЕКТРОННЫХ ЦИФРОВЫХ ВЫЧИСЛИТЕЛЬНЫХ МАШИН 14

§ 1.1. Системы счисления применяемые в ЭЦВМ

 

14

& 1.2.

Перевод чисел из одной позиционной системы

21

$

1.3.

счисления в другую

чисел

 

 

 

Формы представления

 

 

 

24

S

1.4.

Арифметические действия с двоичными числами

28

4

1.5.

в ЭЦВМ

 

 

 

 

 

Элементы математической логики

 

 

44

Глава П. ОСНОВНЫЕ ЭЛЕМЕНТЫ И УЗЛЫ ЭЛЕКТРОННЫХ

 

 

 

 

ЦИФРОВЫХ ВЫЧИСЛИТЕЛЬНЫХ МАШИН

 

 

59

5 2 . 1 . Двухпозиционные элементы

 

 

 

59

5 2.2.

Основные логические

схемы

 

 

 

66

§ 2.3. Триггеры

 

 

 

 

 

75

§ 2.4.

Регистры

 

 

 

 

 

81

Ь

2.5. Счётчики

 

 

 

 

 

86

5 2.6. Дешифраторы

 

 

 

 

 

94

Глава

Ш. ЗАПОМИНАЮЩЕЕ УСТРОЙСТВА /ЗУ/

 

 

102

§

3 . 1 . Назначение, основные характеристики

и типы

102

§

3.2.

запоминающих устройств

 

на

 

Оперативные запоминающие устройства

 

105

s

3.3.

магнитных сердечниках

 

 

 

Запоминающие устройства на магнитных бараба­

 

 

 

нах, магнитных лентах, магнитных дисках

и

120

 

 

магнитных картах

 

 

 

 

Глава

1У. АРИФМЕТИЧЕСКИЕ УСТРОЙСТВА /АУ/

 

 

129

$

4 . 1 . Назначение и основные типы

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

129

 

 

устройств

 

 

 

 

 

5 4.2. Сумматоры

 

 

 

 

 

130

§ 4.3. Комбинационные сумматоры

 

 

 

134

§ 4.4.

Накапливающие сумматоры

блочного

типа

по­

1-36

§

4.5.

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

устройство

140

§

4.6.

следовательного

действия

накапливающего

 

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

устройство

 

145

 

 

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

 

 

, Глава

У. УСТРОЙСТВА УПРАВЛЕНИЯ ЦИФРОВЫХ ВЫЧИСЛИТЕЛЬ­

 

 

НЫХ МАШИН

 

 

 

 

 

149

 

5 . 1 .

Общая характеристика устройств управления

 

 

 

ЭЦВМ

 

 

 

 

 

1"4Э


 

 

 

 

 

 

 

Стр.

5 5.2.

Состав устройства

управления

 

 

автома­

 

151

S 5.3.

Обеспечение устройством управления

 

156

 

 

тической работы машины

 

 

 

 

Глава

У1. УСТРОЙСТВА ВВОДА ДАННЫХ / УВД /

И УСТРОЙ­

 

 

 

 

СТВА ВЫДАЧИ РЕЗУЛЬТАТОВ /УВР/

 

 

 

162

§

6 . 1 .

Назначение и общие сведения об устройствах

 

 

s

6.2.

ввода

данных и устройствах выдачи

результатов162

Основная аппаратура устройств

ввода

данных

 

164

§

6.3.

счётных машин

 

 

 

 

 

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

171

 

 

татов

счётных машин

 

 

 

 

 

 

 

Ч а с т ь

в т о р а я

 

 

 

 

 

 

 

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

 

 

 

 

Глава

УЛ. ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ МАШИНЫ СЭЦВМ-1

179

§ 7 . 1 .

Алгоритм. Способы

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

 

179

5 7.2.

Структура команд и чг.сел СЭЦВМ-1

 

 

 

187

4

7.3.

Система операций СЭЦВМ-1

 

при

 

192

§

7.4.

Применение системы операций СЭЦВМ-1

 

198

§

7.5.

составленич программ

 

вычисли­

 

Программирование

разветвляющихся

201

6

7.6.

тельных процессов

циклических

вычислительных

Программирование

 

204

§

7.7.

процессов

 

 

 

 

 

Понятие о масштабировании

 

стандарт­

 

211

§

7.8.

Программирование

с использованием

 

215

9

7.9.

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

 

 

 

 

 

Программирование в условных и действитель­

 

220

 

 

ных адресах

 

 

 

 

 

Глава

УШ. ОРГАНИЗАЦИЯ РЕШЕНИЯ ЗАДАЧ НА СЭЦВМ-1 . . .

225

& 8 . 1 .

Основные этапы решения задачи на

ЭЦВМ . . . .

 

225

$

8.2.

Пульт управления машины СЭЦВМ-1.

Работа за

 

228

$ 8.3.

пультом

 

 

 

 

 

Ввод и вывод информации

 

 

 

 

235

§

8.4.

Отладка программы. Понятие об отладочной

 

241

§

8.5.

программе

 

 

 

 

 

Программный контроль решения задачи на

 

247

 

 

ЭЦВМ

 

 

 

 

 

 

Глава

IX. АВТОМАТИЗАЦИЯ ПРОГРАММИРОВАНИЯ

 

 

251

5

9 . 1 . Основные методы автоматизации

программирова­

251

» 9.2.

ния

библиотечных подпрограмм

 

 

 

Метод

языке . .

 

254

§ 9.3.

Общие

сведения об

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

 

258

$

9.4.

Трансляторы

 

 

 

 

 

267

 

 

Ли т

е р а т у р а

 

 

 

 

270

 

 

 

Редактор

Б.Д. ЯРОВОЙ

 

 

 

 

 

 

 

Г-25204Подписано к печати 10.10.72 г.

 

 

 

 

объем

11,6 печ.л. лит.ЛВВТКУ зак.

223