Редактирование:
Слово '
(раздел)
Перейти к навигации
Перейти к поиску
Внимание:
Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте
или
создадите учётную запись
, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Анти-спам проверка.
Не
заполняйте это!
== Реализация == Слово ' взято из Форта и очень удобно, если вам необходим именно [[CFA|токен]]. Большую гибкость предоставляет более общее каллистянское слово [['N]], возвращающее [[NFA]] найденного слова. См. также стандартное слово Форта [[[']|[']]]. <pre> 3614 ;#Tick 3615 ; ' ( −− т ) Дать токен (CFA) следующего слова. 3616 LTICKCFA: .DB 1 3617 .TEXT "'" ; ( −− cfa ) 3618 .DW LTICK 3619 TICKCFA: .DW CALL, TICK,BRAN,RN2CFA ; Стандартный ' реализован поверх каллистянского 'N </pre> Реализации из SP-Forth 4.20: <pre> : ' ALSO TC-WL ' PREVIOUS ; </pre> <pre> : ' ( "<spaces>name" -- xt ) \ 94 \ Пропустить ведущие пробелы. Выделить name, ограниченное пробелом. Найти name \ и вернуть xt, выполнимый токен для name. Неопределенная ситуация возникает, \ если name не найдено. \ Во время интерпретации ' name EXECUTE равносильно name. ALSO NON-OPT-WL CONTEXT ! PARSE-NAME SFIND 0= PREVIOUS IF -321 THROW THEN ( -? ) ; </pre> === Советская реализация === Юрий Семёнов приводит следующее описание слова ' через -FIND (стр. 74): : ' -FIND 0= 0 ?ERROR ( если XXXX не найдено, то сообщение об ошибке) DROP LITERAL ; IMMEDIATE У Баранова-Ноздрунова определение слова ' выглядит так (стр. 65): : ' ( ---> A ) BL WORD FINDN IF NAME> EXIT THEN COUNT TYPE -1 ABORT" ?" ; Описание и определение слова ' в ядре ФОРТ-ЕС: <PRE> ' ->CFA ДАТЬ CFA ДЛЯ СЛЕДУЮЩЕГО СЛОВА 41 Экран номер 41 ( 31.03.86 -TRAILING ' ['] [COMPILE] LOAD THRU ;S --> ) : ' ( ->CFA) -FIND 0= IF BADWORD THEN ; </PRE>
Описание изменений:
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см.
Pmkwiki:Авторские права
).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!
В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:
Отменить
Справка по редактированию
(в новом окне)
Навигация
Персональные инструменты
Вы не представились системе
Обсуждение
Вклад
Создать учётную запись
Войти
Пространства имён
Статья
Обсуждение
русский
Просмотры
Читать
Править
История
Ещё
Поиск
Навигация
Заглавная страница
Свежие правки
Случайная страница
Справка по MediaWiki
Инструменты
Ссылки сюда
Связанные правки
Служебные страницы
Сведения о странице