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


Глава 14. Память Форта. Словари и контекстные словари - часть 16


Предлагаются следующие слова:

>BODY "to-body" (CFA - PFA) (стандарт Форт-83) >NAME "to-name" (CFA - NFA) (к полю имени) >LINK "to-link" (CFA - LPA) (к полю связи) B0DY> "from-body" (PFA - CFA) (от PFA) NAME? "from-name" (NFA - CFA) (от NFA) LINK> "from-link" (LFA - CFA) (от LFA) N>LINK "name-to-link" (NFA - LFA) (от имени к LPA) L>NAME "link-to-name" (LFA - NFA) (от LFA к имени)

Если эти или аналогичные слова отсутствуют в вашем Форте, вы можете сами описать их. Например, используя структуру словаря, которую мы описали, с именами длиной в четыре байта, будет довольно просто составить их описание: : >BODY ( cfa - pfa) 2 + ; или : L>NAME ( lfa - nfa) 4 - ; Мы попросим вас попытаться описать такие слова в качестве упражнения.

Упражнения

1. Предположим, что версия форта имеет поле имени длиной 4 байта, поле связи и поле программы по 2 байта. Опишите остальные предлагаемые Форт-83 слова, приведенные выше ( >NAME, >LINK и т.д.). 2. Запишите положение слово HERE, введите описание BASE?, которое мы использовали, пропечатайте эту часть словаря с помощью DUMP, для того чтобы посмотреть, можете ли вы идентифицировать его имя. поля связи, программы и параметров, а также их содержимое. Используйте ' (Форт-79) или ' >BODY (Форт-83) с BASE? и выполните команду DUMP для полученного адреса. 3. Опишите по крайней мере пять слов в форме : 1DUMMY ;, : 2DUMMY ; и т.д. и пропечатайте посредством DUMP каждый из этих элементов словаря, чтобы посмотреть, куда в предшествующем слове указывает содержимое поля связи. Указывает ли каждое поле связи на предшествующее слово или какое-либо другое? 4. Найдите адрес исполняемой программы для слов типа двоеточие. Зная этот адрес, опишите слово COLONWORDS, которое воспринимает два адреса со стека и находит CFA всех слов типа двоеточие, которые лежат между указанными адресами.

Контекстные словари

Концепция контекстных словарей расширяет буквально смысл метафоры, примененной в отношении определений слова и словаря.


Начало  Назад  Вперед



Книжный магазин