assembly - competition - nafta official website
¿Los registros I y J son especiales en DCPU-16? (2)
Estoy seguro de que las convenciones surgirán pero el conjunto de instrucciones es completamente ortogonal con respecto a los registros A, B, C, X, Y, Z, I
y J
por lo que no hay diferencia entre ellos inherente en el DCPU-16
.
DCPU-16 incluye 8 registros generales llamados A, B, C, X, Y, Z, I
y J
Es un poco un "tropo" de programador usar I
y J
para contadores de bucle. En DCPU-16, ¿existen registros especializados I
y J
, que solo deberían usarse en bucles, o todos terminan con el mismo color al final?
Todo apunta a que los ocho registros principales del DCPU-16 son de "propósito general": mientras están "destinados" para un cierto uso, los programadores pueden usarlos como lo deseen. El x86 tiene una arquitectura similar para sus registros generales.
Los únicos registros de propósito especial en DCPU-16 son SP, PC y O.
Editar: La especificación DCPU 1.3 introduce una sola instrucción (MVI) que agrega 1 a I y J después de la ejecución, con la intención de ser utilizada como una copia de memoria rápida. Notch ha expresado su disgusto por esto, por lo que eventualmente podría perderse, pero ahora I y J son un poco especiales.