Aritmética de enteros
7.11
/D
Dividir ACU 2 por ACU 1 como entero doble
Formato
/D
Descripción de la operación
/D (Dividir enteros dobles) divide el contenido del ACU 2 por el contenido del ACU 1. 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 en el ACU 1. El resultado contiene sólo el cociente, pero no
el resto de la división (el resto de la división se obtiene realizando la operación MOD ).
La operación se realiza 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
Cociente = 0
-2147483648 <= Cociente < 0
2147483647 >= Cociente > 0
Cociente = 2147483648
División por cero
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
//Dividir ACU 2 por ACU 1, almacenar el resultado (cociente) en el ACU 1.
T
MD20
//El contenido del ACU 1 (resultado) se transfiere a MD20.
Ejemplo: 13 / 4
Contenido del ACU 2 antes de la operación (ED10):
Contenido del ACU 1 antes de la operación (MD14):
Operación /D (ACU 2 / ACU 1):
Contenido del ACU 1 después de la operación (cociente):
7-12
RB
A1
A0
-
x
x
OV
OS
OR
x
x
-
A1
0
0
1
1
1
Lista de instrucciones (AWL) para S7-300 y S7-400
STA
RLO
/ER
-
-
-
A0
OV
OS
0
0
-
1
0
-
0
0
-
0
1
1
1
1
1
"13"
"4"
"13/4"
"3"
A5E00706962-01