Теперь мы знаем, что Форт предоставляет вам большую власть над ЭВМ, чем большинство других языков. Целью данной главы и двух последующих является предоставление вам возможности еще большего контроля. Форт обеспечивает значительную гибкость там, где это возможно, за счет создания новых слов-описателей или, например, написания редактора. Но для использования всех преимуществ Форта, его мощи и максимальной гибкости вы должны иметь хорошее понимание внутреннего устройства языка. Вы должны понять, например, как Форт использует память ЭВМ, как устроен словарь и как он работает. Мы раскроем эти темы в данной главе. Вы должны также понять, как Форт интерпретирует входной поток информации, как он интерпретирует слова и как происходит исполнение слов. Это темы гл.15. Наконец, для достижения полного контроля над ЭВМ некоторые вещи должны выполняться на ассемблере. Мы обсуждаем Форт-ассемблер в гл.16.
Теперь вы уже сформировавшийся программист и можете писать сложные программы на Форте, но внутреннее устройство языка является для вас, вероятно, таинственным. Эти три главы раскроют тайну, фактически мы расскажем вам кое-что, что действительно необходимо знать, чтобы создать версию Форта. Существует несколько тем. такие как метакомпиляторы и целевые компиляторы, декомпиляторы и дисассемблеры, использование в операционных системах, связь с аппаратурой и различные пути реализации цепных программ ("шитых кодов"), которые мы не рассмотрим здесь, - это тема другой книги, Но когда вы закончите последние три главы, у вас будет все, что нужно практически для любых приложений языка.
Об использовании памяти в Форте
Мы немало написали о словаре, стеке, словах PAD, HERE, блочных буферах и других частях Форта безотносительно к их действительному положению в памяти. Хотя детальное знание распределения памяти в Форте не нужно для использования языка, полезно иметь карту памяти, чтобы сделать наглядным то, как организован Форт. Карта памяти (табл.14.1) является последовательным списком позиций в памяти и их функций.