Редактирование:
Слово I
(раздел)
Перейти к навигации
Перейти к поиску
Внимание:
Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте
или
создадите учётную запись
, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Анти-спам проверка.
Не
заполняйте это!
== Реализация == В [[Каллисто|Каллисто 1.0]] слово I похоже на слово [[R@]], но достаёт с вершины [[Стек возвратов Каллисто|стека возвратов]] беззнаковое целое и поэтому немного быстрее: <pre> 1828 ;#I 1829 ; I ( −− U ) Значение счётчика цикла FOR. 1830 LI: .DB 1 1831 .TEXT "I" ; ( −− n ) 1832 .DW LRAT 1833 I: .DW JI ; Скопировать верхнее 16−битное число из стека возвратов в стек данных. 1834 JI: RM2 1835 I0: MA M5 1836 KRMA RME ∗ KRM5 + KM3 KGOTO9 </pre> Реализации из SP-Forth 4.20: <pre> CODE C-I LEA EBP, -4 [EBP] MOV [EBP], EAX MOV EAX, [ESP] SUB EAX, 4 [ESP] RET END-CODE … : I \ 94 \ Интерпретация: семантика неопределена. \ Выполнение: ( -- n|u ) ( R: loop-sys -- loop-sys ) \ n|u - копия текущего (внутреннего) индекса цикла. Неопределенная ситуация \ возникает, если парметры цикла недоступны. ?COMP ['] C-I INLINE, ; IMMEDIATE </pre> <pre> : I \ 94 ?COMP S" C-I" TC-FINDOUT INLINE, ; IMMEDIATE </pre> === Советская реализация === Слово I в ФОРТ-ЕС и FORTH ИТЭФ было [[примитив]]ом. Вот его описание и определение в ФОРТ-ЕС: <PRE> I К ->W ТЕКУЩЕЕ ЗНАЧЕНИЕ W СЧЕТЧИКА ЦИКЛА "ПО" 24 Экран номер 24 ( 09.09.86 ЦИКЛЫ СО СЧЕТЧИКОМ: (DO/ I I' J LEAVE) CODE I ( ->U ТЕКУЩЕЕ 3HАЧЕHИE СЧЕТЧИКА ЦИКЛА) RW1 RPULL, PUSHRW1 B, END-CODE </PRE> Вот его определение в FORTH ИТЭФ: <PRE> HEAD 201Q,,311Q,I ; I RR$: PUSH [BP] Z$: NEXT </PRE>
Описание изменений:
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см.
Pmkwiki:Авторские права
).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!
В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:
Отменить
Справка по редактированию
(в новом окне)
Навигация
Персональные инструменты
Вы не представились системе
Обсуждение
Вклад
Создать учётную запись
Войти
Пространства имён
Статья
Обсуждение
русский
Просмотры
Читать
Править
История
Ещё
Поиск
Навигация
Заглавная страница
Свежие правки
Случайная страница
Справка по MediaWiki
Инструменты
Ссылки сюда
Связанные правки
Служебные страницы
Сведения о странице