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

Материал из ПМК вики
Перейти к навигации Перейти к поиску
(Модификация RC на советских ПМК)
 
Строка 7: Строка 7:
 
Cодержимое адресного регистра C перед выполнением команд с косвенной адресацией изменяется. Если записанное в регистр C число меньше нуля, регистр C обнуляется. Дробная часть числа, записанного в регистр C, отбрасывается.
 
Cодержимое адресного регистра C перед выполнением команд с косвенной адресацией изменяется. Если записанное в регистр C число меньше нуля, регистр C обнуляется. Дробная часть числа, записанного в регистр C, отбрасывается.
  
Описанное выше изменение содержимого регистра адресации C при косвенном обращении называется [[модификация|модификацией]].  До появления в [[МК-61]] команды [[KINT|K[x]]] модификация регистра C часто использовалась для выделения целой части числа, что не всегда работало корректно.
+
Описанное выше изменение содержимого регистра адресации C при косвенном обращении называется [[модификация|модификацией]].
  
 
== Модификация RC на советских ПМК ==
 
== Модификация RC на советских ПМК ==
 
Если в регистре C содержится число 0, а также числа от 1 до 14 (до 104 при адресации [[Память программ|памяти программ]]), его модификация происходит также, как на современных ЭКВМ — путём отбрасывания дробной части (усечения).
 
Если в регистре C содержится число 0, а также числа от 1 до 14 (до 104 при адресации [[Память программ|памяти программ]]), его модификация происходит также, как на современных ЭКВМ — путём отбрасывания дробной части (усечения).
  
Модификация отрицательных чисел, чисел между 0 до 1, а также больших положительных чисел на советских ПМК не документирована и точное поведение может зависеть от модели.
+
Модификация отрицательных чисел, чисел между 0 до 1, а также больших положительных чисел на советских ПМК не документирована и точное поведение может зависеть от модели. До появления в [[МК-61]] команды [[KINT|K[x]]] модификация регистра C часто использовалась для выделения целой части числа, что не всегда работало корректно.
  
 
== История ==
 
== История ==

Текущая версия на 06:31, 15 января 2020

Регистр 12 (R12, RC) — регистр ПМК, доступный с помощью регистровой адресации. При использовании регистровой адресации регистр с номером 12 имеет наименование C. Используется для хранения десятичных данных, представленных в форме с естественной или плавающей запятой.

Для записи в регистр 12 служит команда ПC с кодом 4C. Для чтения регистра 12 служит команда ИПC с кодом 6C.

Модификация RC при косвенной адресации[править]

Cодержимое адресного регистра C перед выполнением команд с косвенной адресацией изменяется. Если записанное в регистр C число меньше нуля, регистр C обнуляется. Дробная часть числа, записанного в регистр C, отбрасывается.

Описанное выше изменение содержимого регистра адресации C при косвенном обращении называется модификацией.

Модификация RC на советских ПМК[править]

Если в регистре C содержится число 0, а также числа от 1 до 14 (до 104 при адресации памяти программ), его модификация происходит также, как на современных ЭКВМ — путём отбрасывания дробной части (усечения).

Модификация отрицательных чисел, чисел между 0 до 1, а также больших положительных чисел на советских ПМК не документирована и точное поведение может зависеть от модели. До появления в МК-61 команды K[x] модификация регистра C часто использовалась для выделения целой части числа, что не всегда работало корректно.

История[править]

На советских ПМК регистр C играл важную роль при использовании так называемых 0С-оборотней. Эта особенность ПМК относилась к еггогологии, то есть была недокументированной.

Младшие регистры памяти
R0 R1 R2 R3 R4 R5 R6 R7 R8 R9 RA RB RC RE