Редактирование:
THEN
(раздел)
Перейти к навигации
Перейти к поиску
Внимание:
Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте
или
создадите учётную запись
, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Анти-спам проверка.
Не
заполняйте это!
== Реализация == На этапе компиляции THEN может вызывать [[Авост приложения|авост]]. <pre> 3642 RGRESOLVE: .DW HERE, LITP 3643 .DB 39,17 ; 10001 3644 .DW SUB, SWAP, STORE, EXIT … 3684 ;#THEN 3685 ; THEN I ( −− ) Конец ветвления IF. 3686 LTHEN: .DB 84H 3687 .TEXT "THEN" 3688 .DW LBEGIN 3689 THEN: .DW CALL 3690 RTHEN: .DW TWO,QPAIR, BRAN,RGRESOLVE </pre> Реализации из SP-Forth 4.20: <pre> : THEN \ 94 \ Интерпретация: семантика неопределена. \ Компиляция: ( C: orig -- ) \ Разрешить ссылку вперед orig, используя позицию семантики выполнения. \ Добавить семантику времени выполнения, данную ниже, к текущему определению. \ Время выполнения: ( -- ) \ Продолжить выполнение. ?COMP \ HERE TO :-SET >ORESOLVE ; IMMEDIATE </pre> <pre> : THEN ?COMP TC>RESOLVE ; IMMEDIATE </pre> === Советская реализация === Юрий Семёнов приводит следующее описание слова THEN (стр. 59): : THEN ?COMP 2 ?PAIR HERE OVER - ↔ ! ; IMMEDIATE У Баранова-Ноздрунова определение слова THEN выглядит так (стр. 58): : THEN ( A,1 ---> ) 1 ?PAIRS >RESOLVE ; IMMEDIATE Описание слова THEN и определение IF…ELSE…THEN в ядре ФОРТ-ЕС: <pre> THEN HK А,2-> /КОМПИЛЯЦИЯ/ КОНЕЦ ВЕТВЛЕНИЯ "IF" 47 -> /ИСПОЛНЕНИЕ/ Экран номер 47 ( 31.03.86 СТАНДАРТНЫЕ СТРУКТУРЫ УПРАВЛЕНИЯ ) : IF ?COMP COMPILE ?BRANCH >MARK 2 ; IMMEDIATE : THEN 2 ?PAIRS >RESOLVE ; IMMEDIATE : ELSE 2 ?PAIRS COMPILE BRANCH >MARK SWAP >RESOLVE 2 ; IMMEDIATE </pre> Определение слова THEN в FORTH ИТЭФ: <PRE> HEAD 304Q,'THE',316Q,THEN,$COL ; THEN DW QCOMP,TWO,QPAIR,HERE,OVER,SUB,SWAP,STORE,SEMI </PRE>
Описание изменений:
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см.
Pmkwiki:Авторские права
).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!
В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:
Отменить
Справка по редактированию
(в новом окне)
Навигация
Персональные инструменты
Вы не представились системе
Обсуждение
Вклад
Создать учётную запись
Войти
Пространства имён
Статья
Обсуждение
русский
Просмотры
Читать
Править
История
Ещё
Поиск
Навигация
Заглавная страница
Свежие правки
Случайная страница
Справка по MediaWiki
Инструменты
Ссылки сюда
Связанные правки
Служебные страницы
Сведения о странице