Редактирование: CMOVE〉
Перейти к навигации
Перейти к поиску
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий ниже, чтобы убедиться, что это нужная вам правка, и запишите страницу ниже, чтобы отменить правку.
Текущая версия | Ваш текст | ||
Строка 11: | Строка 11: | ||
== CMOVE> в стандарте ANS Forth == | == CMOVE> в стандарте ANS Forth == | ||
17.6.1.0920 CMOVE> "c-move-up" STRING | 17.6.1.0920 CMOVE> "c-move-up" STRING | ||
( c-addr1 c-addr2 u -- ) | ( c-addr1 c-addr2 u -- ) | ||
Строка 30: | Строка 29: | ||
100 DUP CHAR+ SWAP 3 CMOVE>, строка по адресу 100 - "DDDD". | 100 DUP CHAR+ SWAP 3 CMOVE>, строка по адресу 100 - "DDDD". | ||
== CMOVE> в предыдущем стандарте Forth-83 (англ.) == | |||
CMOVE> addr1 addr2 u -- 83 "c-move-up" | CMOVE> addr1 addr2 u -- 83 "c-move-up" | ||
Move the u bytes at address addr1 to addr2. The move begins | Move the u bytes at address addr1 to addr2. The move begins | ||
Строка 45: | Строка 38: | ||
sliding a string towards higher addresses). | sliding a string towards higher addresses). | ||
== <CMOVE в стандарте Forth-79 (англ.) == | |||
<CMOVE addr1 addr2 n -- "reverse-c-move" | <CMOVE addr1 addr2 n -- "reverse-c-move" | ||
Copy n bytes beginning at addr1 to addr2. The move proceeds | Copy n bytes beginning at addr1 to addr2. The move proceeds | ||
within the bytes from high memory toward low memory. | within the bytes from high memory toward low memory. | ||
== История == | |||
В 1983 году слово <CMOVE было переименовано в CMOVE> — лучше отражающее направление и способ перемещения участка памяти. | |||
В таком виде слово и вошло в [[Каллисто]]. | |||
== Реализация == | == Реализация == | ||
Слово CMOVE> в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение: | Слово CMOVE> в ФОРТ-ЕС было [[примитив]]ом. Вот его описание и определение: | ||
<PRE> | <PRE> | ||
Строка 122: | Строка 77: | ||
[[Категория:Примитивы]] | [[Категория:Примитивы]] | ||
[[Категория:Работа с памятью Каллисто]] | [[Категория:Работа с памятью Каллисто]] | ||