Редактирование:
ERASE
(раздел)
Перейти к навигации
Перейти к поиску
Внимание:
Вы не вошли в систему. Ваш IP-адрес будет общедоступен, если вы запишете какие-либо изменения. Если вы
войдёте
или
создадите учётную запись
, её имя будет использоваться вместо IP-адреса, наряду с другими преимуществами.
Анти-спам проверка.
Не
заполняйте это!
== Реализация == <pre> 2013 JFILL2: M8 1 + MA 1 + M3 2014 KRM8 M0 +/− KX<09 ; Счётчик литер 2015 KRMA 1 EE 4 − KX>=09 1 − M5 RMB 2016 FILL1: KM5 FL0 FILL1 2017 KGOTO9 … 2021 JERASE: CX ; Обработчик ERASE 2022 JJFILL: MB RM3 GOTO JFILL2 2023 2024 ;#ERASE 2025 ; ERASE ( a U −− ) Стереть. Записать U нулей в память, начиная с адреса a. 2026 LERASE: .DB 5 2027 .TEXT "ERASE" ; ( где сколько −− ) 2028 .DW LFILL 2029 ERASE: .DW JERASE ; Обнулить массив. </pre> Реализация из SP-Forth 4.20: <pre> : ERASE ( addr u -- ) \ 94 CORE EXT \ Если u больше нуля, очистить все биты каждого из u байт памяти, \ начиная с адреса addr. 0 FILL ; </pre> === Советская реализация === Юрий Семёнов приводит (стр. 26) следующее определение ERASE через более общее слово [[FILL]]: : ERASE 0 FILL ; Описание и определение слова ERASE в ядре ФОРТ-ЕС: <PRE> ERASE + A,U-> ЗАСЛАТЬ НУЛИ В U БАЙТОВ ПО АДРЕСУ А 22 Экран номер 22 ( 31.03.86 FILL ERASE BLANK COMPILE [ ] MIN MAX HEX DECIMAL) : ERASE ( A,U-> ) 0 FILL ; </PRE> В FORTH ИТЭФ слово ERASE было [[примитив]]ом, код которого использовал код [[примитив]]а [[FILL]], вот их определения: <PRE> HEAD 204Q,'FIL',314Q,FILL ; FILL POP AX ; Символ FLL: POP CX ; Счетчик символов CMP CX, 0 JLE DRP ; POP BX $REPE: MOV BYTE PTR [BX], AL INC BX LOOP $REPE NEXT HEAD 205Q,'ERAS',305Q,ERASE ; ERASE SUB AX, AX JMP FLL </PRE> === colorForth (cf2019.nasm 2019 Sep 14) === <PRE> erase_: ; ( a n -- ) \ erase n bytes starting at address a mov ecx, eax _DROP_ push edi mov edi, eax xor eax, eax rep stosb pop edi _DROP_ ret </PRE>
Описание изменений:
Пожалуйста, учтите, что любой ваш вклад в проект «ПМК вики» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см.
Pmkwiki:Авторские права
).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!
В целях защиты вики от автоматического спама в правках просим вас решить следующую каптчу:
Отменить
Справка по редактированию
(в новом окне)
Навигация
Персональные инструменты
Вы не представились системе
Обсуждение
Вклад
Создать учётную запись
Войти
Пространства имён
Статья
Обсуждение
русский
Просмотры
Читать
Править
История
Ещё
Поиск
Навигация
Заглавная страница
Свежие правки
Случайная страница
Справка по MediaWiki
Инструменты
Ссылки сюда
Связанные правки
Служебные страницы
Сведения о странице