Начальный курс программирования на языке Форт

         

ПОЛЬЗОВАТЕЛЬСКИЕ ПЕРЕМЕННЫЕ


Пользовательская переменная в отличие от обычной (определяемой с помощью слова VARIABLE), значение которой хранится в поле параметров элемента словаря, состоит из двух частей. Сами данные хранятся в массиве, называемом пользовательской таблицей. Элемент словаря для каждой пользовательской переменной расположен в другом месте; он содержит смещение в пользовательской таблице. Когда вы выполняете имя пользовательской пере-

1 Для начинающих. Термин «мультизадачная» описывает систему, в которой многочисленные задачи выполняются одновременно на одном и том же компьютере, не оказывая влияния друг на друга.

менной, например Н, смещение добавляется к начальному адресу пользовательской таблицы, что дает вам адрес Н в этом массиве и позволяет применять @ или !.

Основное достоинство пользовательских переменных состоит в том, что любое число задач может использовать одно и то же определение некоторой переменной, и каждая задача может получать свое собственное значение этой переменной. Всякая задача, которая выполняет выражение BASE @

получает значение BASE из своей пользовательской таблицы, благодаря чему экономится большой объем памяти, и тем не менее она может выполняться независимо от остальных задач.

Порядок размещения пользовательских переменных в таблице и значения и смещений изменяются от системы к системе. Итак, существуют переменные трех видов:

  • системные, применяемые всей Форт-системой;
  • пользовательские, являющиеся уникальными для каждой задачи, несмотря на то что их определения могут быть использованы всеми задачами системы;

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



    Содержание раздела