Математика | ||||
Курс программирование =Е.А.Жоголев Москва 1967 стр.402 | ||||
АННОТАЦИЯ
В основе книги лежит курс лекций, читанных в Московском университете. Большое внимание уделяется вопросам алгоритмизации вычислительных процессов и алгоритмическим языкам. Обучение программированию ведется на основе языка АЛГОЛ. Особенности книги — ориентация на условную вычислительную машину, система команд которой построена наиболее выгодным для учебного процесса образом. Это дает возможность продемонстрировать общие приемы программирования, применяемые на разных реальных машинах. Подробно рассматриваются некоторые специальные вопросы программирования (особенности использования машин с фиксированной запятой, отладка программ и др.). Во втором издании, увеличено число содержательных примеров, добавлены упражнения к главам. Изложение материала приведено в соответствие с официальным подмножеством языка АЛГОЛ 60, известным под названием Subset Algol. Книга рассчитана на студентов вузов, специализирующихся по вычислительной математике; она может быть использована и для самостоятельного овладения программированием. ОГЛАВЛЕНИЕ Предисловие ко второму изданию................ л Глава 1. Предмет курса................... § 1. Введение...............•....... .* § 2. Основные типы вычислительных машин........ U § 3. Структура АЦВМ................... W § 4. Этапы подготовки и прохождения задач на машине . . • i» Глава 2. Позиционные системы счисления.........• 22 § 1. Позиционные системы счисления............ ч«| § 2. Двоичная система счисления........•..... ?* § 3. Другие позиционные системы счисления........ «О § 4. Смешанные системы счисления.....,........ *Р § 5. Сокращенные позиционные системы счисления . . . . t да § 6. Перевод "чисел из одной системы счисления в другую . . 3? Упражнения........................ Глава 3. Физические принципы построения АЦВМ .... 36 47 § 1. Элементы машин ................. • • °А § 2. Физические принципы запоминания информации .... 4« § 3. Организация запоминающих устройств АЦВМ ..... 46 Глава 4. Описание учебной вычислительной машины ..... 52 § 1. Общая характеристика УВМ. Понятие адреса .... с 52 § 2. Изображение чисел ................ • * 5о § 3. Изображение команд ..... . .......... • &I § 4. Элементарные операции УВМ ............. 59 Упражнения ......... .... ......... • '" Глава 5. Алгоритмы и алгоритмический язык . • ....... '° § 1. Понятие алгоритма .................. '<> § 2. Блок-схемы и алгоритмические языки ....... . . °" § 3. Общая характеристика и основные понятия языка АЛГОЛ 90 Упражнения ........................ 96 Глава 6. Простые арифметические выражения и их программиро- вание ............................ 98 . § 1. Простые арифметические выражения и операторы при- сваивания ....................... 98 § 2. Разбиение на элементарные операторы присваивания . . 102 1* 4 ОГЛАВЛЕНИЕ § 3. Экономия выражений................. 108 § 4- Экономия рабочих ячеек и констант.......... 110 § 5. Действия с целыми числами........•..... 112 Упражнения........................ 114 Глава 7. Элементы математической логики и условия..... 115 § 1. Основные понятия математической логики и логические операции..............•.......... 115 | 2. Простые булевские выражения в АЛГОЛе...... 119 I 3. Простейшие преобразования булевских выражений .... 122 § 4. Понятие условия. Условные выражения........ 127 Упражнения........./.............. 132 Г л а в а 8. Программирование условий и булевских выражений . . 134 § 1. Программирование арифметических выражений с простейшими условиями ................... 134 § 2.- Выполнение логических операций и операций отношения на УВМ ........................ 139 §•3: Программирование простых булевских выражений . . 143 §•4; Программирование арифметических и булевских операторов присваивания с условиями............. 147 Упражнения........................ 151 Г л а в -а 9-. Операторы перехода и их программирование..... 152 5 1. Определение и назначение оператора перехода .... 152 § 2; Понятие и • определение переключателя......... 153 § 3. Программирование операторов перехода........ 156 Упражнения........................ 160 Глава 10. Производные операторы............... 161 | 1. Условные операторы.................. 161 § 2'. Составные операторы................•. 166 I 3'. Операторы цикла.................... 168 § 4*. Блоки......................... 174 ' Упражнения........................ 180 Глава 11. Программирование операторов цикла........ 182 § 1'. Общие вопросы программирования циклов....... 182 § 2. Программирование циклов без переменных команд . . . 184 § 3. Переменные с индексами и переменные команды .... 190 § 4. Программирование циклов с переменными командами . . 197 § 5. Программирование вложенных циклов......... 201 Упражнения........................ 205 Глава 12. Процедуры и их реализация на УВМ........ 206 § 1. Понятие процедуры.................. 206 § 2. Описания процедур.................. 209 § 3. Указатели функций и операторы процедур...... 214 § 4. Программирование процедур. Подпрограммы...... 218 Упражнения........................ 226 Глава 13. Автоматическая модификация команд....... 228 1. Сокращение числа переменных команд......... 228 2. Индексные регистры и Их назначение......... 229 ОГЛАВЛЕНИЕ, ° % 3. Операции УВМ над содержимым индексных регистров . 232 § 4. Использование индексных регистров при программировании ........................ 234 Упражнения........................ 244 Глава 14. Метопы определения положения запятой...... 246 § 1. Метод постоянных масштабных множителей...... 247 § 2. Операции УВМ над словами удвоенной длины..... 253 § 3. Метод плавающих масштабов.............. 255 § 4. Метод плавающей запятой..............__• 260 § 5. Компактные формы представления чисел с плавающей запятой ....................... 265 § 6. Вычисление элементарных функций.......... 271 Упражнения....................... 275 Глава 15. Ввод и вывод информации. Использование внешних запоминающих устройств................. 276 § 1. Ввод и вывод информации с использованием перфокарт 276 § 2. Режим начального ввода............... 286 § 3. Ввод и вывод информации с использованием перфоленты 287 § 4. Процедуры ввода и вывода в АЛГОЛе........ 293 § 5. Использование внешних запоминающих устройств . . . 299 Упражнения.......................• 303 Глава 16. Пульт управления машины. Контроль правильности составленных программ'.................. 305 § 1. Пульт управления..................• 305 § 2. Этапы прохождения задачи и их контроль...... 308 § 3. Отладка программ................... 312 § 4. Методика отладки на машине............. 314 Глава 17. Уточнение языка АЛГОЛ............. 320 § 1. Стандартное подмножество АЛГОЛа 60 (Subset Algol 60) 320 § 2. О формализме описания АЛГОЛа........... 322 § 3. Описания и блоки .................. 325 § 4. Тип результата арифметических операций....... 332 § 5. Приемы, проясняющие запись алгоритма........ 336 Глава 18. Обзор АЦВМ и их классификация......... 339 § 1. Машины с фиксированной и плавающей запятой . . . 339 § 2. Адресность машины.................. 341 § 3. Набор элементарных операций машины........ 344 § 4. Краткая характеристика некоторых машин....... 347 Глава 19. Программирование с использованием библиотеки подпрограмм........................ 354 § 1. Понятие об истинных и условных адресах...... 354 § 2. Стандартные подпрограммы............... 359 § 3. Классификация массивов................ 361 § 4. Составление стандартных массивов........... 365 § 5. Составление ТВА и ТРП............ . . . 367 § 6. Характеристика работы ССП.............. 369 6 ОГЛАВЛЕНИЕ Глава 20. Компилирующие и интерпретирующие системы ... 375 § 1. Понятие псевдокода........... дуг § 2. Компилирующие программы......... ' ' gyg § 3. Интерпретирующие программы ...... '. '. '. ', ' \ ' 380 § 4. Система команд машины М-20 как пример псевдокода для ^УВМ.................. OQ9 § 5. Общая структура интерпретирующей системы . . . . . 386 § 6. Некоторые подпрограммы, реализующие операции машины М-20................. ggg Ответы к упражнениям................. 302 Приложение I..................... ^02 Приложение II................... ,/У> Рекомендуемая литература.................... ^ Предметный указатель.................. /QQ ПРЕДИСЛОВИЕ КО ВТОРОМУ ИЗДАНИЮ В основу данной книги положены лекции по программированию, читавшиеся авторами в Московском государственном университете для студентов, специализирующихся по вычислительной математике. Эти лекции обычно сопровождались упражнениями, поэтому порядок изложения материала в лекциях был выбран таким, чтобы они своевременно давали тему для упражнений — этот порядок изложения сохранен и в данной книге. При подборе материала и его изложении авторы исходили из того, что из числа студентов-вычислителей университетов в основном комплектуется тот круг научных работников, которые занимаются вопросами создания различных систем математического обслуживания АЦВМ и исследованием новых областей применения этих машин, т. е. тем кругом вопросов, при решении которых требуется хорошее знание возможностей машин и высокая техника программирования. Поэтому авторы при изложении материала стремились выделить наиболее общие и важные вопросы, отвечающие запросам указанного круга лиц. Вопросам автоматизации программирования в книге уделено весьма мало внимания, так как они, по мнению авторов, требуют определенных навыков практической работы и заслуживают специального рассмотрения. По своему содержанию книга распадается на две части. Первая из них (главы 1—12) содержит основы программирования. Основное внимание здесь уделяется понятию алгоритма и способам записи алгоритмов. Изложение материала ведется на базе международного алгоритмического языка АЛГОЛ. Обучение методам и приемам программирования производится параллельно с введением основных единиц АЛ ГОЛ а применительно к учебной (вымышленной) вычислительной машине. Эта машина выбрана такой, чтобы ее можно было легко усвоить читателю и чтобы она давала возможность достаточно полно проиллюстрировать наиболее распространенные на разных машинах приемы программирования. Вторая часть книги (главы 13—20) посвящена некоторым специальным вопросам программирования, имеющим важное значение для эффективного использования машин. Цена: 150руб. |
||||