DCPU-16 включает в себя 8 общих регистров с именем A, B, C, X, Y, Z, I
и J
. Это немного программист "trope" для использования I
и J
для счетчиков циклов. В DCPU-16 существуют специализированные регистры I
и J
, которые должны использоваться только в циклах - или все они заканчиваются тем же цветом в конце?
Являются ли регистры я и J специальными в DCPU-16?
Ответ 1
Все указывает на то, что восемь основных регистров DCPU-16 являются "универсальными": в то время как они "предназначены" для определенного использования, программисты могут использовать их так, как они будут. X86 имеет аналогичную архитектуру для своих общих регистров.
Единственными специальными регистрами на DCPU-16 являются SP, ПК и O.
Изменить: спецификация DCPU 1.3 вводит одну команду (MVI), которая добавляет 1 к я и J после выполнения, с целью использования в качестве быстрой копии памяти. Нотч выразил неприязнь к этому, поэтому его можно было бы отбросить, но теперь я и J немного особенны.
Ответ 2
Я уверен, что соглашения появятся, но набор команд полностью ортогонален относительно регистров A, B, C, X, Y, Z, I
и J
, поэтому нет никакой разницы между ними, присущими DCPU-16
.