11
Operaciones de desplazamiento y rotación
11.1
Operaciones de desplazamiento
11.1.1
Lista de operaciones de desplazamiento
Descripción
Las operaciones de desplazamiento sirven para desplazar bit a bit el contenido de la entrada IN,
hacia la izquierda o hacia la derecha (v. Registros de la CPU). El desplazamiento hacia la
izquierda multiplica el contenido de la entrada IN por potencias de 2; el desplazamiento hacia la
derecha divide el contenido de la entrada IN por potencias de 2. Por ejemplo, desplazando el
equivalente binario del valor decimal 3 tres bits hacia la izquierda se obtiene en el acumulador el
equivalente binario del valor decimal 24. Desplazando el equivalente binario del valor decimal 16
dos bits hacia la derecha se obtiene en el acumulador el equivalente binario del valor decimal 4.
El número que se introduce en el parámetro de entrada N indica el número de bits a desplazar.
Las posiciones que quedan libres después de ejecutar la operación de desplazamiento se rellenan
con ceros o con el estado de señal del bit de signo (0 significa positivo y 1 significa negativo). El
estado de señal del último bit desplazado se carga en el bit A1 de la palabra de estado. Los bits
A0 y OV de la palabra de estado se ponen a 0. Para interpretar el bit A1 pueden utilizarse las
operaciones de salto.
Se dispone de las operaciones de desplazamiento siguientes:
•
SHR_I
•
SHR_DI
•
SHL_W
•
SHR_W
•
SHL_DW
•
SHR_DW
Esquema de contactos (KOP) para S7-300 y S7-400
Manual de referencia, 04/2017, A5E41654719-AA
Desplazar entero a la derecha
Desplazar entero doble a la derecha
Desplazar 16 bits a la izquierda
Desplazar 16 bits a la derecha
Desplazar 32 bits a la izquierda
Desplazar 32 bits a la derecha
137