является определяющим для слов нижнего
Слово
CODE (код) является определяющим для слов нижнего уровня и обычно определяется так:
: CODE ( ---> ) CREATE HERE LATEST NAME> ! ASSEMBLER ;
Оно используется в сочетании со словом
END-CODE (конец кода):
CODE <имя> <машинный-код>
END-CODE, где «имя» является именем определяемого слова, а «машинный-код» — записью его реализации в машинном коде в соответствии с принятыми соглашениями.
Поле кода такой словарной статьи содержит адрес ее поля параметров, в котором располагается данный машинный код.
Наконец, слово
;CODE, имеющее признак немедленного исполнения, позволяет задавать исполняющую часть определяющих слов непосредственно в машинном коде:
: ;CODE ( ---> ) COMPILE (;CODE) [COMPILE] [ ASSEMBLER ; IMMEDIATE
Оно используется внутри определения через двоеточие для определяющего слова аналогично слову
DOES>:
: <имя> <создающая-часть> ;CODE <машинный-код> END-CODE
и отделяет высокоуровневую создающую часть от исполняющей части, заданной в машинном коде. Во время исполнения скомпилированного словом
;CODE слова
(;CODE) адрес машинной программы, составляющей исполняющую часть, будет заслан в поле кода определяемого слова, которое таким образом получит интерпретатор, реализованный в машинном коде. На практике именно таким способом задают стандартные определяющие слова —
:,
CONSTANT и
VARIABLE.
Конкретный вид машинной программы зависит от архитектуры данной ЭВМ. Общим правилом является то, что этот текст представляет собой последовательность слов, которые исполняются текстовым интерпретатором, в результате чего на вершине словаря формируется соответствующий двоичный машинный код. Машинные команды записываются в естественной для Форта обратной польской форме: сначала операнды, а затем слово, обозначающее мнемонику команды.
Операнды — это слова, вычисляющие на стеке размещения операндов: номера регистров, адреса в памяти и их модификации, значения непосредственных операндов и т.д.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий