Адресный интерпретатор: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
'''Адресный интерпретатор''' (''англ.'' address interpreter) — интерпретатор [[Шитый код|косвенного шитого кода]].
'''Адресный интерпретатор''' (''англ.'' address interpreter) — интерпретатор [[Шитый код|косвенного шитого кода]].


''Адресный интерпретатор'' [[Каллисто]] использует [[единое адресное пространство]], что позволяет исполнять [[шитый код]] как из [[Регистры байтовых данных|байтовой памяти]], так и из [[Память программ|памяти программ]]. Его оптимизация по быстродействию является важной задачей и серьёзной помощью проекту.
''Адресный интерпретатор'' [[Каллисто]] использует [[единое адресное пространство]], что позволяет исполнять [[шитый код]] как из [[Регистры байтовых данных|байтовой памяти]], так и из [[Память программ|памяти программ]].


Если поток исполнения команд уподобить току крови, ''адресный интерпретатор'' — сердце [[Каллисто]]. Каждая передача управления от одного [[примитив]]а к другому проходит через ''адресный интерпретатор''. Именно он «гонит кровь» через [[Слово :|определения высокого уровня]], «оживляя» [[шитый код]] и заставляя его [[EXECUTE|работать]].
Если поток исполнения команд уподобить току крови, ''адресный интерпретатор'' — сердце [[Каллисто]]. Каждая передача управления от одного [[примитив]]а к другому проходит через ''адресный интерпретатор''. Именно он «гонит кровь» через [[Слово :|определения высокого уровня]], «оживляя» [[шитый код]] и заставляя его [[EXECUTE|работать]].


К сожалению, сейчас (по состоянию на март 2016 года) [[адресный интерпретатор]] написан на [[ЯМК|языке МК]], что сильно ограничивает быстродействие [[Каллисто]]. Оптимизация [[Адресный интерпретатор|адресного интерпретатора]] по быстродействию, как и прошивка его в ПЗУ [[микроконтроллер]]а является задачей, важной для успеха [[Каллисто]].
К сожалению, сейчас (по состоянию на март 2016 года) ''адресный интерпретатор'' написан на [[ЯМК|языке МК]], что сильно ограничивает быстродействие [[Каллисто]]. Оптимизация ''адресного интерпретатора'' по быстродействию, как и прошивка его в ПЗУ [[микроконтроллер]]а является задачей, важной для успеха [[Каллисто]].


== История ==
== История ==

Версия от 10:54, 28 марта 2016

Адресный интерпретатор (англ. address interpreter) — интерпретатор косвенного шитого кода.

Адресный интерпретатор Каллисто использует единое адресное пространство, что позволяет исполнять шитый код как из байтовой памяти, так и из памяти программ.

Если поток исполнения команд уподобить току крови, адресный интерпретатор — сердце Каллисто. Каждая передача управления от одного примитива к другому проходит через адресный интерпретатор. Именно он «гонит кровь» через определения высокого уровня, «оживляя» шитый код и заставляя его работать.

К сожалению, сейчас (по состоянию на март 2016 года) адресный интерпретатор написан на языке МК, что сильно ограничивает быстродействие Каллисто. Оптимизация адресного интерпретатора по быстродействию, как и прошивка его в ПЗУ микроконтроллера является задачей, важной для успеха Каллисто.

История

Впервые косвенный шитый код (англ. indirect-threaded code) появился в Форте 1971-73 годах, когда Чак Мур перенёс транслятор на DEC PDP-11 в National Radio Astronomy Observatory (англ., Шарлотсвилл). С тех пор разные варианты шитого кода применяется в подавляющем числе различных реализаций Форта.

Адресный интерпретатор для PDP-11 представлял из себя 2-словный макрос на форт-ассемблере:

    : NEXT   IP )+ W MOV  W )+ ) JMP ;


  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.