Часть 3. ГЛОССАРИЙ (СЛОВАРЬ ТЕРМИНОВ КОБОЛА) ... 98

  1. Введение 98

  2. Определения 98

Часть 4. ОСНОВНЫЕ ПОНЯТИЯ . . , . . . . ,127

  1. Введение . . . 127

  2. Обозначения, используемые в форматах и правилах . . . .127

  3. Правила . 120

  4. Понятия языка " 130

    1. Набор литер 130

    2. Структура языка . . . . 130

    3. Понятие машинно-независимого описания данного . . 139

    4. Явные и неявные спецификации 152

    5. Внешний переключатель . 135

  5. Исходная Кобол-программа . . • 156

    1. Введение . . . . 156

    2. Организация 156

    3. Структура 156

  6. Разделы .156

    1. Раздел идентификации . 156

    2. Раздел оборудования 157

    3. Раздел данных . . 158

    4. Раздел процедур .160

  7. Формат представления 166

    1. Общее описание 166

    2. Описание формата представления 166

    3. Форматы раздела, секции, параграфа 168

    4. Статьи раздела данных . 169

    5. Декларативы 170

    6. Заголовок конца программы . . . 170

  8. Зарезервированные слова Кобола ' . . .170

Часть 5. ФОРМАТЫ ЯЗЫКА , . , 179

  1. Сводка форматов английской нотации . 179

  2. Сводка форматов русской нотации 211-

Часть 6. ЯДРО 244

  1. Введение в модуль ядра ; 244

    1. Назначение 244

    2. Характеристика уровней 245-

    3. Ограничения по уровням, касающиеся общих характеристик языка 245

  2. Исходная программа на Коболе 246

    1. Общее описание 246

    2. Организация 246

    3. Структура . . . . .... . . . . . 247

    4. Заголовок конца программы . 247

  3. Раздел идентификации в ядре . 248

    1. Общее описание 248

    2. Организация 249

    3. Параграф PROGRAM-ID (ПРОГРАММА) 249

    4. Параграф DATE-COMPILED (ДАТА-ТРАНСЛЯЦИИ) . .249

    5. Раздел оборудования в ядре 250Общее описание 250

    6. Секция конфигурации 250

    7. Параграф SOURCE-COMPUTER (ИСХОДНАЯ-МАШИНА) . 251

    8. 4. Параграф OBJECT-COMPUTER (РАБОЧАЯ-МАШИНА) . 252

    9. Параграф SPECIAL-NAMES (СПЕЦИАЛЬНЫЕ-ИМЕНА) . . 253

-5. Раздел данных в ядре 261

  1. Общее описание 261

  2. Секция рабочей памяти . . 261

  3. Статья описания данного . . 262

  4. Фраза BLANK WHEN ZERO (ПРОБЕЛ КОГДА НУЛЬ) . . 266

  5. Фраза имя-данного или FILLER (ЗАПОЛНИТЕЛЬ) . . 267

  6. Фраза JUSTIFIED (СДВИНУТО) '267

  7. Номер-уровня . . , 268

  8. Фраза OCCURS (ПОВТОРЯЕТСЯ) 269

  9. Фраза PICTURE (ШАБЛОН) . 278

  10. Фраза REDEFINES (ПЕРЕОПРЕДЕЛЯЕТ) . . . . 281

  11. Фраза RENAMES (ПЕРЕИМЕНОВЫВАЕТ) 285

  12. Фраза SIGN (ЗНАК) 286

  13. Фраза SYNCHRONIZED (ВЫДЕЛЕНО) . . . . . -287

  14. Фраза об использовании .’ 289

  15. Фраза VALUE (ЗНАЧЕНИЕ) 292

<6. Раздел процедур в ядре- 294

  1. Общее описание . . . 294

  2. Арифметические выражения 295

  3. Условные выражения 298

  4. . Общие фразы и правила для форматов операторов , , , 309

  1. Оператор ACCEPT (ПРИНЯТЬ) . ... . .314

  2. Оператор ADD (СЛОЖИТЬ) : 316

  3. Оператор ALTER (ИЗМЕНИТЬ) . . ' 319

€.8. Оператор COMPUTE (ВЫЧИСЛИТЬ) 320

  1. Оператор CONTINUE (ПРОДОЛЖИТЬ) 321

  2. Оператор DISPLAY (ВЫДАТЬ) 321

  3. Оператор DIVIDE (РАЗДЕЛИТЬ) . . . . . . . 323

  4. Оператор ENTER (ВОЙТИ) , . . 327

  5. Оператор EVALUATE (ОЦЕНИТЬ) . . . 327

  6. Оператор EXIT (ВЫЙТИ) . 333

  7. Оператор GO ТО (ПЕРЕЙТИ) 333

  8. Оператор IF (ЕСЛИ) 334

■ 6.17. Оператор INITIALIZE (ИНИЦИИРОВАТЬ) 336

  1. Оператор INSPECT (ПРОСМОТРЕТЬ) ..... 338

  2. Оператор MOVE (ПОМЕСТИТЬ) 352

  3. Оператор MULTIPLY (УМНОЖИТЬ) 357

  4. Оператор PERFORM (ВЫПОЛНИТЬ) 358

  5. Оператор SEARCH (ИСКАТЬ) 373

  6. Оператор SET (УСТАНОВИТЬ) 378

  7. Оператор STOP (ОСТАНОВИТЬ) 383

  8. Оператор STRING (СОБРАТЬ) 384

  9. Оператор SUBTRACT (ОТНЯТЬ) . 387

  10. Оператор UNSTRING (РАЗОБРАТЬ) 390

7. Отладка в ядре 395

  1. Общее описание 395

  2. Переключатель времени компиляции 395

  3. Отладочные строки 396

Часть 7. МОДУЛЬ ПОСЛЕДОВАТЕЛЬНОГО ВВОДА-ВЫВОДА . 396

  1. Введение в модуль последовательного ввода-вывода .... 396

    1. Назначение . . 396

    2. Характеристика уровней 396Понятия языка . . 397

  2. Раздел оборудования в модуле последовательного ввода-вывода . 402

    1. Секция ввода-вывода 402

    2. Параграф FILE-CONTROL (УПРАВЛЕНИЕ-ФАЙЛАМИ) . . 402

    3. Статья управления файлом 403

    4. Фраза ACCESS MODE (ДОСТУП) 405

    5. Фраза FILE STATUS (СОСТОЯНИЕ ФАЙЛА) . . .405

    6. Фраза ORGANIZATION IS SEQUENTIAL (ОРГАНИЗАЦИЯ ПО­СЛЕДОВАТЕЛЬНАЯ) 406

    7. Фраза PADDING CHARACTER (ЛИТЕРА ЗАПОЛНИТЕЛЬ) . 406

    8. Фраза RECORD DELIMITER (ОГРАНИЧИТЕЛЬ ЗАПИСИ) . 407

    9. Фраза RESERVE (РЕЗЕРВИРОВАТЬ) 408

    10. Параграф I-O-CONTROL (УПРАВЛЕНИЕ-ВВОДОМ-ВЫВО-

ДОМ) . . 409

    1. Фраза MULTIPLE FILE ТАРЕ (НА ОДНОЙ КАТУШКЕ) . 410

    2. Фраза RERUN (ПЕРЕПРОГОН) 411

    3. Фраза SAME AREA (ОБЩАЯ ОБЛАСТЬ) 413

  1. Раздел данных в модуле последовательного ввода-вывода 415

    1. Секция файлов 415

    2. Статья описания файла . . . . • 416

    3. Фраза BLOCK CONTAINS (В БЛОКЕ) 418

    4. Фраза CODE-SET (АЛФАВИТ) 419

    5. Фраза DATA RECORDS (ЗАПИСИ ДАННЫХ) . .420

    6. Фраза LABEL RECORDS (МЕТКИ) 420

    7. Фраза LINAGE (ВЕРСТКА) 421

    8. Фраза RECORD (В ЗАПИСИ) .424

    9. Фраза VALUE (ЗНАЧЕНИЕ) 427

  2. Раздел процедур в модуле последовательного ввода-вывода . . . 428

    1. Общее описание 428

    2. Оператор CLOSE (ЗАКРЫТЬ) 429

    3. Оператор OPEN (ОТКРЫТЬ) . 433

    4. Оператор READ (ЧИТАТЬ) 439

    5. Оператор REWRITE (ОБНОВИТЬ) 443

    6. Оператор USE (ИСПОЛЬЗОВАТЬ) 444

    7. Оператор WRITE (ПИСАТЬ) . . . ' 447

Часть 8. МОДУЛЬ ОТНОСИТЕЛЬНОГО ВВОДА-ВЫВОДА . 453

  1. Введение в модуль относительного ввода-вывода 453

    1. Назначение . . . 453

    2. Характеристика уровней 453

    3. Понятия языка

  2. Раздел оборудования в модуле относительного ввода-вывода . . 460

    1. Секция ввода-вывода 460

    2. Параграф FILE-CONTROL (УПРАВЛЕНИЕ-ФАЙЛАМИ) . 460

    3. Статья управления файлом 460

    4. Фраза ACCESS MODE (ДОСТУП) 463

    5. Фраза ORGANIZATION IS RELATIVE (ОРГАНИЗАЦИЯ ОТНО­СИТЕЛЬНАЯ) 464

    6. Параграф I-O-CONTROL (УПРАВЛЕНИЕ-ВВОДОМ-ВЫВОДОМ) 465

  3. Раздел данных в модуле относительного ввода-вывода .... 466

    1. Секция файлов 466

    2. Статья описания файла 466

  4. Раздел процедур в модуле относительного ввода-вывода . . . 468

    1. Общее описание 468

    2. Оператор CLOSE (ЗАКРЫТЬ) 468

    3. Оператор DELETE (УДАЛИТЬ) 470

    4. Оператор OPEN (ОТКРЫТЬ) 471

    5. Оператор READ (ЧИТАТЬ) 476

    6. Оператор REWRITE (ОБНОВИТЬ) 481

    7. Оператор START (ПОДВЕСТИ) 484

    8. Оператор USE (ИСПОЛЬЗОВАТЬ) 486

    9. Оператор WRITE (ПИСАТЬ) 488

Часть 9. МОДУЛЬ ИНДЕКСНОГО ВВОДА-ВЫВОДА .492

  1. Введение в модуль индексного ввода-вывода 492

    1. Назначение . . : 492

    2. Характеристика уровней 492

    3. Понятия языка 492

  2. Раздел оборудования в модўле индексного ввода-вывода . 500

    1. Секция ввода-вывода 500

    2. Параграф FILE-CONTROL (УПРАВЛЕНИЕ-ФАЙЛАМИ) . . 500

    3. Статья управления файлом 500

    4. Фраза ACCESS MODE (ДОСТУП) 502

    5. Фраза ALTERNATE RECORD KEY (ДОПОЛНИТЕЛЬНЫЙ КЛЮЧ ЗАПИСИ) 593

    6. Фраза ORGANIZATION IS INDEXED (ОРГАНИЗАЦИЯ ИН­

ДЕКСНАЯ) 505

    1. Фраза RECORD KEY (КЛЮЧ ЗАПИСИ) 505

    2. Параграф I-O-CONTROL (УПРАВЛЕНИЕ-ВВОДОМ-ВЫВОДОМ) 506

  1. Раздел данных в модуле индексного ввода-вывода 507

    1. Секция файлов 507

    2. Статья описания файла 507

  2. Раздел процедур в модуле индексного ввода-вывода .... 509

    1. Общее описание . 509

    2. Оператор CLOSE (ЗАКРЫТЬ) . 510

    3. Оператор DELETE (УДАЛИТЬ) 512

    4. Оператор OPEN (ОТКРЫТЬ) 513

    5. Оператор READ (ЧИТАТЬ) . . 517

    6. Оператор REWRITE (ОБНОВИТЬ) 523

    7. Оператор START (ПОДВЕСТИ) 526

    8. Оператор USE (ИСПОЛЬЗОВАТЬ) 529

    9. 9. Оператор WRITE (ПИСАТЬ) 532

Часть 10 МОДУЛЬ МЕЖПРОГРАММНЫХ СВЯЗЕЙ .536

  1. Введение в модуль межпрограммных связей 536

    1. Назначение 536

    2. Характеристика уровней 536

    3. Понятия языка 536

  2. Вложенные исходные программы 543

    1. Общее описание 543

    2. Организации 543

    3. Структура 544

    4. Начальное состояние программы 544

    5. Заголовок конца программы . . . . . . . 545

  3. Раздел идентификации в модуле межпрограммных связей . . 546

    1. Параграф PROGRAM-ID (ПРОГРАММА) и вложенные исходные программы 546-

  4. Раздел данных в модуле межпрограммных связей 547

    1. Секция связи 547

    2. Статья описания файла в модуле межпрограммных связей . . 548

    3. Статья описания данного в модуле межпрограммных связей . 553

    4. Статья описания отчета в модуле межпрограммных связей . . 556

    5. Фраза EXTERNAL (ВНЕШНЕЕ) 557

    6. Фраза GLOBAL (ГЛОБАЛЬНОЕ) 558

  5. Раздел процедур в модуле межпрограммных связей .... 559

    1. Заголовок раздела процедур 559

    2. Оператор CALL (ВЫЗВАТЬ) 560

    3. Оператор CANCEL (ОСВОБОДИТЬ) 566

    4. Оператор EXIT PROGRAM (ВЫЙТИ ИЗ ПРОГРАММЫ) . . 567

    5. Оператор USE (ИСПОЛЬЗОВАТЬ) 568

    6. Оператор USE BEFORE REPORTING (ИСПОЛЬЗОВАТЬ Ж ВЫДАЧИ) .569

Часть И. МОДУЛЬ СОРТИРОВКИ-СЛИЯНИЯ 570

  1. Введение в модуль сортировки-слияния 570

    1. Назначение ......' 570

    2. Понятия языка 570

  2. Раздел оборудования в модуле сортировки-слияния 571

    1. Секция ввода-вывода 571

    2. Параграф FILE-CONTROL (УПРАВЛЕНИЕ-ФАЙЛАМИ) . . 571

    3. Статья управления файлом 571

    4. Параграф I-O-CONTROL (УПРАВЛЕНИЕ-ВВОДОМ-ВЫВОДОМ) 572

    5. Фразы SAME RECORD AREA (ОБЩАЯ ОБЛАСТЬ ЗАПИСИ), SAME SORT/SORT-MERGE AREA (ОБЩАЯ ОБЛАСТЬ СОРТИ-

РОВКИ/СОРТИРОВКИ-СЛИЯНИЯ) 573

  1. Раздел данных в модуле сортировки-слияния ...... 575

    1. Секция файлов 575

    2. Статья описания сортируемого-сливаемого файла .... 576

  2. Раздел процедур в модуле сортировки-слияния 577

    1. Оператор MERGE (СЛИТЬ) 577

    2. Оператор RELEASE (ПЕРЕДАТЬ) . . . . ■ . . . 583

    3. Оператор RETURN (ВЕРНУТЬ) 584

    4. Оператор SORT (СОРТИРОВАТЬ) 586

Часть 12. МОДУЛЬ ОБРАБОТКИ ИСХОДНЫХ ТЕКСТОВ . . 593

  1. Введение в модуль обработки исходных текстов 593

  2. Оператор COPY (КОПИРОВАТЬ) 593

  3. Оператор REPLACE (ЗАМЕНИТЬ) 599

Часть 13. МОДУЛЬ ГЕНЕРАТОРА ОТЧЕТОВ 602

  1. Введение в модуль генератора отчетов 602

    1. Назначение 602

    2. Понятия языка 602

  2. Раздел оборудования в модуле генератора отчетов . . . . 603

    1. Секция ввода-вывода . 603

    2. Параграф FILE-CONTROL (УПРАВЛЕНИЕ-ФАЙЛАМИ) . . 603

    3. Статья управления файлом . . . . . . . 603

    4. Параграф I-O-CONTROL (УПРАВЛЕНИЕ-ВВОДОМ-ВЫВОДОМ) 605

  3. Раздел данных в модуле генератора отчетов 606

    1. Секция файлов 606

    2. Статья описания файла 607

    3. Фраза REPORT (ОТЧЕТ) 608

    4. Секция отчетов 609

    5. Статья описания отчета 610

    6. Фраза CODE (С КОДОМ) 612

    7. Фраза CONTROL (УПРАВЛЕНИЕ) 613

    8. Фраза PAGE (РАЗМЕР СТРАНИЦЫ) 614

    9. Статья описания группы отчета 617

    10. Таблицы правил представления 623

    11. Фраза COLUMN NUMBER (НОМЕР СТОЛБЦА) . . .640

    12. Фраза «имя-данного» 640

    13. Фраза GROUP INDICATE (ОПРЕДЕЛЯЕТ ГРУППУ) . 641

    14. Номер-уровня 642

    15. Фраза LINE NUMBER (НОМЕР СТРОКИ) . . . .642Фраза NEXT GROUP (СЛЕДУЮЩАЯ ГРУППА) . . .644

    16. Фраза SIGN (ЗНАК) 645

    17. Фраза SOURCE (ИСТОЧНИК) 646

    18. Фраза SUM (СУММА) 647

    19. Фраза TYPE (ТИП) 650

    20. Фраза USAGE (об использовании) 657

    21. Фраза VALUE (ЗНАЧЕНИЕ) 657

  4. Раздел процедур в модуле генератора отчетов 658

    1. Общее описание 658

    2. Оператор CLOSE (ЗАКРЫТЬ) 659

    3. Оператор GENERATE (ГЕНЕРИРОВАТЬ) 662

    4. Оператор INITIATE (НАЧАТЬ) . . . . . . .665

    5. Оператор OPEN (ОТКРЫТЬ) 665

    6. Оператор SUPPRESS (ПОДАВИТЬ) 669

    7. Оператор TERMINATE (ЗАКОНЧИТЬ) 669

    8. Оператор USE AFTER STANDARD EXCEPTION PROCEDURE

(ИСПОЛЬЗОВАТЬ ПОСЛЕ СТАНДАРТНОЙ ПРОЦЕДУРЫ

ОШИБКИ) 671

  1. Оператор USE BEFORE REPORTING (ИСПОЛЬЗОВАТЬ ДО ВЫДАЧИ) 673

Часть 14. МОДУЛЬ КОММУНИКАЦИЙ 674

  1. Введение в модуль коммуникаций 674

    1. Назначение 674

    2. Характеристика уровней 674

  2. Раздел данных в модуле коммуникаций 675

    1. Секция коммуникаций 675

    2. Статья описания коммуникации 676

  3. Раздел процедур в модуле коммуникации 697

    1. Оператор ACCEPT MESSAGE COUNT (ПРИНЯТЬ ЧИСЛО СО­ОБЩЕНИИ) 697

    2. Оператор DISABLE (ЗАПРЕТИТЬ) 697

    3. Оператор ENABLE (РАЗРЕШИТЬ) . 699

    4. Оператор PURGE (ОЧИСТИТЬ) .701

    5. Оператор RECEIVE (ПОЛУЧИТЬ) 702

    6. Оператор SEND (ПОСЛАТЬ) . 705

Часть 15. МОДУЛЬ ОТЛАДКИ 711

  1. Введение в модуль отладки 711

    1. Назначение 711

    2. Характеристика уровней . . .711

    3. Понятия языка 711

  2. Раздел оборудования в модуле отладки . . . . .712

    1. Фраза WITH DEBUGGING MODE (В РЕЖИМЕ ОТЛАДКИ) . 712

  3. Раздел процедур в модуле отладки . . . 713

    1. Общее описание 713

    2. Оператор USE FOR DEBUGGING (ИСПОЛЬЗОВАТЬ ДЛЯ ОТ­ЛАДКИ) 713

Часть 16. МОДУЛЬ СЕГМЕНТАЦИИ 721

  1. Введение в модуль сегментации . . 721

  1. .Г. Назначение . . . 721

    1. Характеристика уровней 721

    2. Область действия 721.

    3. Организация 721

    4. Классификация сегментации 723

    5. Управление сегментацией 723

  1. Раздел оборудования в модуле сегментации . . . . . 723

    1. Секция конфигурации 723

    2. Параграф OBJECT-COMPUTER (РАБОЧАЯ-МАШИНА) . . 723

    3. Фраза SEGMENT-LIMIT (ГРАНИЦА СЕГМЕНТОВ) . . . 724

  2. Раздел процедур в модуле сегментации 725

    1. Общее описание . . 725

    2. Номера сегментов 726

    3. Ограничения на программный поток 726