Л. Броуди

НАЧАЛЬНЫЙ КУРС ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ
ФОРТ

Перевод с английского В.А. Кондратенко Под редакцией Б.А. Кацева, В.А. Кириллина Предисловие И.В. Романовского
МОСКВА
"ФИНАНСЫ И СТАТИСТИКА" 1990

ОГЛАВЛЕНИЕ

К советскому читателю
Предисловие к русскому изданию

От автора
Коротко о книге
Введение
Что такое машинный язык? (введение для начинающих)
Области применения Форта (введение для профессионалов)

Глава 1. ОСНОВЫ ФОРТА
Живой язык
Диалог
Словарь
Как правильно «объясняться» на Форте?
Период исполнения и период компиляции
Стек — рабочая область оперативной памяти для выполнения арифметических действий
Постфиксная запись
Работа со стеком
Стековая нотация
Основные термины
Упражнения

Глава 2. ВЫПОЛНЕНИЕ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ
Режим калькулятора
Практические задачи на применение постфиксной записи (упражнение 2-А)
Режим определений
Решение задач (упражнение 2-Б)
Операции деления
Манипуляции со стеком
Печать без изменения содержимого стека
Задачи на выполнение операций со стеком и арифметических операций (упражнение 2-В)
Двойные операции
Основные термины
Упражнения

Глава 3. КАК РАБОТАТЬ НА ФОРТЕ
Часть 1. Общие сведения
Еще раз о словаре
Использование дисковой памяти
Правила записи Форт-программ
Особенности программирования на Форте
Загрузка программ
Инструментальные средства работы с блоками
Часть 2. Текстовый редактор Форта
Программа-редактор
Команды символьного редактирования
Буфер поиска и буфер вставок
Команды редактирования строк
Комбинированные команды редактирования
Основные термины
Упражнения
Литература

Глава 4. КОМПЬЮТЕР "ПРИНИМАЕТ РЕШЕНИЯ"
Условный оператор
Более подробно об операторе IF
Операции сравнения
Альтернативная ветвь условного оператора
Вложенные конструкции IF...THEN
«Секрет» оператора IF
Немного логики
Два слова с встроенными операторами IF
Основные термины
Упражнения

Глава 5. ОПЕРАЦИИ НАД ЦЕЛЫМИ ЧИСЛАМИ
Сокращенные операции
Смешанные математические операции
Стек возвратов
Арифметические операции над числами с плавающей точкой
Почему программисты предпочитают масштабирование
Операция масштабирования */
Округление
Возможности масштабирования
Аппроксимация вещественных чисел
Операции над дробными числами
Заключение
Основные термины
Упражнения
Литература

Глава 6. ЦИКЛИЧЕСКИЕ СТРУКТУРЫ
Циклы со счетчиком
Ограничения на выполнение цикла
Примеры использования оператора цикла DO
Вложенные циклы
Рекомендации по применению оператора DO в стиле Форта
Циклы с условием
Выход из цикла (LEAVE) и ветвление (BRANCH)
Основные термины
Упражнения

Глава 7. ЧИСЛО ТИПОВ ЧИСЕЛ
Часть 1. Для начинающих
Чем отличаются числа со знаком и без знака
Арифметический сдвиг
Числа двойной длины
Преимущества шестнадцатиричной системы счисления (и другие системы)
Код для представления символьной информации (ASCII).
Часть 2. Для всех
Двоичная логика
Числа со знаком и без знака
Системы счисления
Числа двойной длины
Формирование чисел двойной длины без знака
Форматирование чисел одинарной длины со знаком
Операции над числами двойной длины
Операции над числами различной длины
Использование чисел в определениях
Основные термины
Упражнения

Глава 8. ПЕРЕМЕННЫЕ, КОНСТАНТЫ И МАССИВЫ
Переменные (общие сведения)
Более подробно о переменных
Переменная в качестве счетчика
Константы
Переменные и константы двойной длины
Массивы
Использование массива счетчиков
Вычленение определений
Организация цикла по массиву
Массивы байтов
Инициализация массива
Основные термины
Упражнения

Глава 9. ФУНКЦИОНИРОВАНИЕ ФОРТ-СИСТЕМЫ
Поиск по словарю
Векторные вычисления
Апостроф в определении
Структура словарной статьи
Адресация полей
Структура определения через двоеточие
Вложенные уровни вычислений
Еще один вариант использования стека возвратов
Выход на верхний уровень
Произвольное изменение последовательности выполнения слов
Рекурсия
География Форта
Мультизадачные Форт-системы
Пользовательские переменные
Контекстные словари (списки слов)
Основные термины
Упражнения

Глава 10. ВВОД-ВЫВОД
Блочные буферы
Операторы вывода
Вывод текста с диска
Операции над строками в оперативной памяти
Ввод с клавиатуры
Ввод из входного потока
Применение слова WORD
Указатели входного потока, используемые словом WORD
Преобразование вводимых чисел
Построение программы ввода чисел с помощью слова KEY
Сравнение строк
Строковые литералы
Основные термины
Упражнения
Литература

Глава 11. РАСШИРЕНИЕ КОМПИЛЯТОРА: ОПРЕДЕЛЯЮЩИЕ И КОМПИЛИРУЮЩИЕ СЛОВА
Что такое определяющее слово?
Определяющие слова вы можете специфицировать сами
Что такое компилирующее слово?
Несколько дополнительных слов управления компиляцией
Флаг состояния
Введение в блок схемы Форта
Заключение
Основные термины
Упражнения
Литература

Глава 12. ТРИ С ПОЛОВИНОЙ ПРИМЕРА
Откачка файла
Программисту о структуре прикладной программы
Без взвешивания
Форт ассемблер
Усовершенствованный генератор бессмысленных сообщений
Упражнения
Литература

Приложение А. ОТВЕТЫ К УПРАЖНЕНИЯМ
Приложение Б. АЛФАВИТ СЛОВ ФОРТА
Приложение В. СЛОВА ФОРТА, СГРУППИРОВАННЫЕ ПО ТЕМАМ