Признак перезаписи: различия между версиями
м (категория) |
SMB (обсуждение | вклад) мНет описания правки |
||
Строка 65: | Строка 65: | ||
Команды [[Cx]], [[ВП]], цифр, а также [[,|запятой]], если в [[RX|X]] содержалось число нуль, устанавливают признак перезаписи. Команды [[В↑]], [[/-/]] и [[С/П]] состояние признака не изменяют. Все остальные команды признак перезаписи сбрасывают. | Команды [[Cx]], [[ВП]], цифр, а также [[,|запятой]], если в [[RX|X]] содержалось число нуль, устанавливают признак перезаписи. Команды [[В↑]], [[/-/]] и [[С/П]] состояние признака не изменяют. Все остальные команды признак перезаписи сбрасывают. | ||
[[Категория:Стек]] | [[Категория:Стек]] |
Версия от 23:24, 25 января 2015
Замещение существующего в регистре стека X числа при вводе следующего определяется способом ввода существующего числа. Для этого анализируется состояние специального признака перезаписи. Признак сбрасывается или устанавливается при выполнении каждой команды.
Различие в способах перемещения информации в стеке в зависимости от состояния признака перезаписи обусловлено удобством ввода чисел при цепочечных вычислениях и при сбросе ошибочного набранного числа.
Если признак перезаписи установлен, то при вводе числа содержимое регистров Y, Z, T и X1 не изменяется, содержимое регистра X заменяется:
Регистр | Значение до выполнения команды | Значение после выполнения команды |
T | t | t |
Z | z | z |
Y | y | y |
X | x | введенное число |
X1 | x1 | x1 |
Если признак перезаписи не установлен, то при вводе числа содержимое регистров X, Y, Z переносится в регистры Y, Z и T соответственно. Содержимое регистра T теряется, регистра X1 не изменяется:
Регистр | Значение до выполнения команды | Значение после выполнения команды |
T | t | z |
Z | z | y |
Y | y | x |
X | x | введенное число |
X1 | x1 | x1 |
Такое перемещение называется поднятием стека. При поднятии стека следует учитывать наличие признака перезаписи.
Команды Cx, ВП, цифр, а также запятой, если в X содержалось число нуль, устанавливают признак перезаписи. Команды В↑, /-/ и С/П состояние признака не изменяют. Все остальные команды признак перезаписи сбрасывают.