R3: различия между версиями
AtH (обсуждение | вклад) Нет описания правки |
AtH (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
'''Регистр 3''' (R3) — регистр ПМК, доступный с помощью [[регистровая адресация|регистровой адресации]]. Используется для хранения десятичных данных, представленных в форме с естественной или плавающей запятой. | '''Регистр 3''' (R3) — регистр ПМК, доступный с помощью [[регистровая адресация|регистровой адресации]]. Используется для хранения [[Десятичное число|десятичных данных]], представленных в форме с естественной или плавающей запятой. | ||
Для записи в регистр 3 служит команда [[П3]] с кодом 43. Для чтения регистра 3 служит команда [[ИП3]] с кодом 63. Также десятичный регистр 3 используется в командах циклов [[FL3]] и [[PFL3]]. | Для записи в регистр 3 служит команда [[П3]] с кодом 43. Для чтения регистра 3 служит команда [[ИП3]] с кодом 63. Также десятичный регистр 3 используется в командах циклов [[FL3]] и [[PFL3]]. | ||
Строка 5: | Строка 5: | ||
== Модификация R3 при косвенной адресации == | == Модификация R3 при косвенной адресации == | ||
Cодержимое адресного регистра 3 перед выполнением команд с косвенной адресацией изменяется. Если записанное в регистр 3 число меньше нуля, | Cодержимое адресного регистра 3 перед выполнением команд с косвенной адресацией изменяется. Если записанное в регистр 3 число меньше нуля, регистр 3 обнуляется. Дробная часть числа, записанного в регистр 3, отбрасывается. | ||
При '''косвенном обращении с регистровой адресацией''' через регистр 3 (например, [[КИП3]]) перед обращением происходит дополнительное изменение содержимого этого регистра. При использовании регистра 3 происходит косвенная адресация с предварительным автодекрементированием, то есть вычитанием числа 1 из содержимого адресного регистра 3 перед выполнением обращения к памяти. | При '''косвенном обращении с регистровой адресацией''' через регистр 3 (например, [[КИП3]]) перед обращением происходит дополнительное изменение содержимого этого регистра. При использовании регистра 3 происходит косвенная адресация с предварительным автодекрементированием, то есть вычитанием числа 1 из содержимого адресного регистра 3 перед выполнением обращения к памяти. |
Текущая версия от 01:46, 14 января 2020
Регистр 3 (R3) — регистр ПМК, доступный с помощью регистровой адресации. Используется для хранения десятичных данных, представленных в форме с естественной или плавающей запятой.
Для записи в регистр 3 служит команда П3 с кодом 43. Для чтения регистра 3 служит команда ИП3 с кодом 63. Также десятичный регистр 3 используется в командах циклов FL3 и PFL3.
Модификация R3 при косвенной адресации[править]
Cодержимое адресного регистра 3 перед выполнением команд с косвенной адресацией изменяется. Если записанное в регистр 3 число меньше нуля, регистр 3 обнуляется. Дробная часть числа, записанного в регистр 3, отбрасывается.
При косвенном обращении с регистровой адресацией через регистр 3 (например, КИП3) перед обращением происходит дополнительное изменение содержимого этого регистра. При использовании регистра 3 происходит косвенная адресация с предварительным автодекрементированием, то есть вычитанием числа 1 из содержимого адресного регистра 3 перед выполнением обращения к памяти.
При косвенном обращении с прямой адресацией к регистру 3 (например PKИП 03) автодекрементирования содержимого адресного регистра 3 не происходит.
Описанное выше изменение содержимого регистра адресации 3 при косвенном обращении называется модификацией.
Модификация R3 на советских ПМК[править]
Если в регистре 3 содержится число от 1 до 15 (до 105 при адресации памяти программ), его модификация происходит также, как на современных ЭКВМ — путём отбрасывания дробной части (усечения) и уменьшении регистра 3 на единицу.
Модификация чисел меньше 1, а также больших положительных чисел на советских ПМК не документирована и точное поведение может зависеть от модели.
R0 | R1 | R2 | R3 | R4 | R5 | R6 | R7 | R8 | R9 | RA | RB | RC | RД | RE |