КнигоПровод.Ru28.03.2024

/ИТ-книги

Программирование и алгоритмические языки — Криницкий Н. А., Миронов Г. А., Фролов Г. Д.
Программирование и алгоритмические языки
Криницкий Н. А., Миронов Г. А., Фролов Г. Д.
год издания — 1975, кол-во страниц — 496, тираж — 80000, язык — русский, тип обложки — твёрд. 7Б, масса книги — 560 гр., издательство — Физматлит
серия — Справочная математическая библиотека
цена: 499.00 рубПоложить эту книгу в корзину
Сохранность книги — хорошая

Формат 60x90 1/16
ключевые слова — программиров, алгоритм, вычислител, логическ, ассемблер, алгол, фортран, кобол, pl/1, pl-1, pl1, эвм, бэсм, семантик, счислен, двоич, предикат, операц, ялс, операнд, сумматор, кодирован, цифро-букв, поразряд, регистр, отладк, дедуктив, трансляц, ibm/360

Книга представляет собой справочное пособие по программированию и алгоритмическим языкам. Она состоит из двух частей. Первая часть содержит общие вопросы программирования на вычислительных системах: теоретические основы программирования, некоторые вопросы теории алгоритмов, равносильные преобразования логических схем и др. Вторая часть содержит описание алгоритмических языков: язык ассемблера, АЛГОЛ-60, ФОРТРАН, КОБОЛ и PL/1, которые получили широкое применение на современных вычислительных машинах и системах за рубежом и в СССР.

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

ОГЛАВЛЕНИЕ

Предисловие10
 
Г л а в а  1.  Основы теории программирования13
 
§ 1.1. Основные понятия13
1.1.1. Буквы, связи, конструкции (13). 1.1.2. Слова, алфавиты, классификация
конструкций (16). 1.1.3. Общая структурная схема цифровой
программно-управляемой машины (24). 1.1.4. Принципы действия
программно-управляемой машины (27).
§ 1.2. Элементы теории формальных языков30
1.2.1. Синтаксис формального языка (31). 1.2.2. Семантика формального
языка (37).
§ 1.3. Системы счисления39
1.3.1. Позиционные системы счисления (39). 1.3.2. Перевод чисел из одной
системы счисления в другую (46). 1.3.3. Формы представления чисел в
машинах (49).
§ 1.4. Элементы математической логики53
1.4.1. Понятия логических связей, логического значения и высказывания (53).
1.4.2. Двоичные функции и алгебро-логические операции (55).
1.4.3. Основные свойства алгебро-логических операций и логических связей (57).
1.4.4. Полные системы алгебро-логических операций и логических связей (60).
1.4.5. Понятие предиката (62).
§ 1.5. Элементы теории алгоритмов64
1.5.1. Понятие алгоритма (64). 1.5.2. Первичные алгоритмы (67). 1.5.3. Понятие
операции (70). 1.5.4. Натуральные алгоритмы (72). 1.5.5. Полное определение
алгоритма (75). 1.5.6. ЭВМ как физическая реализация алгоритма выполнения
программ (76).
 
Г л а в а  2.  Язык логических схем и машинные языки78
 
§ 2.1. Язык логических схем (ЯЛС)78
2.1.1. Алфавит ЯЛС (78). 2.1.2. Первичные структуры языка логических схем (79).
2.1.3. Язык операндов, связанный с ЯЛС (83). 2.1.4. Элементарные операторы
(84). 2.1.5. Операторы; их классы, применяемые в ЯЛС (85). 2.1.6. Знаки
операторов и операторов, зависящих от параметров (86). 2.1.7. Запись
алгоритма на ЯЛС. Логическая схема и расшифровка операторов (87).
2.1.8. Правило выполнения алгоритма, заданного на ЯЛС (89). 2.1.9. Выражения.
Замыкания операторов. Обобщённые операторы (91). 2.1.10. Соглашения,
упрощающие запись алгоритмов (92). 2.1.11. Совмещение алгоритмов (94).
§ 2.2. Машинные языки операндов94
2 2 1 Язык чисел с фиксированной запятой (94). 2.2.2. Сумматоры (95).
2.2.3. Прямой код (97). 2.2.4. Обратный код (98). 2.2.5. Дополнительный код (100).
2.2.6. Кодирование чисел с фиксированной запятой в машинах (101). 2.2.7. Язык
чисел с плавающей запятой. Представление чисел в ЭВМ (102).
2.2.8. Кодирование цифро-буквенной информации (104).
§ 2.3. Машинные алгоритмические языки106
2.3.1. Элементарные машинные операции (106). 2.3.2. Арифметические
операции (108). 2.3.3. Поразрядные операции над машинными словами и
переносы (111). 2.3.4. Логические операции (113). 2.3.5. Операции, изменяющие
содержимое регистра команд (114). 2.3.6. Операции перехода (115).
2.3.7. Операции, изменяющие содержимое индексного регистра (117).
2.3.8. Операции над буквенной информацией (117). 2.3.9. Машинные
алгоритмические языки. Системы команд (118).
 
Г л а в а  3.  Программирование124
 
§ 3.1. Основные этапы процесса решения задачи на ЭВМ124
3.1.1. Математическая формулировка задачи (124) 3.1.2. Разработка методики
решения задачи (125). 3.1.3. Разработка алгоритма решения задачи (125).
3.1.4. Программирование (128). 3.1.5. Отладка программы (128). 3.1.6. Подготовка
исходных данных. Решение задачи на ЭВМ (129).
§ 3.2. Языки программирования131
3.2.1. Формальные алгоритмические языки (131). 3.2.2. Неалгоритмические
формальные языки программирования (133). 3.2.3. Не вполне формализованные
знаковые системы (133).
§ 3.3. Программирование на языке ЭВМ134
3.3.1. Связь между распределением памяти и составлением команд (134).
3.3.2. Символические адреса (135).
§ 3.4. Операторный метод программирования137
3.4.1. Сущность операторного метода программирования (138). 3.4.2. Организация
программ (142).
§ 3.5. Некоторые приёмы программирования143
3.5.1. Операторы, зависящие от параметров. Индексация (143).
3.5.2. Программирование в относительных адресах. Базирование (147).
3.5.3. Построение циклов (151). 3.5.4. Логические шкалы (155). 3.5.5. Выделение
подпрограммы (157).
 
Г л а в а  4.  Равносильные преобразования алгоритмов161
 
§ 4.1. Понятие равносильности алгоритмов. Комплексы. Равносильные
преобразования161
§ 4.2. Однородный комплекс. Эквивалент однородного комплекса163
§ 4.3. Распознавание равносильности однородных комплексов с помощью
их эквивалентов166
§ 4.4. Полная система равносильных преобразований однородных
комплексов169
§ 4.5. Действия над однородными комплексами. Пакеты однородных
комплексов174
4.5.1. Сложение однородных комплексов. (175). 4.5.2. Умножение однородных
комплексов (176). 4.5.3. Единичные и обратные комплексы (177). 4.5.4. Пакеты
однородных комплексов. Равносильность пакетов (177).
§ 4.6. Основные равносильные преобразования алгоритмов, заданных на ЯЛС178
§ 4.7. Равносильные преобразования, не связанные с внутренними свойствами
операторов179
§ 4.8. Основные преобразования логических операторов183
§ 4.9. Равносильные преобразования нелогических операторов185
§ 4.10. Перестановки операторов187
§ 4.11. Подчинённость оператора предикату188
§ 4.12. Вопрос о полноте системы основных равносильных преобразований
алгоритмов. Область их применений190
 
Г л а в а  5.  Математическое обеспечение ЭВМ191
 
§ 5.1. Понятие математического обеспечения ЭВМ191
§ 5.2. Классификация программ, еходящих в систему математического
обеспечения ЭВМ194
5.2.1. Операционная система (195). 5.2.2. Система средств программирования
(203). 5 2.3. Приложения. Система средств поддержания математического
обеспечения в рабочем состоянии (207).
§ 5.3. Математическое обеспечение ЭВМ как интерпретация ряда понятий
теории алгоритмов208
§ 5.4. Системное программирование212
§ 5.5. Дополнительные сведения о формальных языках215
5.5.1. Формальные грамматики (215). 5.5.2. Формальные языки, порождаемые
индуктивными грамматиками (216). 5.5.3. Формальные языки, порождаемые
дедуктивными грамматиками (218). 5.5.4. Связь между индуктивными и
дедуктивными грамматиками (22 1). 5.5.5. Формальная семантика формального
языка (222). 5.5.6. Сущность трансляции (224).
 
Г л а в а  6.  Символическое программирование225
 
§ 6.1. Понятие автокода или языка символического программирования
(языка ассемблера)225
§ 6.2. Алфавит языка символического программирования228
§ 6.3. Первичные структуры языка символического программирования229
§ 6.4. Символические адреса232
§ 6.5. Язык операндов, срязанный с языком символического программирования235
§ 6.6. Операторы языка символического программирования243
6.6.1. Одиночные действующие операторы (243). 6.6.2. Макрооператоры (251).
6.6.3. Операторы описания конструкций из операторов и распределения
памяти (254). 6.6.4. Операторы описания и распределения памяти (258).
6.6.5. Операторы — отладочные средства (261).
§ 6.7. Выполнение записей на языке символического программирования262
§ 6.8. Общая характеристика языков символического программирования
для машины «Минск-32» и системы IBM-360265
 
Г л а в а  7.  Введение в алгоритмический язык АЛГОЛ-60267
 
§ 7.1. Алфавит алгоритмического языка АЛГОЛ268
§ 7.2. Первичные структуры в АЛГОЛе269
§ 7.3. Переменные. Массивы. Описания типа271
§ 7.4. Язык операндов, связанный с АЛГОЛом272
§ 7.5. Указатели функций274
§ 7.6. Выражения в АЛГОЛе275
7.6.1. Логические выражения (275). 7.6.2. Арифметические выражения (276).
7.6.3. Именующие выражения (277). 7.6.4. Вычисление выражений (278).
§ 7.7. Операторы279
7.7.1. Составной оператор (280). 7.7.2. Блок (281). 7.7.3. Оператор
присваивания (282). 7.7.4. Оператор перехода (282). 7.7.5. Описание
переключателя (283). 7.7.6. Оператор процедуры (284). 7.7.7. Описание
процедуры (284). 7.7.8. Вычисление значения- функции (287). 7.7.9. Процедуры-коды.
Процедуры вводами выдачи (287). 7.7.10. Побочный эффект (290) 7.7.11. Пустой
оператор (290). 7.7.12. Оператор цикла (290). 7.7.13. Оператор «если» (292).
7.7.14. Альтернативный оператор (293).
§ 7.8. АЛГОЛ-программа. Примечания в ней293
§ 7.9. Алгоритм выполнения АЛГОЛ-программы294
§ 7.10. Заключительные замечания300
 
Г л а в а  8.  Введение в алгоритмический язык ФОРТРАН302
 
§ 8.1. Алфавит алгоритмического языка ФОРТРАН302
§ 8.2. Первичные структуры в ФОРТРАНе303
§ 8.3. Переменные. Массивы305
§ 8.4. Указатели функций307
§ 8.5. Выражения308
8.5.1. Логическое выражение (308). 8.5.2. Арифметическое выражение (309).
§ 8.6. Операторы311
8.6.1. Метка (312). 8.6.2. Операторы присваивания (312). 8.6.3. Операторы
перехода (313). 8.6.4. Условные операторы (314). 8.6.5. Оператор продолжения (314).
8.6.6. Оператор останова (315). 8.6.7. Оператор цикла (315). 8.6.8. Оператор
процедуры (317).
§ 8.7. Файлы и их описания317
8.7.1. Файл. Два типа файлов (317). 8.7.2. Оператор описания файлов (318).
§ 8.8. Операторы ввода (вывода)319
8.8.1. Список ввода (вывода) (319). 8.8.2. Операторы ввода (вывода) без
форматов (320). 8.8.3. Операторы ввода (вывода) с форматом (322). 8.8.4. Оператор
задания формата (323).
§ 8.9. Описания в ФОРТРАН-программах327
8.9.1. Спецификаторы типа (327). 8.9.2. Управление выводом на печать (336).
8.9.3. Операторы, задающие различные сведения (336). 8.9.4. Подпрограммы (341).
§ 8.10. ФОРТРАН-программа347
 
Г л а в а  9.  Введение в алгоритмический язык PL/1349
 
§ 9.1. Алфавиты алгоритмического языка PL/1349
§ 9.2. Первичные структуры в PL/1351
§ 9.3. Переменные. Массивы. Структуры354
§ 9.4. Указатели функций360
§ 9.5. Выражения361
9.5.1. Арифметическое выражение (361). 9.5.2. Символьное выражение (363).
9.5.3. Логическое выражение (363). 9.5.4. Скалярное выражение (365). 9.5.5.
Выражения над массивами (365). 9.5.6. Выражения над структурами (366).
§ 9.6. Описание данных367
9.6.1. Описатели данных (367). 9.6.2. Описатели имени входа (373). 9.6.3.
Описатели размещения данных в памяти (375). 9.6.4. Описатели массивов и
старших структур (378). 9.6.5. Описатели эквивалентности (379). 9.6.6. Описатели
начальных данных (381). 9.6.7. Описатель отождествления структур (382). 9.6.8.
Описатели файлов (383).
§ 9.7. Операторы385
9.7.1. Блок (386). 9.7.2. Операторы присваивания (387). 9.7.3. Оператор
перехода (391). 9.7.4. Оператор «если» (391). 9.7.5. Оператор цикла (391).
9.7.6. Пустой оператор (393). 9.7.7. Оператор останова (393). 9.7.8. Описание
процедуры (394). 9.7.9. Оператор процедуры. PL-программа (394). 9.7.10. Оператор
входа в процедуру (397). 9.7.11. Оператор обращения к процедуре (397). 9.7.12.
Оператор возврата (398). 9.7.13. Оператор конца (399). 9.7.14. Оператор размещения
данных (399). 9.7.15. Оператор освобождения памяти (401). 9.7.16. Оператор ожидания
(402). 9.7.17. Оператор описания данных (402). 9.7.18. Операторы ввода-вывода (403).
§ 9.8. Средства прерывания419
9.8.1. Ситуации прерывания (419). 9.8.2. Оператор задания реакции на прерывание (423).
9.8.3. Оператор отмены реакции на прерывание (424). 9.8.4. Оператор, имитирующий
ситуацию прерывания (424). 9.8.5. Оператор вывода на дисплей (424).
§ 9.9. Встроенные функции425
 
Г л а в а  10.  Введение в алгоритмический язык КОБОЛ433
 
§ 10.1. Алфавит алгоритмического языка КОБОЛ434
§ 10.2. Первичные конструкции языка КОБОЛ435
10.2.1. Зарезервированные слова (435). 10.2.2. Слова пользователя (436).
§ 10.3. Структура КОБОЛ-программы439
§ 10.4. Раздел идентификации440
§ 10.5. Раздел оборудования441
10.5.1. Секция конфигурации (441). 10.5.2. Секция ввода-вывода (442).
§ 10.6. Раздел данных444
10.6.1. Сущность описания данных (444). 10.6.2. Описание данных (448). 10.6.3. Секция
массивов (455). 10.6.4. Секция рабочей памяти (456). 10.6.5. Секция связи (457).
§ 10.7. Язык операндов, соответствующий языку КОБОЛ457
§ 10.8. Выражения, используемые в КОБОЛе459
10.8.1. Арифметическое выражение (459). 10.8.2. Логическое выражение (460).
§ 10.9. Раздел процедур КОБОЛ-программы465
10.9.1. Структура раздела процедур (465). 10.9.2. Типы операторов
§ 10.10. Арифметические операторы467
10.10.1. Повелительные арифметические операторы (467). 10.10.2. Условные
арифметические операторы (469).
§ 10.11. Операторы управления порядком выполнения процедур469
10.11.1. Операторы ПЕРЕЙТИ, ИЗМЕНИТЬ и ОСТАНОВИТЬ (470).
10.11.2. Операторы ВЫПОЛНИТЬ и ВЫЙТИ (471).
§ 10.2. Операторы ввода-вывода474
10.12.1. Операторы ОТКРЫТЬ и ЗАКРЫТЬ (474). 10.12.2. Операторы ЧИТАТЬ и ПИСАТЬ
(475). 10.12.3. Операторы ПРИНЯТЬ и ВЫДАТЬ (476).
§ 10.13. Операторы переноса477
10.13.1. Операторы ПОМЕСТИТЬ и ПРОСМОТРЕТЬ (477). 10.13.2. Оператор СОРТИРОВАТЬ
(478).
§ 10.14. Операторы связи с программами479
10.14.1. Операторы ВЫЗВАТЬ, ВЫЙТИ-ИЗ-ПРОГРАММЫ и ОСВОБОДИТЬ (479). 10.14.2.
Оператор ВОЙТИ (480).
§ 10.15. Оператор ЕСЛИ480
§ 10.16. Семантика КОБОЛа481
10.16.1. Особенности языка КОБОЛ (481). 10.16.2. Алгоритм выполнения КОБОЛ-программ
(482).
 
Литература486
Предметный указатель489

Книги на ту же тему

  1. Современные языки и технологии параллельного программирования: Учебник, Гергель В. П., 2012
  2. Практика программирования на Фортране: Упражнения с комментариями, Дрейфус М., Ганглоф К., 1978
  3. Индивидуальная отладка программ, Безбородов Ю. М., 1982
  4. Программирование на языке Ада, Вегнер П., 1983
  5. Язык программирования Эль-76. Принципы построения языка и руководство к пользованию. — 2-е изд. испр. и доп., Пентковский В. М., 1989
  6. Языки программирования. Концепции и принципы, Кауфман B. Ш., 1993
  7. Универсальные языки программирования. Семантический подход, Калинин А. Г., Мацкевич И. В., 1991

© 1913—2013 КнигоПровод.Ruhttp://knigoprovod.ru