CMOVE〉: различия между версиями
Перейти к навигации
Перейти к поиску
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
'''CMOVE>''' — стандартное слово [[Каллисто]]. | '''CMOVE>''' — стандартное слово [[Каллисто]]. | ||
== CMOVE> в стандарте ANS Forth == | |||
17.6.1.0920 CMOVE> "c-move-up" STRING | |||
( c-addr1 c-addr2 u -- ) | |||
Если u больше чем нуль, копирует u последовательных символов из | |||
области данных начинающейся с c-addr1 в область, начинающуюся с c- | |||
addr2, выполняя посимвольно с наибольших адресов к наименьшим. | |||
Отличие с: 17.6.1.0910 CMOVE. | |||
A.17.6.1.0920 CMOVE> | |||
Если c-addr1 находится в пределах области назначения, (то есть, когда c-addr1 | |||
больше чем или равно c-addr2 и c-addr2 - меньше чем количество c-addr1 u CHARS | |||
+), происходит размножение памяти. | |||
Типичное использование: | |||
Предположите символьную строку по адресу 100: "ABCD". | |||
Тогда после | |||
100 DUP CHAR+ SWAP 3 CMOVE>, строка по адресу 100 - "DDDD". | |||
== Ссылки == | == Ссылки == |
Версия от 18:13, 4 сентября 2015
CMOVE> — стандартное слово Каллисто.
CMOVE> в стандарте ANS Forth
17.6.1.0920 CMOVE> "c-move-up" STRING ( c-addr1 c-addr2 u -- ) Если u больше чем нуль, копирует u последовательных символов из области данных начинающейся с c-addr1 в область, начинающуюся с c- addr2, выполняя посимвольно с наибольших адресов к наименьшим.
Отличие с: 17.6.1.0910 CMOVE.
A.17.6.1.0920 CMOVE> Если c-addr1 находится в пределах области назначения, (то есть, когда c-addr1 больше чем или равно c-addr2 и c-addr2 - меньше чем количество c-addr1 u CHARS +), происходит размножение памяти.
Типичное использование: Предположите символьную строку по адресу 100: "ABCD". Тогда после
100 DUP CHAR+ SWAP 3 CMOVE>, строка по адресу 100 - "DDDD".
Ссылки
- Слово CMOVE> (c-move-up) в стандарте ANS Forth (англ.) и комментарии к нему (англ.)
- Слово CMOVE> (c-move-up) в черновике Forth 200x (англ.) и комментарий к нему (англ.)
У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их. |
Это заготовка статьи. Вы можете помочь проекту, дополнив её. |