Редактирование: ?DUP
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 18: | Строка 18: | ||
В Форте FSP88M это слово известно под именем ?DU (три литеры). | В Форте FSP88M это слово известно под именем ?DU (три литеры). | ||
Слово ?DUP подвергается критике, т.к. оставляет на [[Стек данных|стеке]] разное количество элементов, что является плохим стилем программирования. Чаще всего ?DUP используется для компенсации того, что [[IF]] снимает со [[Стек данных|стека]] свой аргумент. | Слово ?DUP подвергается критике, т.к. оставляет на [[Стек данных|стеке]] разное количество элементов, что является плохим стилем программирования. Чаще всего ?DUP используется для компенсации того, что [[IF]] снимает со [[Стек данных|стека]] свой аргумент. В {{colorForth}} слово ?DUP нет, т.к. [[IF]] там неразрушающий. | ||
В {{colorForth}} слово ?DUP нет, т.к. [[IF]] там неразрушающий | |||
=== ?DUP в предыдущем стандарте Forth-83 (англ.) === | === ?DUP в предыдущем стандарте Forth-83 (англ.) === | ||
Строка 47: | Строка 45: | ||
1916 JQDUP: PKRM03 KX!=09 ; Если x<>0 | 1916 JQDUP: PKRM03 KX!=09 ; Если x<>0 | ||
1917 KM3 KGOTO9 ; ..делает DUP | 1917 KM3 KGOTO9 ; ..делает DUP | ||
</pre> | </pre> | ||