You are on page 1of 9

Automatizacin Industrial

Operaciones de Carga y
Transferencia
TEMA Operaciones de Carga y Transferencia
1. Operaciones de Carga y Transferencia
2. Efecto sobre los Acumuladores
3. Funciones del Acumulador
4. Funciones de Sistema para la Transferencia de Datos
ndice
Estructura de los Acumuladores
El flujo de informacin discurre a travs de los denominados acumuladores
Byte alto Byte alto Byte bajo Byte bajo
23 16 15 8 7 0 31 24
Palabra alta Palabra baja
ACU(1 2)
intercambiar informaciones entre las diferentes zonas de operandos
preparar temporizaciones y valores de contador para su posterior tratamiento
cargar valores constantes necesarios para la ejecucin del programa
hay funciones de:
- carga - transferencia
- funciones entre acumuladores - funciones del sistema (SFC 20,21 y 81)
Operaciones de Carga y Transferencia
Las Operaciones de Carga y Transferencia permiten
Funciones del acumulador
Acumulador 1 Acumulador 2
Funciones digitales Func. transferencia
Mdulos Memoria trabajo
Memoria sistema
Reg. direcciones
Palabra de estado
Temporiz. Contadores Imgenes PII, PIQ
Dat. locales temporales
Marcas
Periferia de entradas
Constantes, punteros
Long. nmero bloques
Bloque de datos
Mdulos Memoria trabajo Memoria sistema
Dat. locales temporales
Palabra de estado Imgenes PII, PIQ
Marcas Bloque de datos Periferia de salidas
Funciones de carga
Operaciones de Carga y Transferencia
La funcin carga (L - load) pone en el acumulador1 el valor del operando especificado:
(constante, variable o una direccin ) (todos los tipos de datos con 8, 16 o 32 bits)
Operandos ubicados en la memoria:
31 24 23 16 8 15 7 0
L IW 0
IB 1 IB 0
0000
0000
31 24 23 16 8 15 7 0
L IB 0 IB 0 0000
0000
0000
31 24 23 16 8 15 7 0
L ID 0
IB 3 IB 2
IB 1
IB 0
ACU 1
23 16 15 8 7 0 31 24
L IB n
L IW n
L ID n
L QB n
L QW n
L QD n
L PIB n
L PIW n
L PID n
L MB n
L MW n
L MD n
Operaciones de Carga
Carga de constantes Descripcin
Direccionamiento inmediato
L +27 Carga la constante entera de 16 bits 27 en ACU1
L L#-1 Carga la constante entera de 32 bits -1 en ACU1
L 2#1010101010101010 Carga la constante binaria de 16 bits en ACU1
L DW#16#A0F0BCFD Carga la constante hexadecimal en ACU1
L FIN Carga los caracteres ASCII deseados en ACU1
L T#500 ms Carga el valor de temporizacin en ACU1
L S5T#2s Cargar un temporizador S5
L C#100 Carga un valor de computo en BCD en ACU1
L B#(100,12) Carga la constante de 2 bytes
L B#(100,12,50,8) Carga la constante de 4 bytes
L B#16#F1 Cargar nmero de dos dgitos hexadecimales en ACU 1
L P#10.0 Carga el puntero intrarea en ACU1
L P#I20.6 Carga el puntero interrea en ACU1
L P#name Cargar la direccin de variable local
L -25 Carga el nmero real en ACU1
L D# 1995-01-20 Carga la fecha
L TOD#13:20:33.125 Carga de un tiempo (la hora) en 32 bits
Ejemplos de Direccionamiento
La funcin transferencia (T - transfer) pone el contenido del acumulador1 en el
operando especificado (todos los tipos de datos en 8, 16 o 32 bits)
Las operaciones de transferencia son incondicionales
Operandos ubicados en la memoria:
ACU 1
23 16 15 8 7 0 31 24
T IB n
T IW n
T ID n
T QB n
T QW n
T QD n
T PQB n
T PQW n
T PQD n
T MB n
T MW n
T MD n
T QD 4 T QW 4 T QB 4
Operaciones de Transferencia
ACCU 1 contenidos para las instrucciones de carga
31 24 23 16 8 15 7 0
L IW 0
IB 1 IB 0
0000
0000
31 24 23 16 8 15 7 0
L IB 0 IB 0 0000
0000
0000
31 24 23 16 8 15 7 0
L ID 0
IB 3 IB 2
IB 1
IB 0
Instruccin Transferir
31 24 23 16 8 15 7 0
Byte 0 Byte 1
Byte 2
Byte 3
T QD 4 T QW 4 T QB 4
Efecto sobre el ACU 1
Word dWord c Word bWord a
Word bWord a 0 IW 7 Word dWord c IW 7
0 IW 7 0 IW 9 Word bWord a IW 9
L IW 7
L IW 9
ACU 2 ACU 1
Informacin
perdida
Informaciones
procedentes
de la PII
ZZZZ
YYYY
L ID 0
L ID 4
ACU 2 ACU 1
Informacin
perdida
Informaciones
procedentes
de la PII
YYYY ZZZZ
ZZZZ
ID 0
ID 0
ID 4
ID 0
ID 4
Efecto sobre el ACU 2 Operaciones de Carga
Word dWord c Word bWord a
Word dWord c Word bWord a Word a
T QW 5
ACU 2 ACU 1
Informacin
perdida
Informaciones
en la PIQ
Valor previo
de QW 5
T QD 10
ACU 2 ACU 1
Informaciones
en la PAA
ID 1 ID 3
ID 1 ID 3 ID 3
Informacin
perdida
Valor previo
de QD 10
Efecto sobre el ACU 2 Operaciones de Transferencia
Permiten transferir valores de un acumulador a otro, o reemplazar
bytes en el acumulador 1
Se ejecutan independiente del resultado lgico o bits de estado
Transferencia directa entre acumuladores
PUSH: Permite desplazar el contenido de los ACU hacia adelante
POP: Permite desplazar el contenido de los ACU hacia atrs
TAK: Permite intercambiar el contenido de ACU1 y ACU 2
PUSH
Acumulador 2 Acumulador 1 Acumulador 1 Acumulador 2
Acumulador 2 Acumulador 1 Acumulador 2 Acumulador 1
TAK POP
Funciones del Acumulador I
Intercambio de Bytes en el Acumulador 1
CAD: cambia bytes en todo el acumulador 1. El byte de mayor peso con el byte
de menor peso y los dos bytes intermedios entre s
CAW: cambia en el acumulador 1, los bytes de la palabra de menor peso
n
CAW
CAD
n+1 n+2 n+3
n n+1 n+3 n+2
n n+1 n+2 n+3
n+3 n+2 n+1 n
Funciones del Acumulador II
En funciones Lgicas
La operacin Transferir un valor permite inicializar variables con valores
predeterminados
El valor indicado en la entrada IN se copia en el operando indicado en la salida OUT
Permite copiar todos los tipos de datos de 8,16 o 32 bits
Cuadro FUP Parmetro Tipo de Area de Descripcin
datos memoria
EN BOOL I, Q, M, D, L Entrada de habilitacin
T, C
IN Todos tipos I, Q, M, D, L Valor fuente
8, 16 o 32 bi
OUT Todos tipos I, Q, M, D, L Direccin de destino
8, 16 32 bi
ENO BOOL I, Q, M, D, L Salida de habilitacin
MOVE
EN OUT
IN ENO
Carga y Transferencia de Datos Move
KOP AWL
MOVE
EN
ENO
IN
O
EN - Habilitar entrada
ENO -Habilitar salida
IN - Valor de entrada
(todos los tipos de datos
con longitud 8, 16, 32 bit)
O - Direccin del resultado
(todos los tipos de datos
con longitud 8, 16, 32 bit)
L - Carga T - Transferencia
(Todos los tipos de datos con 8, 16, 32 bits)
Ejemplos:
L +5 // Carga una constante de 16-bit
L L#523123 // Carga una constante de 32-bit
L B#16#EF // Carga un byte hexadecimal
L 2#0001_0110_1110_0011
// Carga un valor binario de 16-bit
L TOD#1:10:3.3
// Carga un tiempo de 32-bit
T MB0 // Transferir un valor al byte de
memoria 0
T AD256 // Transferir un valor a la doble
doble palabra de salida 256
Carga y Transferencia de Datos
SFC 20 BLKMOV
Estn disponibles las siguientes funciones del sistema para la transferencia de datos
SFC Parmetros Declaracin Tipo dato Descripcin
20 SRCBLK INPUT ANY Fuente de donde copiar datos
RET_VAL OUTPUT INT Informacin de error
DSTBLK OUTPUT ANY Destino donde copiar los datos
Funciones del Sistema para Transferencia de Datos
SFC 21 FILL
SFC Parmetros Declaracin Tipo dato Descripcin
21 VBAL INPUT ANY Area fuente a ser copiada
RET_VAL OUTPUT INT Informacin de error
BLK OUTPUT ANY Destino donde copiar los datos
Funciones del Sistema para Transferencia de Datos
SFC 81 UBLKMOV
SFC Parmetros Declaracin Tipo dato Descripcin
81 SRCBLK INPUT ANY Fuente de donde copiar datos
RET_VAL OUTPUT INT Informacin de error
DSTBLK OUTPUT ANY Destino donde copiar los datos
Funciones del Sistema para Transferencia de Datos

You might also like