Редактирование: Поле данных
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 1: | Строка 1: | ||
'''Поле данных''' (англ. Data Field), оно же '''поле параметров''' (англ. Parameter Field) — | '''Поле данных''' (англ. Data Field), оно же '''поле параметров''' (англ. Parameter Field) — наиболее разнообразная часть [[Словарная статья|словарной статьи]], расположенная сразу после [[Поле кода|поля кода]]. Содержание ''поля данных'' уникально для каждого слова и сильно зависит от его обработчика, адрес которого находится в [[поле кода]]. | ||
При [[EXECUTE|исполнении | При [[EXECUTE|исполнении]] слова его ''поле данных'' интерпретируется обработчиком — ''поле данных'' передаётся обработчику, как в процедурных языках процедурам передаётся список параметров. Можно сказать, что ''поле параметров'' «настраивает» обработчик (который часто используется для исполнения различных слов) под конкретное слово. | ||
Конечно, помимо ''поля данных'', на результат | Конечно, помимо ''поля данных'', на результат конкретного запуска обработчика влияют аргументы, передаваемые через [[Стек данных|стек]], и многое другое. | ||
''Поле данных'' тесно связано с [[Поле кода|полем кода]], | ''Поле данных'' настолько тесно связано с [[Поле кода|полем кода]], что их часто объединяют вместе, говоря о [[Тело словарной статьи|теле словарной статьи]] в противоположность его [[Заголовок словарной статьи|заголовку]] (поле имени и поле связи). | ||
== Поле данных примитива == | == Поле данных примитива == | ||
Обработчик [[примитив]]а написан на [[ЯМК]] и | Обработчик [[примитив]]а написан на [[ЯМК]] и находится в его ''поле данных''. В [[примитив]]е [[поле кода]] указывает на ''поле параметров'', то есть содержит [[PFA]]. | ||
== Поле данных | == Поле данных высокоуровневого слова == | ||
Слова высокого уровня определяются с помощью [[∶ (Каллисто)|:]] и компилируются в шитый код. Этот шитый код и располагается в ''поле данных''. | |||
''Шитый код'' обрабатывается адресным интерпретатором, поэтому поле кода высокоуровневого слова содержит адрес точки CALL адресного интерпретатора. | |||
== Поле данных | == Поле данных константы == | ||
Константы создаются с помощью слова [[CONSTANT]]. Их поле данных занимает одну [[Ячейка (Каллисто)|ячейку]] и содержит значение константы. | |||
== Поле данных | == Поле данных переменной == | ||
Переменные создаются с помощью слова [[VARIABLE]]. Их поле данных занимает одну [[Ячейка (Каллисто)|ячейку]] и содержит значение переменной. | |||
{{нет иллюстраций}} | {{нет иллюстраций}} | ||
{{заготовка}} | {{заготовка}} | ||
[[Категория:Каллисто]] | [[Категория:Каллисто]] |