Язык Форт и его реализации

         

Основные понятия - часть 2


Некоторые часто требующиеся расширения включены в стандарт в качестве «стандартных расширений» обязательного набора слов.

Вычислительная модель, лежащая в основе языка Форт, состоит из адресного пространства оперативной памяти объемом до 64 Кбайт, терминала и поля внешней памяти на магнитных дисках объемом до 32768 блоков по 1 Кбайт каждый. В пределах имеющегося адресного пространства располагаются стек данных и стек возвратов, словарь, буфер для ввода с терминала и буфера для обмена с внешней памятью.

Стек данных обычно располагается в старших адресах оперативной памяти и используется для передачи параметров и результатов между исполняемыми словами. Его элементами являются двухбайтные значения, которые в зависимости от ситуации могут рассматриваться различным образом: как целые числа со знаком в диапазоне от -32768 до +32767, как адреса оперативной памяти в диапазоне от 0 до 65535 (отсюда ограничение 64 К на размер адресного пространства), как коды литер (диапазон зависит от принятой кодировки) для обмена с терминалом, как номера блоков внешней памяти в диапазоне от 0 до 32767 или просто как 16-разрядные двоичные значения. В процессе исполнения слов значения помещаются на стек и снимаются с него. Переполнение и исчерпание стека, как правило, не проверяется; его максимальный объем устанавливается реализацией. Стандарт предусматривает, что стек растет в сторону убывания адресов; это согласуется с аппаратной реализацией стека в большинстве ЭВМ, которые ее имеют.

Стек возвратов по своей структуре аналогичен стеку данных, но используется особым образом некоторыми стандартными словами (подробнее об этом см. в ).

Начальную часть адресного пространства обычно занимает словарь (иначе «кодофайл») — хранилище слов и данных. По мере расширения исходного набора слов словарь растет в сторону увеличения адресов. Специальные слова из обязательного набора позволяют управлять вершиной словаря — поднимать и опускать ее.

Наряду со стеком данных и стеком возвратов в старших адресах оперативной памяти обычно размещается буфер на 64–100 байт для построчного ввода форт-текста с терминала и буферный пул для обмена с внешней дисковой памятью размером от 1 до 3 и более Кбайт.Доступ к этим буферам и фактический обмен осуществляют специальные слова из обязательного набора.




Содержание  Назад  Вперед