instrucción doz (Difference o Zero)
Finalidad
Calcula la diferencia entre el contenido de dos registros de propósito general y almacena el resultado o el valor cero en un registro de propósito general.
Nota: La instrucción doz solo está soportada en la arquitectura de la familia POWER ®.
Sintaxis
| Bits | VALOR |
|---|---|
| 0-5 | 31 |
| 6-10 | RT |
| 11-15 | RA |
| 16-20 | RB |
| 21 | OE |
| 22-30 | 264 |
| 31 | RC |
Descripción
La instrucción doz añade el complemento del contenido del registro de propósito general (GPR) RA, 1, y el contenido del GPR RB, y almacena el resultado en el GPR de destino RT.
Si el valor en GPR RA es algebraicamente mayor que el valor en GPR RB, entonces GPR RT se establece en 0.
La instrucción doz tiene cuatro formatos de sintaxis. Cada formulario de sintaxis tiene un efecto diferente en el campo de registro de condición 0 y en el registro de excepción de punto fijo.
| Elemento | Descripción | |||
|---|---|---|---|---|
| Formulario de sintaxis | Desbordamiento Excepción (OE) | Punto fijo Registro de excepciones | Registro Bit (Rc) | Condición Campo de registro 0 |
| doz | 0 | Ninguna | 0 | Ninguna |
| doz. | 0 | Ninguna | 1 | LT,GT, EQ, SO |
| dozo | 1 | SO, OV | 0 | Ninguna |
| dozo. | 1 | SO, OV | 1 | LT,GT, EQ, SO |
Los cuatro formatos de sintaxis de la instrucción doz nunca afectan al bit de Carry (CA) en el registro de excepciones de punto fijo. Si el formulario de sintaxis establece el bit de excepción de desbordamiento (OE) en 1, la instrucción afecta a los bits de desbordamiento de resumen (SO) y desbordamiento (OV) en el registro de excepciones de punto fijo; el bit de desbordamiento (OV) sólo se puede establecer en desbordamientos positivos. Si el formato de sintaxis establece el bit Registro (Rc) en 1, la instrucción afecta a los bits Menor que (LT) cero, Mayor que (GT) cero, Igual a (EQ) cero y Resumen de desbordamiento (SO) en el Campo de registro de condición 0.
Parámetros
| Elemento | Descripción |
|---|---|
| RT | Especifica el registro de propósito general de destino donde se almacena el resultado de la operación. |
| RA | Especifica el registro de propósito general de origen para la operación. |
| RB | Especifica el registro de propósito general de origen para la operación. |
Ejemplos
- El código siguiente determina la diferencia entre el contenido de GPR 4 y GPR 6 y almacena el resultado en GPR 4:
# Assume GPR 4 holds 0x0000 0001. # Assume GPR 6 holds 0x0000 0002. doz 4,4,6 # GPR 4 now holds 0x0000 0001. - El código siguiente determina la diferencia entre el contenido de GPR 4 y GPR 6, almacena el resultado en GPR 4 y establece el campo de registro de condición 0 para reflejar el resultado de la operación:
# Assume GPR 4 holds 0x0000 0001. # Assume GPR 6 holds 0x0000 0000. doz. 4,4,6 # GPR 4 now holds 0x0000 0000. - El código siguiente determina la diferencia entre el contenido del GPR 4 y el GPR 6, almacena el resultado en el GPR 4 y establece los bits de desbordamiento de resumen y desbordamiento en el registro de excepciones de punto fijo para reflejar el resultado de la operación:
# Assume GPR 4 holds 0x0000 0002. # Assume GPR 6 holds 0x0000 0008. dozo 4,4,6 # GPR 4 now holds 0x0000 0006. - El código siguiente determina la diferencia entre el contenido del GPR 4 y el GPR 6, almacena el resultado en el GPR 4 y establece los bits de desbordamiento y desbordamiento de resumen en el registro de excepciones de punto fijo y el campo de registro de condición 0 para reflejar el resultado de la operación:
# Assume GPR 4 holds 0xEFFF FFFF. # Assume GPR 6 holds 0x0000 0000. dozo. 4,4,6 # GPR 4 now holds 0x1000 0001.