Язык программирования Форт



         

Приложение А. Глоссарий (список слов Форта) - часть 31


Все введенные и записанные в память символы отображаются на экране по мере их ввода. Код "возврат каретки" не будет записан в память. Ни одного символа не asder занесено в память, если n равно 0, Форт-79 требует также, чтобы в конце введенного текста по завершении EXPECT было записано два нуля. Форт-83 требует, чтобы возврат каретки был отображен как пробел. См. также SPAN. FENCE "fense" "ограда" MVP FIG VAR ( -- адр) Переменная, которая определяет адрес в словаре, ниже которого нельзя производить стирание словаря с помощью FORGET. FILL "fill" "запомнить" 83REQ 79REQ ( адр n1 n2 --) Заполняет n1 байтов памяти, начиная с адреса адр, кодом, содержащимся в младшем байте числа n2. Если n1 меньше или равно 0, ничего не делается. В Форт-83 n1 предполагается числом без знака и заполнение блокируется, если оно равно 0. FIND "find" "найти" 83REQ 79REQ FIND в Форт-83 и Форт-79 выполняют практически совершенно разные функции. Схема трансформации стека в форт-83 выглядит как (адр1 -- адр2 n) где "адр1" является адресом счетной строки, содержащей имя слова, которое должно быть найдено в словаре. Если не найдено, "адр2" равен "адр1", а n=0. Если найдено, "адр2" равен адресу поля программы , а "n" равно 1, если - слово немедленного исполнения, в противном случае значение "n" приравнивается минус единице. В Форт-79 схема преобразования стека имеет вид ( -- адр) или ( -- 0) где FIND используется в форме FIND

и заносит в стек либо адрес поля программы , либо нуль, если

в словаре не найдено. FL/ "f-l-divide" ТХТ ( n1 n2 -- n3) Используя операторы Форт-79, делит число n1 на n2 и засылает в стек округленное по нижней границе значение частного n3. Моделирует (медленно) оператор / Форт-83, используя Форт-79. : FL/ /MOD SWAP IF DUP 0 < IF 1- THEN THEN ; FL/MOD "M-divide-mod" TXT ( n1 n2 -- n3 n4) Используя операторы Форт-79, осуществляет деление с нижней границей n1 на n2 и засылает в стек остаток n3 и округленное значение частного n4.


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