7.10
*D
Multiplicar ACU 1 por ACU 2 como entero doble
Formato
*D
Descripción de la operación
*D
(Multiplicar enteros dobles) multiplica el contenido del ACU 1 por el contenido del ACU 2.
Los contenidos de ACU 1 y ACU 2 se evalúan como enteros dobles, es decir, como enteros
de 32 bits. El resultado se almacena como entero doble en el ACU 1. Si los bits de la palabra
de estado OV1 = 1 y OS = 1, el resultado queda fuera del margen de un entero doble.
La operación se ejecuta sin tener en cuenta ni afectar al RLO. Una vez realizada la operación
se activan los bits de la palabra de estado A1, A0, OS y OV.
En las CPU con dos acumuladores, el contenido del ACU 2 queda inalterado.
En las CPU con cuatro acumuladores, se copian los contenidos del ACU 3 al ACU 2 y del ACU
4 al ACU 3. El contenido del ACU 4 queda inalterado.
Palabra de estado
se escribe:
Configuración de los bits de la palabra de estado
Resultado = 0
-2.147.483.648 <= Resultado < 0
2.147.483.647 >= Resultado > 0
Resultado > 2.147.483.647
Resultado < -2.147.483.648
Ejemplo
AWL
Explicación
L
ED10
//El valor de ED10 se carga en el ACU 1.
L
MD14
//Cargar el contenido del ACU 1 en el ACU 2. Cargar el valor de MD14 en el ACU 1.
*D
//Multiplicar ACU 2 por ACU 1, almacenar el resultado en el ACU 1.
T
DB1.DBD25
//El contenido del ACU 1 (resultado) se transfiere del DB1 a DBD25.
Lista de instrucciones (AWL) para S7-300 y S7-400
A5E00706962-01
RB
A1
A0
-
x
x
OV
OS
OR
x
x
-
A1
0
0
1
1
0
Aritmética de enteros
STA
RLO
/ER
-
-
-
A0
OV
OS
0
0
-
1
0
-
0
0
-
0
1
1
1
1
1
7-11