Начальный курс программирования на языке Форт


УПРАЖНЕНИЯ


11.1. Введите определяющее слово с именем ЗАГРУЗКА, которое будет определять слова, загружающие при своем исполнении некоторый блок. Например, выражение690 ЗАГРУЗКА КОРРЕСПОНДЕНЦИЯ

должно определить слово КОРРЕСПОНДЕНЦИЯ. В результате выполнения последнего должен быть загружен блок 600.

11.2. Определите слово с именем СИСТЕМА., создающее слова для вывода чисел в конкретных системах счисления. Например, выражение 16 СИСТЕМА. Н.

должно определить слово Н., которое выводило бы значение из вершины стека в шестнадцатиричной системе, но саму систему счисления (BASE) не меняло бы: DECIMAL 17 DUP Н. .<return> 11 17 ok

11.3. Определите слово с именем МНОГО, чтобы оно получало адрес некоторого слова, например CR или STAR, и создавало множественное число этого слова, в нашем случае CRS или STARS. Вы будете задавать адрес слова в единственном числе посредством апострофа. Например, фраза ' CR МНОГО CRS

определит слово CRS так же, как и выражение : CRS ?DUP IF 0 DO CR LOOP THEN ;

11.4. На французский язык слова DO и LOOP переводятся как TOURNE и RETOURNE соответственно. Определите TOURNE и RETOURNE как французские имена слов управления циклом, используя слова DO и LOOP, после чего проверьте их, написав цикл на французском языке.

11.5. Напишите слово с именем РАЗ, которое вызовет исполнение оставшихся во входном потоке символов до возврата каретки. Число исполнений задается числом, находящимся в вершине стека, например: 7 РАЗ 42 EMIT SPACE<return> * * * * * * * ok

11.6. В настоящей главе демонстрировался пример использования определяющего слова с именем ФОРМА. Чтобы задать конкретное изображение, нужно было ввести восемь чисел, каждое из которых представляло собой битовый шаблон отдельной строки. Придумайте более изящный способ задания описания рисунка, содержащего 8х8 элементов изображения. Можно, например, вместо шестнадцатиричных цифр задавать некоторую схему.

Теперь реализуйте то, что вы придумали (с привлечением существующего определения слова .РЯД). Проверьте свой способ формирования рисунка.




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