++@: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
Нет описания правки
Строка 16: Строка 16:
== Ссылки ==
== Ссылки ==
* {{Исходник|PlusPlusFetch|++@}}
* {{Исходник|PlusPlusFetch|++@}}
* См. слова [[++!]], [[−−!]], [[+!]] и [[Слово !|!]]
* См. слова [[++!]], [[−−!]], [[−−@]], [[+!]] и [[Слово !|!]]
* [https://ru.wikipedia.org/wiki/Инкремент Инкремент в Википедии]
* [https://ru.wikipedia.org/wiki/Инкремент Инкремент в Википедии]



Версия от 08:03, 28 июня 2016

++@ (читается «плюс-плюс-извлечь») — родное слово Каллисто. Косвенное чтение с прединкрементом.

++@            ( a −− x )                           Косвенное чтение по указателю в a с предварительным автоувеличением
                                                    (аналог КИП4..КИП6).

Обозначим буквой p переменную, адрес которой лежит на стеке и равен a. Это может быть настоящая переменная, созданная словом VARIABLE или FVARIABLE. Такие переменные называются указателями, т.к. их содержимое указывает на адрес памяти, к которому будет производиться обращение.

Слово ++@ сперва увеличивает p на единицу, отбросив дробную часть. Потом считывает адресную единицу (десятичное число или байт), расположенный по (новому) адресу, находящемуся в обновившейся переменной p.

Ввод слова ++@

В режиме NUM последовательно нажмите три клавиши  +   +   ИП 

История

Слово ++@ является каллистянским аналогом команд ПМК КИП4, КИП5 и КИП6 — которые производили запись по косвенной адресации с прединкрементом регистров 4, 5 и 6.

В отличии от команд КИП4…КИП6 слово ++@ позволяет организовать косвенную адресацию с прединкрементом по любому десятичному регистру (см. слово FVARIABLE) или двум последовательным байтовым регистрам (см. слово VARIABLE).

Ссылки


  У этой статьи нет иллюстраций. Вы можете помочь проекту, добавив их.


  Это заготовка статьи. Вы можете помочь проекту, дополнив её.