Поле данных: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 3: Строка 3:
При [[EXECUTE|исполнении]] слова его ''поле данных'' интерпретируется обработчиком — ''поле данных'' передаётся обработчику, как в процедурных языках процедурам передаётся список параметров. Можно сказать, что ''поле параметров'' «настраивает» обработчик (который часто используется повторно, для исполнения различных слов) под конкретное слово.
При [[EXECUTE|исполнении]] слова его ''поле данных'' интерпретируется обработчиком — ''поле данных'' передаётся обработчику, как в процедурных языках процедурам передаётся список параметров. Можно сказать, что ''поле параметров'' «настраивает» обработчик (который часто используется повторно, для исполнения различных слов) под конкретное слово.


Конечно, помимо ''поля данных'', на результат работы слова (конкретного запуска обработчика) влияют аргументы, передаваемые через [[Стек данных|стек]], и многое другое.
Конечно, помимо ''поля данных'', на результат исполнения слова (конкретного запуска обработчика) влияют аргументы, передаваемые через [[Стек данных|стек]], и многое другое.


''Поле данных'' настолько тесно связано с [[Поле кода|полем кода]], что их часто объединяют вместе, говоря о [[Тело словарной статьи|теле словарной статьи]] в противоположность его [[Заголовок словарной статьи|заголовку]] ([[поле имени]] и [[поле связи]]).
''Поле данных'' настолько тесно связано с [[Поле кода|полем кода]], что их часто объединяют вместе, говоря о [[Тело словарной статьи|теле словарной статьи]] в противоположность его [[Заголовок словарной статьи|заголовку]] ([[поле имени]] и [[поле связи]]).

Версия от 08:46, 21 октября 2015

Поле данных (англ. Data Field), оно же поле параметров (англ. Parameter Field) — наиболее разнообразная часть словарной статьи, расположенная сразу после поля кода. Содержание поля данных уникально для каждого слова и сильно зависит от его обработчика, адрес которого находится в поле кода. Адрес поля данных называется PFA (от англ. Parameter Field Address).

При исполнении слова его поле данных интерпретируется обработчиком — поле данных передаётся обработчику, как в процедурных языках процедурам передаётся список параметров. Можно сказать, что поле параметров «настраивает» обработчик (который часто используется повторно, для исполнения различных слов) под конкретное слово.

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

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

Поле данных примитива

Обработчик примитива написан на ЯМК и находится в его поле данных. В примитиве поле кода указывает на поле параметров, то есть содержит PFA.

Поле данных высокоуровневого слова

Слова высокого уровня определяются с помощью : и компилируются в шитый код. Этот шитый код и располагается в поле данных.

Шитый код обрабатывается адресным интерпретатором, поэтому поле кода высокоуровневого слова содержит адрес точки CALL адресного интерпретатора.

Поле данных целочисленной константы

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

Поле данных целочисленной переменной

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

Поле данных десятичной переменной

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

  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.