ИТФ «Технофорт» - Учебное пособие по языку ФОРТ
Название: | Учебное пособие по языку ФОРТ | |
Автор: | ИТФ «Технофорт» | |
Жанр: | Литература ХX века (эпоха Социальных революций), Современные российские издания, Программирование: прочее, Forth | |
Изадано в серии: | неизвестно | |
Издательство: | ИТФ «Технофорт» | |
Год издания: | 1993 | |
ISBN: | неизвестно | |
Отзывы: | Комментировать | |
Рейтинг: | ||
Поделись книгой с друзьями! Помощь сайту: донат на оплату сервера |
Краткое содержание книги "Учебное пособие по языку ФОРТ"
Язык программирования Форт (от английского FORTH) был изобретен Чарльзом Муром в 70-x годах для создания программного обеспечения управляющих устройств. В настоящее время Форт широко используется при решении следующих задач:
• разработка и тестирование встроенного оборудования;
• управление станками, роботами, медицинскими приборами;
• разработка трансляторов и операционных систем;
• системы управления базами данных;
• задачи машинной графики;
• экспертные системы, в том числе экспертные системы реального времени.
ИТФ «Технофорт», Санкт-Петербург 1993 Б. Посадская, д.9А Тел./факс: 233-34-10 тел. 238-82-88 эл. почта: Forth@forthi.spb.su
Читаем онлайн "Учебное пособие по языку ФОРТ". [Страница - 12]
Режим "NEXT" передает управление по адресу, записанному в поле параметров, на которое указывает "IP", одновременно передвигая "IP" на следующий элемент поля (т. е. прибавляя к нему 2).
Такие вложенные вызовы продолжаются до тех пор, пока управление не передано на машинную подпрограмму, которая и будет исполнена. B конце каждой машинной программы записан вызов режима "NEXT" адресного интерпретатора.
B конце поля параметров каждой словарной статьи записан вызов третьего режима интерпретатора — режима "RETURN" (его компилирует туда слово ";"). Режим "RETURN" обеспечивает выход на предыдущий уровень: загружает "IP" значением, снимаемым co стека возвратов, и вызывает режим "NEXT".
После возврата на самый верхний уровень интерпретации специальное системное слово восстанавливает диалог.
В системе имеется слово "EXIT", которое сразу вызывает режим "RETURN". То есть "EXIT" можно использовать внутри определения некоторого слова, чтобы задать немедленное прекращение его исполнения (это удобно в условных операторах). Однако внутри перечислительного цикла использовать "EXIT" нельзя!
20. Переменные типа "QUAN" и "VECT"
Переменная типа "QUAN" отличается от стандартной переменной типа "VARIABLE" тем, что объединяет свойства константы и переменной. При исполнении переменная типа "VARIABLE" оставляет на стеке адрес ячейки, в которой хранится ее значение. Но этот адрес обычно используется либо для получения самого значения с помощью слова "@", либо для засылки в переменную нового значения с помощью слова "!". Так вот слово "QUAN" создает переменную, исполнение имени которой в зависимости от контекста имеет один из трех результатов: получение текущего значения, засылка нового значения и получение адреса значения.Переменная типа "QUAN" определяется следующим образом:
QUAN имя
Слово "IS", употребленное перед именем переменной, засылает в переменную новое значение, взятое с вершины стека.
Слово "AT", употребленное перед именем переменной, записывает в стек адрес ее значения.
Слова "IS" и "AT" назовем префиксами к имени переменной.
При использовании имени переменной без префиксов на стек будет помещено ее текущее значение (свойство константы). Заметим, что использование "чистого" имени эквивалентно: AT имя @ a засылка при помощи "IS" эквивалентна выражению: AT имя !
Слово для реализации переменной типа "QUAN" имеет три поля кода:
1. поле кода для получения значения (2/3 байта)
2. поле кода для засылки значения (2/3 байта)
3. поле кода для получения адреса значения (2/3 байта)
4. значение переменной (2 байта)
Длина поля кода зависит от типа шитого кода, но в любом случае требуются два дополнительных поля кода. Эти затраты памяти на описание переменной компенсируются при ее использовании, так как каждое обращение к переменной занимает два байта и к тому же работает быстрее, чем обращение к переменной типа "VARIABLE". Это объясняется тем, что на месте использования переменной типа "QUAN" компилируется адрес одного из трех полей ее кода в зависимости от указанного префиксом (или его отсутствием) действия:
-------------------------------------------------------------
действие для QUAN для VARIABLE
-------------------------------------------------------------
значение имя (2 байта) имя @ (4 байта)
присваивание IS имя (2 байта) имя ! (4 байта)
адрес AT имя (2 байта) имя (2 байта)
-------------------------------------------------------------
По аналогии co словом "QUAN" используется слово "VECT", создающее слово с векторизованным исполнением. Его можно рассматривать как переменную типа "QUAN", значением которой являются другие слова. Например, после выполнения текста
VECT имя
' DUP IS имя
последующее исполнение слова "имя" равносильно исполнению "DUP". Таким образом, созданные при помощи "VECT" слова можно рассматривать как слова co сменной семантикой. Отличие реализаций "VECT" и "QUAN" состоит лишь в следующем: исполнение имени переменной типа "VECT" вызывает выполнение слова, адрес поля кода которого содержит переменная. Префиксы используются аналогичным образом.
21. Внешняя память
Памяти микрокомпьютера обычно недостаточно для запоминания всех необходимых данных и программ. Для этого используется память на внешних носителях. B основном, это память на магнитном диске. --">Книги схожие с «Учебное пособие по языку ФОРТ» по жанру, серии, автору или названию:
Михаил Петрович Вукалович, Иван Иванович Новиков - Термодинамика. Учебное пособие для вузов Жанр: Термодинамика, теплопередача, теплотехника Год издания: 1972 |
Владимир Игнатьевич Коваленко - Крылья Севастополя Жанр: Военные мемуары Год издания: 1988 |
Игнасио Идальго де Сиснерос - Меняю курс Жанр: Биографии и Мемуары Год издания: 1967 |