Sie sind auf Seite 1von 841

AUTMATAS

PROGRAMABLES
INDUSTRIALES

SYSMAC CS1

MANUAL DE PROGRAMACIN

TABLA DE CONTENIDOS

SECCIN 1
Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1
1-2

Instrucciones generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comprobaciones de ejecucin de instruccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIN 2
Sumario de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . .
2-1
2-2
2-3
2-4

Clasificacin de instrucciones por funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Funciones de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lista alfabtica de instrucciones por mnemnico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lista de instrucciones por cdigo de funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIN 3
Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-1
3-2
3-3
3-4
3-5
3-6
3-7
3-8
3-9
3-10
3-11
3-12
3-13
3-14
3-15
3-16
3-17
3-18
3-19
3-20
3-21
3-22
3-23
3-24
3-25
3-26
3-27
3-28
3-29
3-30
3-31
3-32

Descripciones de notacin y disposicin de instrucciones . . . . . . . . . . . . . . . . . . . . . . . .


Actualizacin de instrucciones para las CPU de la versin 1 de la serie CS1 . . . . . . . . .
Instrucciones de entrada de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de salida de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de transferencia de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones incrementales/decrementales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones matemticas especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones matemticas de coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de procesamiento de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de unidades de E/S bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de memoria de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de visualizacin: VISUALIZAR MENSAJE: MSG(046) . . . . . . . . . . . . . .
Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de diagnstico de fallos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de programacin de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de procesamiento de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de control de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

SECCIN 4

Tiempos Ejecucin instruccin y nmero de pasos

1
2
12

15
16
23
85
98

109
115
119
120
144
157
174
210
233
259
306
322
375
417
434
449
491
531
567
580
602
620
632
657
680
697
699
714
718
734
740
774
806

813
i

SECCIN 1
Introduccin
Esta seccin proporciona informacin sobre las instrucciones generales y los errores que pueden tener lugar durante la ejecucin de las instrucciones.
1-1

1-2

Instrucciones generales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1-1 Capacidad de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1-2 Instrucciones de diferencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1-3 Variaciones de instruccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1-4 Ubicacin de instruccin y condiciones de ejecucin . . . . . . . . . . . . . . . . . . . . . .
1-1-5 Introduccin de datos en operandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-1-6 Formatos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comprobaciones de ejecucin de instruccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-2-1 Errores durante la ejecucin de la instruccin . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1-2-2 Errores fatales (errores de programa) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2
2
2
3
4
4
11
12
12
12

Instrucciones generales

1-1

Seccin

1-1

Instrucciones generales

1-1-1 Capacidad de programa


La capacidad de programa indica el rea de programa del usuario en la CPU y
se expresa como el nmero de pasos del programa. El nmero de pasos necesarios en el rea de programa del usuario para cada una de las instrucciones de
la serie CS1 vara de 1 a 7 pasos, dependiendo de la instruccin y de los operandos utilizados con l.
La siguiente tabla muestra el nmero mximo de pasos que se pueden programar en cada CPU de la serie CS1.
Modelo

Capacidad de programa

Puntos de E/S
5.120

CS1H-CPU67-EV1

250K pasos

CS1H-CPU66-EV1

120K pasos

CS1H-CPU65-EV1

60K pasos

CS1H-CPU64-EV1

30K pasos

CS1H-CPU63-EV1

20K pasos

CS1G-CPU45-EV1

60K pasos

CS1G-CPU44-EV1

30K pasos

1,280

CS1G-CPU43-EV1

20K pasos

960

CS1G-CPU42-EV1

10K pasos

Nota La capacidad de programa para los PLC de la serie CS1 se mide en pasos,
mientras que la capacidad de los PLC OMRON anteriores, como los de las series C y CV, se miden en canales. En resumen, 1 paso equivale a 1 canal. La
cantidad de memoria necesaria para cada instruccin es diferente para algunas
de las instrucciones de la serie CS1; aparecern errores si la capacidad de programa del usuario para otro PLC se convierte para un PLC de la serie CS1, y
asume que 1 canal equivale a 1 paso. Consulte la informacin que aparece al
final de la Seccin4Tiempos de ejecucin de instruccin y pasos para obtener
ms informacin sobre la conversin de capacidades de programa de los PLC
OMRON anteriores.
El nmero de pasos de un programa no es igual al nmero de instrucciones. Por
ejemplo, LD y OUT necesitan 1 paso, pero MOV(021) requiere 3 pasos. Existen
otras instrucciones que requieren hasta 7 pasos cada una. El nmero de pasos
necesarios para una instruccin aumenta en uno por cada operando de doble
longitud utilizado en l. Por ejemplo, MOVL(498) normalmente requiere 3 pasos, pero sern necesarios 4 pasos si se especifica una constante para el operando del canal fuente, S. Consulte la Seccin4 Tiempos de ejecucin de instruccin y pasos para ver el nmero de pasos necesarios para cada instruccin.

1-1-2 Instrucciones de diferencial


La mayora de las instrucciones de los PLC de la serie CS1 disponen tanto de
variaciones no diferenciadas como de variaciones de diferencial ascendente, y
algunas disponen tambin de una variacin de diferencial descendente.
Una instruccin no diferenciada se ejecuta cada vez que se escanea.
Una instruccin de diferencial ascendente se ejecuta una sola vez cuando la
condicin de ejecucin pasa de OFF a ON.

Instrucciones generales

Seccin

1-1

Una instruccin de diferencial descendente se ejecuta una sola vez cuando la


condicin de ejecucin pasa de ON a OFF.
Variacin
No diferenciada

Diferencial
ascendente
(con prefijo @)

Tipo de instruccin
Instrucciones de
salida
(instrucciones que
requieren una
condicin de
ejecucin)

La instruccin se ejecuta
en cada ciclo si la
condicin de ejecucin
es verdadera (ON).

Instrucciones de
entrada
(instrucciones
utilizadas como
condiciones de
ejecucin)

El procesamiento de bits
(como lectura,
comparacin o prueba)
se ejecuta en cada ciclo.
La condicin de
ejecucin es verdadera
si el resultado es ON.

Instrucciones de
salida

La instruccin se ejecuta
slo una vez cuando la
condicin de ejecucin
pasa de OFF a ON.

Instrucciones de
entrada
(instrucciones
utilizadas como
condiciones de
ejecucin)

Diferencial
descendente
(con prefijo %)

Operacin

Instrucciones de
salida

Instrucciones de
entrada
(instrucciones
utilizadas como
condiciones de
ejecucin)

El procesamiento de bits
(como lectura,
comparacin o prueba)
se ejecuta en cada ciclo.
La condicin de
ejecucin es verdadera
durante un ciclo si el
resultado pasa de OFF a
ON.
La instruccin se ejecuta
slo una vez cuando la
condicin de ejecucin
pasa de ON a OFF.
El procesamiento de bits
(como lectura,
comparacin o prueba)
se ejecuta en cada ciclo.
La condicin de
ejecucin es verdadera
durante un ciclo si el
resultado pasa de ON a
OFF.

Formato
Instruccin de salida ejecutada en cada ciclo

Ejemplo
MOV

Instruccin de entrada
ejecutada en cada ciclo

Instruccin ejecutada
una vez para diferencial ascendente

@MOV
MOV(021) ejecutada una
vez para cada transicin
de OFF a ON en
CIO 000102.

Instruccin de entrada de
diferencial ascendente
Condicin de ejecucin ON
creada slo para un ciclo para
cada transicin de OFF a ON
en CIO 000103.

%Instruccin ejecutada una vez para


diferencial descendente
Instruccin de entrada de
diferencial descendente

0001
02

%SET

SET ejecutada una vez


para cada transicin de
ON a OFF en CIO 000102.
0001
03

Condicin de ejecucin ON creada slo para un ciclo para cada


transicin de ON a OFF en
CIO 000103.

Nota La opcin de diferencial descendente (%) slo est disponible para las instrucciones LD, AND, OR, y RSET. Para crear variaciones de diferencial descendente de otras instrucciones, controle la ejecucin de la instruccin con bits de trabajo controlados con DIFD(014) o DOWN(522).

1-1-3 Variaciones de instruccin


Los prefijos de variacin (@, %, y !) se pueden aadir a una instruccin para
crear una instruccin de diferencial o realizar un refresco inmediato.

Instrucciones generales

Seccin
Variacin
Diferencia-cin (cambio
(
d estado)
de
t d )

Prefij
o

1-1

Operacin

Diferencial
ascendente

Crea una instruccin de diferencial


ascendente.

Diferencial
descendente

Crea una instruccin de diferencial


descendente.

Los datos del operando de la instruccin


del rea de E/S o del rea de unidad de
E/S se refrescarn al ejecutar la
instruccin.

Refresco inmediato

! @ MOV
Mnemnico de instruccin
Variacin de diferencial ascendente
Variacin de refresco inmediato

1-1-4 Ubicacin de instruccin y condiciones de ejecucin


La tabla siguiente muestra las ubicaciones en las que se pueden programar las
instrucciones. La tabla muestra cundo una instruccin requiere una condicin
de ejecucin y cundo no. Consulte la Seccin 2Resumen de instrucciones si
desea obtener ms detalles sobre instrucciones especficas.
Tipo de
instruccin
Entra
da

Salida

Ubicacin

Condicin
de
ejecucin

Formato

Ejemplos

Instruccio-nes que
inician
condiciones
lgicas

En el bus izquierdo
o al comienzo de un
bloque de
instrucciones

Opcional

LD, LD TST, e instrucciones


de comparacin, como LD >

Instruccio-nes de
conexin

Entre una
instruccin de inicio
y una de salida

Obligatorio

En el bus derecho

Obligatorio

AND, OR, AND TST,


instrucciones de
comparacin, como AND >,
UP, DOWN, NOT
La mayora de las
instrucciones (como OUT y
MOV)

Opcional

Instrucciones como END,


JME, FOR, y ILC

Adems de estas instrucciones, los PLC de la serie CS1 estn equipados con
instrucciones de programacin de bloques. Consulte la descripcin de las instrucciones de programacin de bloques si desea obtener ms detalles.
Nota Si una condicin de ejecucin no precede a una instruccin que requiera una,
aparecer un error de programa cuando se compruebe el programa desde un
dispositivo perifrico.

1-1-5 Introduccin de datos en operandos


Los operandos son parmetros que se seleccionan previamente con las direcciones de memoria de E/S, o constantes que se utilizan al ejecutar la instruccin. Existen principalmente tres tipos de operandos: operandos fuente, operandos destino y nmeros.
MOV
#0000
D00000

JMP

S (fuente)
D (Destino)

&3

N (nmero)

Instrucciones generales

Seccin
Operando
Fuente

Cdigo

1-1

Contenidos

Direccin con los


datos o
simplemente
los
p
d
datos

Operan-- Datos fuente distintos a


do
los datos de control
fuente

Datos
de
control

Destino

Direccin donde se
almacenarn los
datos

---

Nmero

Contiene un
nmero, como un
nmero de salto o
un nmero de
subrutina.

---

Datos de control con uno


o varios bits que controlan
la ejecucin de instruccin

Nota Tambin se puede hacer referencia a los operandos de instruccin por su posicin en la instruccin (primer operando, segundo, ...). Los cdigos utilizados para el operando varan segn la funcin especfica del operando.
MOV
#0000
D00000

Primer operando
Segundo operando

Especificacin de direcciones de bit


Descripcin

Ejemplo

Para especificar una direccin de bit, especifique 0001 02


la direccin del canal y la del bit directamente.
jjjj jj

Ejemplo de instruccin
0001
02

Bit 02
Canal CIO 0001

Nmero de bit
Direccin de canal

Nota

La direccin de canal + el formato de nmero de bit no se utiliza para indicadores de finalizacin de temporizador/contador o indicadores de tarea.

Especificacin de direcciones de canal


Descripcin

Ejemplo

Para especificar una direccin de canal,


especifquela directamente.

0003

jjjj

D00200
Direccin de canal

Ejemplo de instruccin
MOV 0003 D00200

Canal CIO 0003


Canal D00200

Instrucciones generales

Seccin

1-1

Especificacin de direcciones indirectas DM/EM en modo binario


Descripcin

Ejemplo

Cuando se antepone el prefijo @ a una direccin --de DM o EM, el contenido de dicho canal
especifica otro canal que se utiliza como
operando. El contenido puede ser de 0000 a
7FFF (0 a 32.767), correspondiente a la
direccin del canal deseado de las reas DM o
EM.
@Djjjjj
Contenido

Ejemplo de instruccin
---

00000 a 32767
(0000 a 7FFF)

Cuando el contenido de @Djjjjj est


entre 0000 y 7FFF (00000 a 32.767), se
especifica el canal correspondiente entre
D00000 y D32767.

@D00300
0 1 0 0

MOV #0001
@D00300

Decimal: 256
Especifica D00256.
Aada el prefijo @.

Cuando el contenido de @Djjjjj est


entre 8000 y FFFF (32.768 a 65.535), se
especifica el canal correspondiente entre
E0_00000 y E0_32767 en el banco 0 de EM.

@D00300

--8 0 0 1

Decimal: 32,769
Especifica E0_00001.

Cuando el contenido de @Enj_jjjjj est


entre 0000 y 7FFF (00000 a 32.767), se
especifica el canal correspondiente entre
Enj_00000 y Enj_32767.

@E1_00200
0 1 0 1

MOV #0001
@E1_00200

Decimal: 257
Especifica E1_00257.

Cuando el contenido de @Enj_jjjjj est


entre 8000 y FFFF (32.767 a 65.535), se
especifica el canal correspondiente entre
Ej_00000 y Ej_32767 (en el siguiente banco
de EM).

@E1_00200
8 0 0 2
Decimal: 32770
Especifica E2_00002.

Nota Si selecciona el modo binario en la configuracin del PLC, las direcciones de


banco del rea DM y del EM actual (banco 0 a C) sern tratadas como direcciones de memoria consecutivas. Se especificar un canal en el banco 0 de EM, si
un canal DM direccionado indirectamente contiene un valor mayor que 32.767.
Por ejemplo, se especificar E00000 en el banco 0 si el canal DM de direccionamiento indirecto contiene un valor hexadecimal de 8000 (32.768).
Se especificar un canal en el siguiente banco de EM, si un canal EM direccionado indirectamente contiene un valor mayor que 32.767. Por ejemplo, se especificar E3_00000 si el canal EM de direccionamiento indirecto del banco 2
contiene un valor hexadecimal de 8000 (32.768).

Instrucciones generales

Seccin

1-1

Especificacin de direcciones indirectas DM/EM en modo BCD


Mtodo

Descripcin

Direccionamiento
de DM/EM
indirecto
(modo BCD)

Cuando se antepone el prefijo * a una


direccin de DM o EM, el contenido de
dicho canal especifica otro canal que se
utiliza como operando. El contenido
puede ser de 0000 a 7FFF,
correspondiente a la direccin del canal
deseado de las reas DM o EM.

Ejemplo
*D00200

Ejemplo de instruccin
MOV #0001 *D00200

0 1 0 0
Especifica D00100.
Aada el prefijo *.

*Djjjjj
Contenido

0000 a 9999
(BCD)

Instrucciones generales

Seccin

1-1

Registros de ndice de direccionamiento


Mtodo
Registros de
ndice de
direcciona-miento directo

Direcciona-miento indirecto
utilizando
registros de
ndice

Descripcin

Ejemplo

MOVR(560) mueve la direccin de memoria de E/S


interna de un canal o bit a un registro de ndice (IR0
a IR15).

IR0
IR2

(MOVRW(561) mueve la direccin de memoria de


E/S interna de un PV de temporizador o contador a
un registro de ndice).

Operacin
bsica (no
offset)

Offset
constante

Offset de DR

Aumento
automtico

,IR0

El contenido binario con signo del


registro de datos se aade a la
direccin de memoria de E/S
contenida en IRj y la direccin
resultante se utiliza como
operando.

DR0 ,IR0

Una vez leda la direccin de


memoria de E/S en IRj, el
contenido del registro de ndices
aumentar en uno o dos.

,IR0 + +

,IR1

+5 ,IR0
+31 ,IR1

DR0 ,IR1

,IR1 +

,IRj+
,IRj++

El contenido del IRj disminuye


en uno o dos, y la direccin de la
memoria de E/S del registro se
utiliza como operando.
Disminucin en 1:,--IRj
Disminucin en 2:,-- --IRj
Nota Los registros de ndice disminuirn cuando la instruccin se ejecute, incluso si se
produce un error y el indicador de error se pone en ON.

LD ,IR0
Carga el estado del bit de la
direccin de memoria de E/S
contenida en IR0.
MOV #0001, IR1
Mueve #0001 al canal de la
direccin de memoria de E/S
contenida en IR1.
LD +5 ,IR0
Suma 5 a la direccin de memoria
de E/S contenida en IR0 y carga
el estado del bit en dicha
direccin.
MOV #0001 +31 ,IR1
Suma 31 a la direccin de
memoria de E/S contenida en IR1
y mueve #0001 al canal de dicha
direccin.
LD +5 ,IR0
Suma el contenido de DR0 a la
direccin de memoria de E/S
contenida en IR0 y carga el
estado del bit en dicha direccin.
MOV #0001 +31 ,IR1
Suma el contenido de DR0 a la
direccin de memoria de E/S
contenida en IR1 y mueve #0001
al canal de dicha direccin.
LD ,IR0 + +
Carga el estado del bit de la
direccin de memoria de E/S
contenida en IR0 y aumenta el
registro en dos.
MOV #0001, IR1
Mueve #0001 al canal de la
direccin de memoria de E/S
contenida en IR1 y aumenta el
registro en uno.

Nota Los registros de ndice aumentarn cuando la instruccin se ejecute, incluso si se


produce un error y el indicador de error se pone en ON.
Disminucin
automtica

MOVR 0010 IR0


Almacena la direccin de
memoria de E/S interna de
CIO 0010 en IR0.
MOVR 000102 IR2
Almacena la direccin de
memoria de E/S interna de
CIO 00102 en IR2.

El canal o bit de la direccin de


memoria de E/S contenida en
IRj se utiliza como operando.
Introduzca una coma delante del
registro de ndice para indicar
direccionamiento indirecto.
(La designacin de bit/canal se
puede determinar por la
instruccin o el operando).
El valor de offset (--2.048 a
+2.047) se aade a la direccin
de memoria de E/S contenida en
IRj y la direccin resultante se
utiliza como operando.
(El offset se convierte en binario
cuando se ejecuta la instruccin).

Aumento en 1:
Aumento en 2:

Ejemplo de instruccin

, -- -- IR0
, -- IR1

LD , -- -- IR0
Disminuye el contenido de IR0 en
dos y carga el estado del bit de
dicha direccin de memoria de
E/S.
MOV #0001 , -- IR1
Disminuye el contenido de IR0 en
uno y mueve #0001 al canal de
dicha direccin de memoria de
E/S.

Nota Asegrese de que el contenido de los registros de ndice indican direcciones de


memoria de E/S vlidas.

Instrucciones generales

Seccin

1-1

Especificacin de constantes
Mtodo
Constante
((datos de
16 bits)
bit )

Constante
((datos de
32 bits)
bit )

Operandos
aplicables

Formato
de datos

Cdigo

Rango

Ejemplo

Todos los datos


binarios y los
d t binarios
datos
bi i
comprendidos
en un rango

Binario sin
signo

#0000 a #FFFF

---

Decimal
con signo

+
--

--2.147.483.648 a
+2.147.483.647

---

Decimal sin
signo

&

&0 a &66.535

---

Todos los datos


BCD y los datos
BCD
comprendidos
en un rango

BCD

#0000 a #9999

---

Todos los datos


binarios y los
d t binarios
datos
bi i
comprendidos
en un rango

Binario sin
signo

#0000 0000 a
#FFFF FFFF

---

Decimal
con signo

+
--

--2.147.483.648 a
+2.147.483.647

---

Decimal sin
signo

&

&0 a &4.294.967.295

---

Todos los datos


BCD y los datos
BCD
comprendidos
en un rango

BCD

#0000 0000 a
#9999 9999

---

Especificacin de cadenas de texto


Mtodo

Descripcin

Cadenas de
texto

El texto se almacena en ASCII


(1 byte/carcter excluyendo los
caracteres especiales)
comenzando por el byte
inferior del canal ms bajo del
rango.
Si existe un nmero impar de
caracteres, se almacenar 00
(NUL) en el byte superior del
ltimo canal del rango.
Si existe un nmero par de
caracteres, se almacenar
0000 (dos NUL) en el canal
siguiente al ltimo del rango.

Cdi
go

Ejemplos
ABCDE
A
C
E

B
D
NUL

41
43
45

42
44
00

ABCD
A
C
NUL

B
D
NUL

41
43
00

42
44
00

Ejemplo de instruccin
MOV$ D00100 D00200
D00100
D00101
D00102

41
43
45

42
44
00

D00200
D00201
D00202

41
43
45

42
44
00

Instrucciones generales

Seccin

1-1

El diagrama siguiente muestra los caracteres que se pueden expresar en ASCII.


Bit de la izquierda

Bit de la derecha

SP

10

Instrucciones generales

Seccin

1-1

1-1-6 Formatos de datos


La tabla siguiente muestra los formatos de datos que se pueden utilizar en los
PLC de la serie CS1.
Nombre
Datos
binarios sin
signo

Formato
15 14 13 12
Binario
Decimal

10

215 214 213 212 211 210 29 28

23 22 21 20

23 22 21 20

15 14 13 12 11

10

27 26

32768 16384 8192 4096 2048 1024 512 256 128

Hexadecimal

Datos
binarios con
signo

11

Rango
decimal

64

15 14 13 12 11
BCD
Decimal

Decimal de
coma flotante

25 24
32

25 24
32

23 22 21 20

23 22 21 20

0a9

0a9

0a9

0a9

Exponente

21

20 19 18 17

Binario

8000 a 7FFF

0 a 9,999

0000 a 9999

---

---

21 20

23 22 21 20

22

--32.768 a
+32.767

23 22 21 20

16

23 22 21 20

23

0000 a FFFF

23 22 21 20

0a
65,535

23 22 21 20

16

23 22 21 20

31 30 29

Signo de
mantisa

10

23 22 21 20

Bina215 214 213 212 211 210 29 28 27 26


rio
Decimal --32768 16384 8192 4096 2048 1024 512 256 128 64
Hexa23 22 21 20 23 22 21 20 23 22
decimal
Bit con signo
0: Positivo
1: Negativo

Datos BCD

Rango
hexadecimal

Mantisa

Valor = (--1)Signo x 1.[Mantisa] x 2Exponente


Signo (bit 31)

Nota

1: negativo 0: positivo

Mantisa

La mantisa incluye 23 bits desde el bit 00 al bit 22 e


indica esta porcin por debajo de la coma decimal en
1.jjj..... en binario.

Exponente

El exponente incluye 8 bits desde el bit 23 al bit 30


e indica n ms 127 en 2n en binario.

Este formato cumple los estndares IEEE754 para datos de coma flotante de
precisin simple y slo se utiliza con instrucciones que convierten o calculan
datos de coma flotante. Se puede utilizar para seleccionar o supervisar desde la Pantalla de edicin y supervisin de la memoria de E/S del CX Programmer (no soportado por las consolas de programacin). No es necesario que
los usuarios conozcan este formato, aunque deben saber que el formato
ocupa dos canales.

Nmeros binarios con


signo

Los nmeros binarios con signo negativo se expresan como el complemento a 2


del valor absoluto hexadecimal. Para un valor decimal de --12.345, el valor absoluto es equivalente a 3039 hexadecimal. El complemento a 2 es 10000 -- 3039
(ambos hexadecimales) o CFC7.
Para convertir un nmero binario con signo negativo (CFC7) en decimal, tome
el complemento a 2 de dicho nmero (10000 -- CFC7 = 3039), convirtalo en
decimal (3039 hexadecimal = 12.345 decimal), y aada un signo menos
(--12.345).

11

Comprobaciones de ejecucin de instruccin

1-2

Seccin

1-2

Comprobaciones de ejecucin de instruccin

1-2-1 Errores durante la ejecucin de la instruccin


Los operandos de una instruccin y su ubicacin se comprueban al introducir
una instruccin desde un dispositivo perifrico, o al ejecutar una comprobacin
del programa desde un dispositivo perifrico (que no sea una consola de programacin), pero no se trata de comprobaciones finales. Pueden producirse los
cuatro errores siguientes al ejecutar una instruccin.
Error de procesamiento de la instruccin (indicador ER en ON)
Normalmente, los errores de procesamiento de la instruccin son errores no fatales, pero se puede configurar el PLC para que trate estos errores como fatales. Si ha realizado esta configuracin, el indicador de error de procesamiento
de la instruccin (A29508) se pondr en ON y se detendr la ejecucin del programa cuando se produzca un error de este tipo.
Error de acceso (indicador AER en ON)
Normalmente, los errores de acceso son errores no fatales, pero se puede configurar el PLC para que trate estos errores como fatales. Si ha realizado esta
configuracin, el indicador de error de acceso no vlido (A29510) y el indicador
de error BCD de DM/EM indirecto (A29509) se pondrn en ON y se detendr la
ejecucin del programa cuando se produzca un error de acceso.
Error de instruccin no vlida
El indicador de error de instruccin no vlida (A29514) se pondr en ON y se
detendr la ejecucin del programa cuando aparezca dicho error.
Error de overflow de UM (memoria de programa del usuario)
El indicador de error de overflow de UM (A29515) se pondr en ON y la ejecucin del programa se detendr cuando se produzca este error.

1-2-2 Errores fatales (errores de programa)


La ejecucin del programa se detendr cuando se produzca uno de los siguientes errores de programa. Cuando se produzca un error de programa, el nmero
de tarea de la tarea que se estaba ejecutando cuando se produjo la interrupcin
se escribir en A294 y la direccin del programa se escribir en A298 y A299.
Utilice el contenido de estos canales para ubicar el error de programa y corregirlo de la forma necesaria.
Direccin
A294

Descripcin
El nmero de la tarea actual se escribir en este canal cuando se
detenga la ejecucin del programa debido a un error del mismo.
Las tareas cclicas tienen los nmeros 0000 a 001F (tareas
cclicas 0 a 31). Las tareas de interrupcin tienen los nmeros
8000 a 80FF (tareas de interrupcin 0 a 255).

A298 y A299

La direccin del programa actual se escribe en estos canales


cuando la ejecucin del programa se detiene debido a un error
del mismo.
A299 contiene los dgitos de la izquierda de la direccin del
programa y A298 contiene los de la derecha.

Todos los errores por los que el indicador de error o el indicador de acceso se
pongan en ON se tratan como errores de programa. La siguiente tabla muestra
los errores de programa. El PLC se puede configurar para que detenga la ejecucin del programa cuando se produzca uno de estos errores.
Tipo de error

Descripcin

Indicadores relacionados

No hay instruccin END

No hay instruccin END (001) en el programa.

Indicador de error no END


(A29511)

Error de tarea

Existen tres posibles causas de un error de tarea:

Indicador de error de tarea


(A29512)

1) No existe una tarea cclica ejecutable.


2) No existe un programa asignado a la tarea.
3) Se produjo una interrupcin, pero la tarea de interrupcin
correspondiente no existe.

12

Comprobaciones de ejecucin de instruccin


Tipo de error
Error de procesamiento
de instruccin*

Descripcin
La CPU intent ejecutar una instruccin, pero los datos
proporcionados por el operando de la instruccin eran
incorrectos.
*Si se ha configurado el PLC para que trate los errores de
instruccin como errores fatales (errores de programa), el
indicador de error de procesamiento de la instruccin (A29508)
se pondr en ON y se detendr la ejecucin del programa.

Error de acceso*

Existen cinco posibles causas de un error de acceso:


1) Lectura/escritura en el rea de parmetros.
2) Escritura en memoria que no est instalada.
3) Lectura/escritura en el banco de EM, que es memoria de
archivo de EM.
4) Escritura en un rea de slo lectura.
5) El contenido de un canal de DM/EM no era BCD, aunque el
PLC est configurado para direccionamiento indirecto BCD.

Seccin

1-2

Indicadores relacionados
Indicador de error (ER),
Indicador de error de
procesamiento de la
instruccin (A29508)

Indicador de error de
acceso (AER),
Indicador de error de
acceso no vlido (A29510)

*Si se ha configurado el PLC para que trate los errores de


instruccin como errores fatales (errores de programa), el
indicador de error de acceso no vlido (A29510) se pondr en
ON y se detendr la ejecucin del programa.
Error BCD de DM/EM
indirecto*

El contenido de un canal de DM/EM no era BCD aunque el


PLC est configurado para direccionamiento indirecto de BCD.
*Si se ha configurado el PLC para que trate los errores de
instruccin como errores fatales (errores de programa), el
indicador de error BCD de DM/EM (A29509) se pondr en ON
y se detendr la ejecucin del programa.

Indicador de error de
acceso (AER),
Indicador de error BCD de
DM/EM (A29509)

Error overflow de
diferenciacin (cambio
de estado)

Las instrucciones de diferencial se introdujeron y eliminaron


repetidamente durante la edicin online (ms de 31.072
veces).

Indicador de error overflow


de diferenciacin (cambio
de estado) (A29513)

Error overflow de UM

Se ha sobrepasado la ltima direccin de UM (memoria de


programa del usuario).

Indicador de error overflow


de UM (A29515)

Error de instruccin no
vlida

El programa contiene una instruccin que no se puede


ejecutar.

Indicador de error de
instruccin no vlida
(A29514)

13

SECCIN 2
Resumen de instrucciones
Esta seccin contiene un resumen de las instrucciones utilizadas con los PLC de la serie CS1.
2-1
2-2

2-3
2-4

Clasificacin de instrucciones por funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Funciones de instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-1 Instrucciones de entrada de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-2 Instrucciones de salida de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-3-2 Instrucciones de control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-4 Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-5 Instrucciones de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-6 Instrucciones de transferencia de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-7 Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-8 Instrucciones de aumento/disminucin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-9 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-10 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-11 Instrucciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-12 Instrucciones matemticas especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-13 Instrucciones matemticas de coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-14 Instrucciones de procesamiento de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-15 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-16 Instrucciones de subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-17 Instrucciones de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-18 Instrucciones de pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-19 Instrucciones de unidades de E/S bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-20 Instrucciones de comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-21 Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-22 Instrucciones de memoria de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-23 Instrucciones de visualizacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-24 Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-25 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-26 Instrucciones de diagnstico de fallos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-27 Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-28 Instrucciones de programacin de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2-2-29 Instrucciones de procesamiento de cadenas de texto. . . . . . . . . . . . . . . . . . . . . . .
2-2-30 Instrucciones de control de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lista alfabtica de instrucciones por mnemnico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Lista de instrucciones por cdigo de funcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16
23
23
25
27
30
33
35
38
41
42
48
53
55
56
59
62
65
66
67
68
69
70
71
72
72
73
74
75
75
80
84
85
98

15

Clasificacin de instrucciones por funcin

2-1

Seccin

2-1

Clasificacin de instrucciones por funcin


La siguiente tabla muestra la lista de instrucciones de la serie CS1 por funcin.
(Las instrucciones aparecen clasificadas por el orden de su funcin en la Seccin 3, Instrucciones).

Clasificacin
Instrucciones
b i
bsicas

Instrucciones
de entrada de
secuencia
i

Instrucciones
de salida de
secuencia

Instrucciones
de control de
secuencia
i

Instrucciones
de
temporizador
y contador

16

Subclase
Entrada

Mnemnico

Instruccin

Mnemnico

Instruccin

Mnemnico

Instruccin

LD

LOAD

LD NOT

LOAD NOT

AND

AND

AND NOT

AND NOT

OR

OR

OR NOT

OR NOT

AND LD

AND LOAD

OR LD

OR LOAD

Salida

OUT

SALIDA

OUT NOT

SALIDA
NEGADA

---

NOT

NOT

UP

CONDICIN
ON

DOWN

CONDICIN
OFF

Prueba de
bits

LD TST

LD TEST DE
BITS

LD TSTN

LD TEST DE
BITS NOT

AND TST

AND TEST
DE BITS NOT

AND TSTN

AND TEST
DE BITS NOT

OR TST

OR TEST DE
BITS

OR TSTN

OR TEST DE
BITS NOT

---

BIESTABLE

BIESTABLE

DIFU

DIFERENCIAL ASCENDENTE

DIFD

DIFERENCIAL DESCENDENTE

Seleccionar/r
establecer

SET

SET

RSET

RESET

SETA

SET
MLTIPLE

RSTA

RESET
MLTIPLE

---

---

---

---

---

END

END

NOP

NO
OPERACIN

---

---

Enclavamient
o

IL

INTERLOCK

ILC

INTERLOCK
CLEAR

---

---

Salto

JMP

SALTO

JME

FIN DE
SALTO

CJP

SALTO CONDICIONAL

CJPN

SALTO CONDICIONAL

JMP0

SALTO
MLTIPLE

JME0

FIN DE
SALTO
MLTIPLE

Repetir

FOR

BUCLES
FOR-NEXT

BREAK

ROMPR
BUCLE

NEXT

BUCLES
FOR-NEXT

Temporizador
(con nmeros
de
temporizador
p
)

TIM

TEMPORIZA-DOR

TIMH

TEMPORIZA-DOR DE ALTA
VELOCIDAD

TMHH

TEMPORIZA-DOR DE MUY
ALTA
VELOCIDAD

TTIM

TEMPORIZADOR TOTALIZADOR

---

---

---

---

Temporizador
(sin nmeros
de
temporizador
)

TIML

TEMPORIZAD
OR LARGO

MTIM

TEMPORIZADOR MULTISALIDA

---

---

Contador
(con nmeros
de contador)

CNT

CONTADOR

CNTR

TEMPORIZA-DOR
REVERSIBLE

CNR

RESET
TEMPORIZA-DR/CONTA-DOR

Clasificacin de instrucciones por funcin


Clasificacin

Subclase

Mnemnico

Comparacin
de smbolos

LD, AND, OR
+
=, <>, <, <=, >,
>=

Comparacio-nes smbolo
(sin signo)

LD, AND, OR
+
=, <>, <, <=, >,
>= + L

Comparacio-nes smbolo
(doble sin
signo)

LD, AND, OR
+
=, <>, <, <=, >,
>= +S

Comparacio-nes smbolo
(con signo)

LD, AND, OR
+
=, <>, <, <=, >,
>= + SL

Comparacio-nes smbolo
(doble con
signo)

---

---

---

---

CMP

COMPARAR

CMPL

COMPARAR
DOBLE

CPS

COMPARA-CIN
BINARIA CON
SIGNO

CPSL

DOBLE
COMPARACI
N BINARIA
CON SIGNO

---

---

---

---

Comparar
tabla

BCMP

COMPARAR
BLOQUE SIN
SIGNO

TCMP

COMPARAR
TABLA

MCMP

COMPARAR
MLTIPLE

Un canal/dos
canales

MOV

MOVER

MVN

MOVER
NEGADO

MOVL

MOVER
DOBLE

MVNL

MOVER
DOBLE
NEGADO

---

---

---

---

Bit/dgito

MOVB

MOVER BIT

MOVD

MOVER
DGITOO

---

---

Registro de
ndice

MOVR

MOVER A
REGISTRO

MOVRW

MOVER PV
DE
TEMP/CONT
A REGISTRO

---

---

Intercambio

XCHG

INTERCAM-BIO DE
DATOS

XCGL

INTERCAM-BIO DE
DATOS
DOBLE

---

---

Transferencia
de
bloques/bits

XFER

TRASFERIR
BLOQUES

BSET

RELLENAR
BLOQUE

XFRB

TRANSFERIR
BITS
MLTIPLES

Distribuir/rec
oger

COLL

RECOGIDA
DE DATOS

DIST

DISTRIBUIR
DATOS

---

---

Instrucciones
de
t
transferencia
f
i
de datos

Mnemnico

Instruccin

Mnemnico

2-1

Instrucciones
de
comparacin

Comparacin
de datos
(Indicadores
de condicin))

Instruccin

Seccin

Instruccin

17

Clasificacin de instrucciones por funcin


Clasificacin
Instrucciones
de
desplazamien
to de datos

Instrucciones
de
aumento/dis
/
minucin
i
i

Subclase
Desplazamie
nto de 1 bit

Instruccin

Mnemnico

Instruccin

Mnemnico

2-1

Instruccin

SFT

REGISTRO
DE
DESPLAZAMI
ENTO

SFTR

REGISTRO
DE
DESPLAZAMI
ENTO

ASLL

DOBLE
DESPLAZAMI
ENTO A
IZQUIERDA

ASL

DESPLAZAMI
ENTO
ARITMTICO
A IZQUIERDA

ASR

DESPLAZAMI
ENTO
ARITMTICO
A DERECHA

ASRL

DOBLE
DESPLAZAMI
ENTO A
DERECHA

0000 hex.
asncronos

ASFT

REGISTRO
DE DESPLAZAMIENTO

---

---

---

---

Desplazamie
nto de canal

WSFT

DESPLAZAR
UN CANAL

---

---

---

---

Rotacin de 1
bit

ROL

ROTAR A
IZQUIERDA

ROLL

ROTAR A
IZQUIERDA

RLNC

ROTAR A
IZQUIERDA
SIN
ACARREO

RLNL

ROTAR A
IZQUIERDA
SIN
ACARREO

ROR

ROTAR A
DERECHA

RORL

ROTAR A
DERECHA
DOBLE

RRNC

ROTAR A
DERECHA
SIN
ACARREO

RRNL

ROTAR A
DERECHA
DOBLE SIN
ACARREO

---

---

Desplazamie
nto de 1
dgito

SLD

DESPLAZAMI
ENTO DE UN
DGITO A
IZQUIERDA

SRD

DESPLAZAMI
ENTO DE UN
DGITO A
DERECHA

---

---

Desplazar
datos de n
bits

NSFL

DESPLAZAMI
ENTO DE UN
DATO N BITS
A IZQUIERDA

NSFR

DESPLAZAMI
ENTO DE UN
DATO N BITS
A DERECHA

---

---

Desplazar n
bits

NASL

DESPLAZAMI
ENTO DE N
BITS A
IZQUIERDA

NSLL

DESPLAZAMI
ENTO DE N
BITS A
IZQUIERDA

NASR

DESPLAZAMI
ENTO DE N
BITS A
DERECHA

NSRL

DESPLAZAMI
ENTO DE N
BITS A
DERECHA

---

---

---

---

++B

INCREMENT
O BCD

++BL

INCREMENT
O BCD
DOBLE

-- --B

DECREMENT
O BCD

-- --BL

DECREMENT
O BCD
DOBLE

---

---

---

---

++

INCREMENT
O BINARIO

++L

INCREMENT
O BINARIO
DOBLE

-- --

DECREMENT
O BINARIO

-- --L

DECREMENT
O BINARIO
DOBLE

---

---

---

---

BCD

BIN

18

Mnemnico

Seccin

Clasificacin de instrucciones por funcin


Clasificacin
Instrucciones
matemticas
de smbolos

Subclase
Sumar BIN

Mnemnico

Instruccin

Seccin
Mnemnico

Instruccin

Mnemnico

2-1

Instruccin

SUMA
BINARIA CON
SIGNO SIN
ACARREO

+L

SUMA
BINARIA
DOBLE CON
SIGNO SIN
ACARREO

+C

SUMA
BINARIA CON
SIGNO CON
ACARREO

+CL

SUMA
BINARIA
DOBLE CON
SIGNO CON
ACARREO

---

---

---

---

+B

SUMA BCD
SIN
ACARREO

+BL

SUMA BCD
DOBLE SIN
ACARREO

+BC

SUMA BCD
CON
ACARREO

+BCL

SUMA BCD
DOBLE CON
ACARREO

---

---

---

---

--

RESTA
BINARIA CON
SIGNO SIN
ACARREO

--L

RESTA
BINARIA
DOBLE CON
SIGNO SIN
ACARREO

--C

RESTA
BINARIA CON
SIGNO CON
ACARREO

--CL

RESTA
BINARIA
DOBLE CON
SIGNO CON
ACARREO

---

---

---

---

MULTIPLICAC
IN BINARIA
CON SIGNO

*L

DOBLE
MULTIPLICAC
IN BINARIA
CON SIGNO

*U

MULTIPLICAC
IN BINARIA
SIN SIGNO

*UL

DOBLE
MULTIPLICAC
IN BINARIA
SIN SIGNO

---

---

---

---

/U

DIVISIN
BINARIA SIN
SIGNO

/UL

DOBLE
DIVISIN
BINARIA SIN
SIGNO

DIVISIN
BINARIA CON
SIGNO

/L

DOBLE
DIVISIN
BINARIA CON
SIGNO

---

---

---

---

--B

RESTA BCD
SIN
ACARREO

--BL

DOBLE
RESTA BCD
SIN
ACARREO

--BC

RESTA BCD
CON
ACARREO

--BCL

DOBLE
RESTA BCD
CON
ACARREO

---

---

---

---

Multiplicar
BCD

*B

MULTIPLICAC
IN BCD

*BL

DOBLE
MULTIPLICAC
IN BCD

---

---

Dividir BCD

/B

DIVISIN
BCD

/BL

DOBLE
DIVISIN
BCD

---

---

Sumar BCD

Restar BIN

Multiplicar
BIN

Dividir BIN

Restar BCD

19

Clasificacin de instrucciones por funcin


Clasificacin

Subclase

Instrucciones
de
conversin

Convertir
BCD/binario

Instrucciones
lgicas
g

Instrucciones
matemticas
especiales
p

Instrucciones
matemticas
de coma
fl t t
flotante

Instruccin

Mnemnico

Instruccin

Mnemnico

2-1

Instruccin

BIN

BCD A
BINARIO

BINL

BCD A
BIARIO
DOBLE

BCD

BINARIO A
BCD

BCDL

BINARIO A
BCD DOBLE

NEG

COMPLEMENTO A 2

NEGL

DOBLE COMPLEMENTO A
2

SIGN

16-BIT A
32-BIT
BINARIO
CON SIGNO

---

---

---

---

Decodificado
r/codificador

MLPX

DECODIFICA
DOR

DMPX

CODIFICADO
R

---

---

Convertir
ASCII/hex.

ASC

CONVERTIR
A ASCII

HEX

ASCII A HEX

---

---

Convertir
lnea/column
a

LINE

COLUMNA A
LNEA

COLM

LNEA A
COLUMNA

---

---

Convertir
BCD/binario
con signo
g

BINS

BCD CON
SIGNO A
BINARIO

BISL

DOBLE BCD
A BINARIO
CON SIGNO

BCDS

BINARIO A
BCD CON
SIGNO

BDSL

DOBLE
BINARIO A
BCD CON
SIGNO

---

---

---

---

Complement
o

COM

COMPLEMENTO

COML

DOBLE COMPLEMENTO

---

---

AND/OR
lgicos
g

ANDW

AND LGICA

ORW

OR LGICA

XORW

OR
EXCLUSIVA

XNRW

EXCLUSIVE
NOR

ANDL

DOBLE AND
LGICA

ORWL

DOBLE OR
LGICA

XORL

DOBLE OR
EXCLUSIVA

XNRL

DOBLE NOR
EXCLUSIVA

---

---

ROTB

RAIZ
CUADRADA
BINARIA

ROOT

RAIZ
CUADRADA
BCD

APR

PROCESOS
ARITMTICO
S

FDIV

DIVISIN EN
COMA
FLOTANTE

BCNT

CONTADOR
DE BITS

---

---

Convertir
coma
flotante/binari
/
a

FIX

COMA
FLOTANTE A
16 BITS

FIXL

COMA
FLOTANTE A
32 BITS

FLT

DE 16 BITS A
COMA
FLOTANTE

FLTL

DE 32 BITS A
COMA
FLOTANTE

---

---

---

---

Matemticas
bsicas de
coma flotante

+F

SUMA EN
COMA
FLOTANTE

--F

RESTA EN
COMA
FLOTANTE

/F

DIVISIN EN
COMA
FLOTANTE

*F

MULTIPLICAC
IN EN
COMA
FLOTANTE

---

---

---

---

RAD

GRADOS A
RADIANES

DEG

RADIANES A
GRADOS

SIN

SENO

COS

COSENO

TAN

TANGENTE

ASIN

ARCO SENO

ACOS

ARCO
COSENO

ATAN

ARCO
TANGENTE

---

---

SQRT

RAZ
CUADRADA

EXP

EXPONENTE

LOG

LOGARITMO

PWR

POTENCIA
EXPONENCIAL

---

---

---

---

---

Trigonomtri
cas de coma
fl t t
flotante

Matemticas
de coma
fl t t
flotante

20

Mnemnico

Seccin

Clasificacin de instrucciones por funcin


Clasificacin

Subclase

Instrucciones
de
procesamient
o de datos de
t bl
tabla

Procesamient
o de pila

Instrucciones
de control de
datos

Mnemnico

Instruccin

Seccin
Mnemnico

Instruccin

Mnemnico

2-1

Instruccin

SSET

FIJAR STACK

PUSH

MOVER AL
STACK

FIFO

PRIMERO EN
ENTRAR
PRIMERO EN
SALIR

LIFO

LTIMO EN
ENTRAR
PRIMERO EN
SALIR

---

---

---

---

Procesamient
o de 1
registro/vario
s canales

DIM

DIMENSIONA
R TABLA DE
REGISTROS

SETR

FIJAR
LOCALIZACI
N
REGISTRO

GETR

OBTENER
NMERO DE
REGISTRO

Procesamient
o de registro
g
a canall

SRCH

BUSCAR
DATO

MAX

ENCONTRAR
MXIMO

MIN

ENCONTRAR
MNIMO

SUMA

SUMA

FCS

CLCULO DE
FCS

---

---

Procesamient
o de bytes

SWAP

INTERCAMBI
AR BYTES

---

---

---

---

---

PID

CONTROL
PID

LMT

CONTROL DE
LMITE

BAND

CONTROL DE
BANDA
MUERTA

ZONE

CONTROL DE
ZONA
MUERTA

SCL

ESCALADO

SCL2

ESCALADO 2

SCL3

ESCALADO 3

AVG

VALOR
MEDIO

---

---

SBS

LLAMADA A
SUBRUTINA

SBN

INICIO DE
SUBRUTINA

RET

FIN DE
SUBRUTINA

MCRO

MACRO

---

---

---

---

MSKS

FIJAR
MSCARA
DE
INTERUPCI
N

MSKR

LEER
MSCARA
DE
INTERUPCI
N

CLI

BORRAR
INTERRUPCI
N

DI

INHIBIR
INTERRUPCI
ONES

EI

HABILITAR
INTERRUPCI
ONES

---

---

Instrucciones
de subrutinas

---

Instrucciones
de control de
interrupcin

---

Instrucciones
de pasos

---

STEP

DEFINIR
PASO

SNXT

INICIO DE
PASO

---

---

Instrucciones
de unidades
de E/S
bsicas

---

IORF

REFRESCO
DE E/S

SDEC

DECODIFICA
DOR DE 7
SEGMENTOS

IORD

LECTURA DE
E/S
INTELIGENTE
S

IOWR

ESCRITURA
DE E/S
INTELIGENTE
S

---

---

---

---

PMCR

MACRO DE
PROTOCOLO

TXD

TRANSMITIR

RXD

RECIBIR

STUP

CAMBIAR
SETUP DE
PUERTO
SERIE

---

---

---

---

Instrucciones
de comunicaciones
i
serie
i

---

Instrucciones
de red

---

SEND

ENVIAR A
RED

RECV

RECIBIR DE
RED

CMND

ENVIAR
COMANDO

Instrucciones
de
visualizacin

---

MSG

VISUALIZAR
MENSAJE

---

---

---

---

Instrucciones
de memoria
de archivos

---

FREAD

LEER
ARCHIVO DE
DATOS

FWRIT

ESCRIBIR
ARCHIVO DE
DATOS

---

---

Instrucciones
de relojj

---

CADD

SUMA DE
CALENDARIO

CSUB

RESTA DE
CALENDARIO

SEC

HORAS A
SEGUNDOS

HMS

SEGUNDOS
A HORAS

DATE

AJUSTE DEL
RELOJ

---

---

TRSM

MUESTREO
DE MEMORIA
DE
SEGUIMIENT
O

---

---

---

---

Instrucciones
de
depuracin

---

21

Clasificacin de instrucciones por funcin


Clasificacin

Subclase

Mnemnico

Instruccin

Seccin
Mnemnico

Instruccin

Mnemnico

2-1

Instruccin

Instrucciones
de
diagnstico
de fallos

---

FAL

ALARMA DE
FALLO

FALS

ALARMA DE
FALLO

FPD

DETECCIN
DE PUNTO
DE FALLO

Otras
instrucciones

---

STC

ACARREO A
ON

CLC

ACARREO A
OFF

EMBC

SELECCIO-NAR BANCO
DE EM

WDT

AMPLIAR
TIEMPO DE
CICLO
MXIMO

---

---

---

---

Definir rea
de programa
de bloques

BPRG

INICIO DE
PROGRAMA
DE BLOQUE

BEND

FIN DE
PROGRAMA
DE BLOQUE

---

---

Procesamient
o de
bifurcaciones
IF

IF
bit_address

BIFURCACIN DE
BLOQUE
CONDICIONAL

IF NOT
bit_address

BIFURCACIN DE
BLOQUE
CONDICIONAL (NOT)

ELSE

BIFURCACIN DE
BLOQUE
CONDICIONAL (ELSE)

IEND

FIN DE BIFURCACIN
DE BLOQUE
CONDICIONAL

---

---

---

---

WAIT

WAIT
bit_address

UN CICLO Y
ESPERA

WAIT NOT
bit_address

UN CICLO Y
ESPERA
NEGADO

input_condition WAIT

UN CICLO Y
ESPERA

EXIT

EXIT
bit_address

SALIDA
BLOQUE
CONDICIO-NAL

EXIT NOT
bit_address

Condicional
END NOT

input_condition EXIT

Condicional
END

Repetir

LOOP

BUCLE
BLOQUE
PROGRAMA

LEND
bit_address

FIN BUCLE
BLOQUE
PROGRAMA

LEND NOT
bit_address

FIN BUCLE
BLOQUE
PROGRAMA
NEGADO

input_condition LEND

FIN BUCLE
BLOQUE
PROGRAMA

---

---

---

---

Inicio/detenci
n de
programa de
bloques

BPPS

PAUSA
BLOQUE
PROGRAMA

BPRS

REINICIO
BLOQUE
PROGRAMA

---

---

Temporizador
/contador

TIMW

TEMPORIZAD
OR DE
ESPERA

CNTW

CONTADOR
DE ESPERA

TMHW

TEMPORIZAD
OR DE ALTA
VELOCIDAD
DE ESPERA

---

MOV$

MOVER
CADENA

+$

CONCATENAR CADENA

LEFT$

OBTENER
CADENA
IZQUIERDA

RIGHT$

OBTENER
CADENA
DERECHA

MID$

OBTENER
CADENA DEL
MEDIO

FIND$

ENCONTRAR
EN CADENA

LEN$

LONGITUD
DE CADENA

RPLC$

SUSTITUIR
EN CADENA

DEL$

BORRAR
CADENA

XCHG$

CAMBIAR
CADENA

CLR$

BORRAR
CADENA

INS$

INSERTAR
EN CADENA

LD, AND, OR
+
=$, <>$, <$,
<=$, >$, >=$

COMPARACIN CADENAS DE TEXTO

---

---

---

---

TKON

TAREA ON

TKOF

TAREA OFF

---

---

Instrucciones
de
programaci
p
g
nd
de bl
bloques

Instrucciones
de
procesamient
p
od
de cadenas
d
de texto

Instrucciones
de control de
tareas

22

---

Funciones de instruccin

2-2

Seccin

2-2

Funciones de instruccin

2-2-1 Instrucciones de entrada de secuencia


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
LOAD
LD
@LD
%LD
!LD
!@LD
!%LD

LOAD NOT
LD NOT
!LD NOT

Barra
de bus

Ubicacin

Indica un inicio lgico y crea una condicin de ejecucin ON/OFF


basada en el estado ON/OFF del bit de operando especificado.

Pgi
na

120
Opcional

Punto de
inicio de
bloque

Barra
de bus

Indica un inicio lgico y crea una condicin de ejecucin ON/OFF


basada en la inversin del estado ON/OFF del bit de operando
especificado.

122
Opcional

Punto de
inicio de
bloque

Realiza una operacin lgica AND del estado del bit de operando
especificado y la condicin de ejecucin actual.

AND
AND
@AND
%AND
!AND
!@AND
!%AND

Invierte el estado del bit de operando especificado y toma un AND


lgico con la condicin de ejecucin actual.

AND NOT
AND NOT
!AND NOT
OR
OR
@OR
%OR
!OR
!@OR
!%OR
OR NOT
OR NOT
!OR NOT

AND LOAD
AND LD

Barra
de bus

realiza una operacin lgica OR del estado ON/OFF del bit de


operando especificado y la condicin de ejecucin actual.

Barra
de bus

Invierte el estado del bit especificado y realiza una operacin lgica


OR con la condicin de ejecucin actual.

Bloque lgicoBloque lgico Toma

124
Obligatorio

126
Obligatorio
127
Obligatorio

129
Obligatorio

un AND lgico entre bloques lgicos.

LD
a

131
Obligatorio

Bloque lgico A

LD
a

AND LD

Bloque lgico B

Conexin en serie entre el bloque lgico A y


el bloque lgico B.

23

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
OR LOAD
OR LD

Bloque lgico
Bloque lgico

Ubicacin

Toma un OR lgico entre bloques lgicos.

Pgi
na
133

Obligatorio

LD
a

2-2

Bloque lgico A

LD
a

OR LD
---

NOT

Bloque lgico B
Conexin en paralelo entre el bloque lgico A y el bloque lgico B.

Invierte la condicin de ejecucin.

139
Obligatorio

NOT
520
CONDICIN ON
UP

UP(521)

UP(521) pone en ON la condicin de ejecucin durante un ciclo


cuando la condicin de ejecucin pasa de OFF a ON.

DOWN(522)

DOWN(522) pone en ON la condicin de ejecucin durante un ciclo


cuando la condicin de ejecucin pasa de ON a OFF.

140
Obligatorio

521
CONDICIN OFF
DOWN

140
Obligatorio

522
TEST DE BITS
LD TST
350

TSTN(350)

S
N

LD TST(350), AND TST(350), y OR TST(350) se utilizan en el


programa como LD, AND, y OR; la condicin de ejecucin est en
ON cuando el bit especificado del canal especificado est en ON, y
en OFF cuando el bit est en OFF.

Opcional

141

LD TSTN(351), AND TSTN(351), y OR TST(351) se utilizan en el


programa como LD, NOT, AND NOT, y OR NOT; la condicin de
ejecucin est en OFF cuando el bit especificado del canal
especificado est en ON, y en ON cuando el bit est en OFF.

Opcional

S: Canal fuente
N: Nmero de bit
TEST DE BITS
LD TSTN
351

TSTN(351)

S
N

141

S: Canal fuente
N: Nmero de bit
TEST DE BITS
AND TST
350

AND TST(350)

S
N

LD TST(350), AND TST(350), y OR TST(350) se utilizan en el


programa como LD, AND, y OR; la condicin de ejecucin est en
ON cuando el bit especificado del canal especificado est en ON, y
en OFF cuando el bit est en OFF.

141
Obligatorio

LD TSTN(351), AND TSTN(351), y OR TST(351) se utilizan en el


programa como LD, NOT, AND NOT, y OR NOT; la condicin de
ejecucin est en OFF cuando el bit especificado del canal
especificado est en ON, y en ON cuando el bit est en OFF.

Obligatorio

S: Canal fuente
N: Nmero de bit
TEST DE BITS
AND TSTN
351

AND TSTN(351)

S
N

141

S: Canal fuente
N: Nmero de bit
TEST DE BITS
OR TST
350

TST(350)

S
N

LD TST(350), AND TST(350), y OR TST(350) se utilizan en el


programa como LD, AND, y OR; la condicin de ejecucin est en
ON cuando el bit especificado del canal especificado est en ON, y
en OFF cuando el bit est en OFF.

141
Obligatorio

LD TSTN(351), AND TSTN(351), y OR TST(351) se utilizan en el


programa como LD, NOT, AND NOT, y OR NOT; la condicin de
ejecucin est en OFF cuando el bit especificado del canal
especificado est en ON, y en ON cuando el bit est en OFF.

Obligatorio

S: Canal fuente
N: Nmero de bit
TEST DE BITS
OR TSTN
351

TSTN(351)

S
N
S: Canal fuente
N: Nmero de bit

24

141

Funciones de instruccin

Seccin

2-2

2-2-2 Instrucciones de salida de secuencia


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de
ejecucin

Cdigo
SALIDA
OUT
!OUT
SALIDA
NEGADA

Enva el resultado (condicin de ejecucin) del procesamiento lgico


al bit especificado.

Salida

Invierte el resultado (condicin de ejecucin) del procesamiento


lgico y lo enva al bit especificado.

Salida

Funciona como rel de enclavamiento.

Salida

OUT NOT
!OUT NOT
BIESTABLE

S (Set)

KEEP
!KEEP
011

KEEP (011)
B

Pgi
na

144

Obligatorio
145

Obligatorio

146

Obligatorio

Set

R (Reset)

B: Bit
Reset

Condicin de
ejecucin de S
Condicin de
ejecucin de R
Estado de B
DIFERENCIAL
ASCENDENTE
DIFU
!DIFU

DIFU(013)
B

B: Bit

013

DIFU (013) pone en ON el bit designado durante un ciclo cuando la


condicin de ejecucin pasa de OFF a ON (flanco ascendente).

Salida

150

Obligatorio

Condicin de ejecucin
Estado de B
Un ciclo

DIFERENCIAL
DESCENDENTE
DIFD
!DIFD

DIFD(014)

DIFU (014) pone en ON el bit designado durante un ciclo cuando la


condicin de ejecucin pasa de ON a OFF (flanco descendente).

Estado de B

SET
@SET
%SET B: Bit
!SET
!@SET
!%SET
RESET
RSET
@RSET
%RSET B: Bit
!RSET
!@RSET
!%RSET

150

Obligatorio

Condicin de ejecucin

B: Bit

014

SET

Salida

SET
B

Un ciclo

SET pone el bit de operando en ON cuando la condicin de ejecucin


est en ON.
Condicin de ejecucin de SET

Salida

152

Obligatorio

Estado de B

RSET
B

RSET pone el bit de operando en OFF cuando la condicin de


ejecucin est en ON.
Condicin de ejecucin de RSET

Salida

152

Obligatorio

Estado de B

25

Funciones de instruccin
Instruccin
Mnemnico

Smbolo/operan
do

Seccin
Funcin

Ubicacin

Cdigo
SET MLTIPLES
BITS
SETA
@SETA
530

SETA(530)

SETA(530) pone en ON el nmero especificado de bits consecutivos.

N2

Pgi
na

154

Obligatorio

D
N1

Condicin
de
ejecucin
Salida

2-2

Los bits N2 se seleccionan a 1 (ON).

D: Canal de
comienzo
N1: Bit de
comienzo
N2: Nmero de
bits
RESET
MLTIPLE

RSTA(531)

RSTA
@RSTA
531

D
N1
N2
D: Canal de
comienzo
N1: Bit de
comienzo
N2: Nmero de
bits

26

RSTA(530) pone en OFF el nmero especificado de bits


consecutivos.

Los bits N2 se restablecern a 0 (OFF).

Salida
Obligatorio

154

Funciones de instruccin

Seccin

2-2

2-2-3 Instrucciones de control de secuencia


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
END
END

END(001)

001

Indica el final de un programa.


END(001) completa la ejecucin de un programa para dicho ciclo. No
se ejecutarn instrucciones que se haya escrito despus de
END(001). La ejecucin pasa al programa con el siguiente nmero de
tarea. Cuando el programa que se est ejecutando tiene el nmero
de tarea ms alto del programa, END(001) marca el final del
programa principal global.

Tarea 1

Salida

Pgi
na

157

Opcional

Programa A

Al siguiente nmero
de tarea

Tarea 2

Programa B

Al siguiente nmero
de tarea

Tarea n

Programa Z

Final del programa principal

Refresco de E/S

NO OPERACIN
NOP

Esta instruccin no tiene funcin. (No se ejecuta procesamiento para


NOP(000)).

Salida

Enclava todas las salidas entre IL(002) e ILC(003) cuando la


condicin de ejecucin para IL(002) est en OFF. IL(002) e ILC(003)
se suelen utilizar en parejas.

Salida

158

Opcional

000
INTERLOCK
IL

IL(002)

002

Condicin
de ejecucin

Condicin de
ejecucin ON

Seccin enclavada
del programa

INTERLOCK
CLEAR

ILC(003)
ILC

Ejecucin
normal

158

Obligatorio

Condicin de
ejecucin OFF

Salidas
enclavadas.

Enclava todas las salidas entre IL(002) e ILC(003) cuando la


condicin de ejecucin para IL(002) est en OFF. IL(002) e ILC(003)
se suelen utilizar en parejas.

Salida

158

Opcional

003

27

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
SALTO
JMP
004

JMP(004)
N
N: Nmero de
salto

Si la condicin de ejecucin para JMP(004) est en OFF, la ejecucin


del programa salta directamente al primer JME(005) del programa
con el mismo nmero de salto. JMP(004) y JME(005) se utilizan en
parejas.
Condicin de ejecucin
Instrucciones
saltadas

Instrucciones
ejecutadas

FIN DE SALTO
JME
005

SALTO
CONDICIONAL
CJP
510

JME(005)

CJPN
511

161

Obligatorio

Salida

161

Opcional

N
N: Nmero de
salto

CJP(510)
N
N: Nmero de
salto

La operacin de CJP(510) es bsicamente la opuesta a JMP(004).


Si la condicin de ejecucin para CJP(510) es ON, la ejecucin del
programa salta directamente al primer JME(005) del programa con el
mismo nmero de salto. CJP(004) y JME(005) se utilizan en parejas.
Condicin
Condicin
de ejecucin de ejecucin
ON
OFF
Instrucciones
saltadas

CJPN(511)

N
N: Nmero de
salto

Salida

164

Obligatorio

Las instrucciones de esta


seccin no se ejecutan y
se mantiene el estado de
salida. Se elimina el tiempo de ejecucin de instruccin para estas instrucciones.

La operacin de CJPN(511) es casi idntica a JMP(004).


Si la condicin de ejecucin para CJP(004) est en OFF, la ejecucin
del programa salta directamente al primer JME(005) del programa
con el mismo nmero de salto. CJPN(511) y JME(005) se utilizan en
parejas.
Condicin
Condicin
de ejecucin ON de ejecucin OFF
Instrucciones
saltadas

Instrucciones
ejecutadas

28

Pgi
na

Las instrucciones de esta


seccin no se ejecutan y
se mantiene el estado de
salida. Se elimina el tiempo de ejecucin de instruccin para estas instrucciones.

Indica el final de una salto iniciado por JMP(004) o CJP(510).

Instrucciones
ejecutadas

SALTO
CONDICIONAL

Salida

2-2

Las instrucciones de esta


seccin no se ejecutan y
se mantiene el estado de
salida. Se elimina el tiempo de ejecucin de instruccin para estas instrucciones.

Salida
Opcional

164

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
SALTO
MLTIPLE

JMP0(515)
JMP0
515

Si la condicin de ejecucin para JMP0(515) est en OFF, todas las


instrucciones desde JMP0(515) hasta el siguiente JME0(516) del
programa se procesan como NOP(000). Utilice JMP0(515) y
JME0(516) en parejas. No existe lmite para el nmero de parejas
que se pueden utilizar en el programa.
Condicin
Condicin
de ejecucin a) de ejecucin a)
ON
OFF
Instrucciones
saltadas

Salida

2-2
Pgi
na
168

Obligatorio

Instrucciones
ejecutadas
Las instrucciones saltadas se procesan como NOP(000). Los
Condicin
Condicin
ejecucin b) ON ejecucin b) OFF tiempos de ejecucin
de instruccin son los
mismos que
NOP(000).
Instrucciones
ejecutadas

Instrucciones
saltadas
FIN DE SALTO
MLTIPLE

JME0(516)

JME0
516
BUCLES
FOR--NEXT

FOR(512)
FOR
512

Si la condicin de ejecucin para JMP0(515) es OFF, todas las


instrucciones desde JMP0(515) hasta el siguiente JME0(516) del
programa se procesan como NOP(000). Utilice JMP0(515) y
JME0(516) en parejas. No existe lmite para el nmero de parejas
que se pueden utilizar en el programa.
Las instrucciones entre FOR(512) y NEXT(513) se repiten un nmero
concreto de veces. FOR(512) y NEXT(513) se utilizan en parejas.

N: Nmero de
lazos

Salida

168

Opcional

Salida

170

Opcional

Repetido N veces

Seccin de programa repetida

ROMPER
BUCLE

BREAK(514)

BREAK
514

Programada en un lazo FOR-NEXT para cancelar la ejecucin del


lazo en una condicin de ejecucin dada. Las instrucciones restantes
del lazo se procesan como instrucciones NOP(000).
Condicin a) ON
N repeticiones

Salida

173

Obligatorio

Repeticiones
forzadas a finalizar.
Procesado como NOP(000).

BUCLES
FOR--NEXT

NEXT(513)
NEXT

Las instrucciones entre FOR(512) y NEXT(513) se repiten un nmero


concreto de veces. FOR(512) y NEXT(513) se utilizan en parejas.

Salida

170

Opcional

513

29

Funciones de instruccin

Seccin

2-2

2-2-4 Instrucciones de temporizador y contador


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
TEMPORIZADO
R

TIM

TIM opera como un temporizador decremental con unidades de 0,1 s.


El rango de seleccin para el SV es 0 a 999,9 s.

TIM

S
N: Nmero de
temporizador
S: Valor
seleccionado

Ubicacin

Salida

Pgi
na

175

Obligatorio

Entrada del temporizador


SV

PV del temporizador
Indicador de
finalizacin

Entrada del temporizador


SV

PV del temporizador
Indicador de
finalizacin
CONTADOR
CNT

Entrada
de contaje

CNT
N
S

Entrada
de reset

N: Nmero de
contador
S: Valor
seleccionado

CNT opera como un contador descendente. El rango de seleccin


para el SV es de 0 a 9.999.

Salida

196

Obligatorio

Entrada de contaje

Entrada de reset
PV del contador

SV

Indicador de
finalizacin
TEMPORIZA-DOR DE ALTA
VELOCIDAD
TIMH
015

TIMH(015)

TIMH (015) opera como un temporizador decremental con unidades


de 10 ms. El rango de seleccin para el SV es 0 a 99,99 s.

N
S
N: Nmero de
temporizador
S: Valor
seleccionado

Salida

179

Obligatorio

Entrada del temporizador


PV del temporizador

SV

Indicador de
finalizacin

Entrada del temporizador


PV del temporizador

SV

Indicador de
finalizacin
TEMPORIZADO
R DE MUY ALTA
VELOCIDAD
TMHH
540

30

TMHH(540)

N
S
N: Nmero de
temporizador
S: Valor
seleccionado

TMHH (540) opera un temporizador decremental con unidades de 1


ms. El rango de seleccin para el SV es 0 a 9,999 s.
Los cronogramas para TMHH(540) son los mismos que los dados
anteriormente para TIMH(015).

Salida
Obligatorio

183

Funciones de instruccin
Instruccin
Mnemnico

Smbolo/operan
do

Cdigo
TEMPORIZA-Entra- TTIM(087)
tempoDOR
rizador
N
TOTALIZADOR
S

TTIM
087

Seccin

Entrada de
reset

Funcin

Ubicacin
Condicin
de ejecucin

TTIM(087) opera como un temporizador incremental con unidades de


0,1 s. El rango de seleccin para el SV es 0 a 999,9 s.

Salida

2-2
Pgi
na
185

Obligatorio

Entrada del
temporizador
PV del temporizador

SV
Se reanuda la
temporizacin.

N: Nmero de
temporizador
S: Valor
seleccionado

Se mantiene
el PV.
Indicador de
finalizacin
Entrada de
reset

TEMPORIZADO
R LARGO

TIML(542)

TIML

D1

542

D2
S
D1: Indicador de
finalizacin
D2: Canal de PV
S: Canal de SV

TEMPORIZADO
R MULTI-SALIDA

MTIM(543)

MTIM

D1

543

D2

TIML(542) opera como un temporizador decremental con unidades de


0,1 s que pueden alcanzar hasta 9.999.999,9 s (115 das aprox.).

Salida

189

Obligatorio

Entrada del temporizador


SV

PV del temporizador

Indicador de finalizacin (Bit 00 de D1)


MTIM(543) opera como un temporizador incremental de 0,1 s con 8
SV independientes e indicadores de finalizacin. El rango de
seleccin para el SV es 0 a 999,9 s.

Salida

191

Obligatorio

PV del temporizador

S
D1: Indicadores
de finalizacin
D2: Canal de PV
S: Primer canal
de SV

SV del temporizador
0

Entrada del
temporizador

PV del temporizador (D2)

Indicadores
de finalizacin (D1)

SV 7
a
SV 2
SV 1
SV 0
0
Bit 7
a
Bit 2
Bit 1
Bit 0

31

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
CONTADOR
REVERSIBLE
CNTR
012

Seccin

Smbolo/operan
do

Entrada
Adelante

CNTR(012)

Funcin

Ubicacin
Condicin
de ejecucin

CNTR(012) opera un contador reversible.

Salida

Entrada
de reset

Pgi
na
198

Obligatorio

Entrada
Atrs

2-2

Entrada Adelante
Entrada Atrs

N: Nmero de
contador
S: Valor
seleccionado

PV del contador

SV

PV del contador

+1
Indicador de
finalizacin

PV del contador

SV

--1

Indicador de
finalizacin
RESET
TEMPORIZADO
R/ CONTADOR
CNR
@CNR
545

32

CNR(545)

N1
N2
N1: Primer
nmero del rango
N2: ltimo
nmero del rango

Restablece los temporizadores o contadores dentro del rango


especificado de nmeros de temporizador o contador. Establece el
valor seleccionado (SV) hasta un mximo de 9999.

Salida
Obligatorio

202

Funciones de instruccin

Seccin

2-2

2-2-5 Instrucciones de comparacin


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de
ejecucin

Cdigo
Comparacin de
smbolo (Sin
signo)
LD, AND, OR + =,
<>, <, <=, >, >=
300 (=)
305 (<>)
310 (<)
315 (<=)
320 (>)
325(>=)

Smbolo y opciones

S1
S2
S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

Las instrucciones de comparacin de smbolos (sin signo) comparan


dos valores (constantes y/o el contenido de canales concretos) en
datos binarios de 16 bits y crean una condicin de ejecucin ON si la
condicin de comparacin es verdadera. Existen tres tipos de
instrucciones de comparacin de smbolos, LD (LOAD), AND, y OR.
Condicin de ejecucin ON si el resultado de la comparacin es verdadero.

LD

Pgi
na

210
LD:
Opcional
AND, OR:
Obligatorio

<

Condicin de ejecucin ON
si el resultado de la comparacin es verdadero.

AND
<

OR

<
Condicin de ejecucin ON si el resultado de la comparacin es verdadero.
Comparacin de
smbolo (Doble
canal, sin signo)
LD, AND, OR + =,
<>, <, <=, >, >= +
L

S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

Las instrucciones de comparacin de smbolos (dos canales, sin


signo) comparan dos valores (constantes y/o el contenido de datos
de canales dobles concretos) en datos binarios de 32 bits sin signo y
crean una condicin de ejecucin ON si la condicin de comparacin
es verdadera. Existen tres tipos de instrucciones de comparacin de
smbolos, LD (LOAD), AND, y OR.

S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

Las instrucciones de comparacin de smbolos (con signo) comparan


dos valores (constantes y/o el contenido de canales concretos) en
datos binarios de 16 bits (hexadecimales de 4 dgitos) y crean una
condicin de ejecucin ON si la condicin de comparacin es
verdadera. Existen tres tipos de instrucciones de comparacin de
smbolos, LD (LOAD), AND, y OR.

210
LD:
Opcional
AND, OR:
Obligatorio

301 (=)
306 (<>)
311 (<)
316 (<=)
321 (>)
326 (>=)
Comparacin de
smbolo (Con
signo)
LD, AND, OR + =,
<>, <, <=, >, >=
+S

210
LD:
Opcional
AND, OR:
Obligatorio

302 (=)
307 (<>)
312 (<)
317 (<=)
322 (>)
327 (>=)

33

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de
ejecucin

Cdigo
Comparacin de
smbolo (Doble
canal, con
signo)

S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

LD, AND, OR + =,
<>, <, <=, >, >=
+SL

Las instrucciones de comparacin de smbolos (dos canales, con


signo) comparan dos valores (constantes y/o el contenido de datos
de canales dobles concretos) en datos binarios de 32 bits con signo
(hexadecimales de 8 dgitos) y crean una condicin de ejecucin ON
si la condicin de comparacin es verdadera. Existen tres tipos de
instrucciones de comparacin de smbolos, LD (LOAD), AND, y OR.

2-2
Pgi
na

210
LD:
Opcional
AND, OR:
Obligatorio

303 (=)
308 (<>)
313 (<)
318 (<=)
323 (>)
328 (>=)
COMPARAR
CMP
!CMP
020

CMP(020)

S1

Compara dos valores binarios sin signo (constantes y/o el contenido


de canales concretos) y enva el resultado a los indicadores
aritmticos del rea auxiliar.

CMPL(060)

CMPL
060

S1

COMPARACIN
BINARIA CON
SIGNO
CPS
!CPS
114

DOBLE
COMPARACIN
BINARIA CON
SIGNO
CPSL
115

COMPARAR
TABLA

CPS(114)

S1

Compara dos valores binarios sin signo dobles (constantes y/o el


contenido de canales concretos) y enva el resultado a los
indicadores aritmticos del rea auxiliar.

S1+1

S1

TCMP(085)

TCMP
@TCMP

085

Obligatorio

S2+1

Compara dos valores binarios con signo (constantes y/o el contenido


de canales concretos) y enva el resultado a los indicadores
aritmticos del rea auxiliar.

Salida

220

Obligatorio

Comparacin binaria con signo


Indicadores aritmticos
(>, >=, =, <=, <, <>)
Compara dos valores binarios de doble signo (constantes y/o el
contenido de canales concretos) y enva el resultado a los
indicadores aritmticos del rea auxiliar.

Salida

223

Obligatorio

Comparacin binaria con signo

S2
S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

218

Indicadores aritmticos
(>, >=, =, <=, <, <>)

S1: Datos de
comparacin 1
S2: Datos de
comparacin 2
CPSL(115)

Salida

Comparacin binaria sin signo

S2

S: Datos fuente
T: Primer canal de
la tabla
R: Canal de
resultado

34

Indicadores aritmticos
(>, >=, =, <=, <, <>)

S2
S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

215

Obligatorio

Comparacin binaria sin signo

S2
S1: Datos de
comparacin 1
S2: Datos de
comparacin 2

COMPARAR
DOBLE

Salida

S1+1

S2+1

Indicadores aritmticos
(>, >=, =, <=, <, <>)
Compara los datos fuente con el contenido de 16 canales
Salida
consecutivos y pone en ON el bit correspondiente del canal de
Obligatorio
resultado si el contenido de los canales es igual.
R
Comparacin
1: Datos iguales.
0: Datos distintos

228

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin

Cdigo
COMPARACIN
MLTIPLE

MCMP(019)

MCMP
@MCMP

S1

019

Compara 16 canales consecutivos con otros 16 canales consecutivos


y pone en ON el bit correspondiente del canal de resultado si el
contenido de los canales no es igual.
Comparacin

S2

BCMP(068)

BCMP
@BCMP

Compara los datos fuente con 16 rangos (definidos por 16 lmites


inferiores y 16 superiores) y pone en ON el bit correspondiente en el
canal de resultado si los datos fuente estn dentro del rango.
Rangos

R
S: Datos fuente
T: Primer canal de
la tabla
R: Canal de
resultado

226

Obligatorio

0: Canales
iguales.
1: Canales
distintos.

068

Pgi
na

S1: Primer canal


del juego 1
S2: Primer canal
del juego 2
R: Canal de
resultado
COMPARACIN
DE BLOQUE SIN
SIGNO

Condicin
de
ejecucin
Salida

2-2

Datos fuente

230

Obligatorio

1: En el rango
0: Fuera del rango

Lmite inferior
Lmite superior
a T+1

Salida

R
0

T+2

a T+3

T+28
T+30

a T+29

14

a T+31

15

2-2-6 Instrucciones de transferencia de datos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
MOVER
MOV
@MOV
!MOV
!@MOV
021

MOV(021)

Transfiere un canal de datos al canal especificado.

Salida

Pgi
na

233

Obligatorio

Canal fuente

D
S: Fuente
D: Destino

Estado del bit:


no modificado.
Canal de destino

MOVER DOBLE
MOVL
@MOVL

MOVL(498)

S
S: Primer canal
fuente
D: Primer canal
de destino
MVN(022)

MVN
@MVN
022

S+1

Salida

236

Obligatorio

498

MOVER
NEGADO

Transfiere dos canales de datos a los canales especificados.

Estado del bit:


no modificado.
D

D+1

Transfiere el complemento de un canal de datos al canal


especificado.
Canal fuente

Salida

235

Obligatorio

D
S: Fuente
D: Destino

Estado del bit:


invertido.
Canal de destino

35

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
MOVER
NEGADO
DOBLE

MVNL(499)

MVNL
@MVNL
499

MOVER BIT
MOVB
@MOVB
082

Transfiere el complemento de dos canales de datos a los canales


especificados.
S

S+1

Salida

2-2
Pgi
na
237

Obligatorio

D
S: Primer canal
fuente
D: Primer canal
de destino

MOVB(082)

Estado del bit:


invertido.
D

D+1

Transfiere el bit especificado.

Salida

239

Obligatorio

S
C
D
S: Canal o datos
fuente
C: Canal de
control
D: Canal de
destino

MOVER DGITO
MOVD
@MOVD
083

MOVD(083)

Transfiere los dgitos especificados. (Cada dgito se compone de 4


bits).

Salida

Transfiere el nmero especificado de bits consecutivos.

Salida

241

Obligatorio

C
D
S: Canal o datos
fuente
C: Canal de
control
D: Canal de
destino

TRANSFERIR
BITS
XFRB
@XFRB
062

XFRB(062)

243

Obligatorio

C
S
D
C: Canal de
control
S: Primer canal
fuente
D: Primer canal
de destino

TRANSFERIR
BLOQUE

XFER(070)

XFER
@XFER

070

Transfiere el nmero especificado de canales consecutivos.

Salida

246

Obligatorio

N canales

S+(N--1)

a
D+(N--1)

N: Nmero de
canales
S: Primer canal
fuente
D: Primer canal
de destino
RELLENAR
BLOQUE

BSET(071)

BSET
@BSET

St

071

E
S: Canal fuente
St: Canal de
inicio
E: Canal de fin

36

Copia el mismo canal en un rango de canales consecutivos.


Canal fuente

Canales de destino
St

Salida
Obligatorio

248

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
INTERCAMBIO
DE DATOS
XCHG
@XCHG
073

INTERCAMBIO
DE DATOS
DOBLE
XCGL
@XCGL
562

DISTRIBUCIN
DE DATOS

Seccin

Smbolo/operan
do

XCHG(073)

Funcin

Condicin
de ejecucin
Intercambia el contenido de los dos canales especificados.
E1

E1

XCGL(562)

E1
E2

DIST(080)

S
Of

Intercambia el contenido de un par de canales consecutivos con otro


par.
E1

E1+1

E2

Salida

251

Obligatorio

E2+1

Transfiere el canal fuente a un canal de destino, que se calcula


aadiendo un valor de offset a la direccin base.
S

Bs

S: Canal fuente
Bs: Direccin
base de destino
Of: Offset
COLL(081)

COLL
@COLL

Bs

081

Of

Bs: Direccin
base fuente
Of: Offset
D: Canal de
destino
MOVR(560)

560

E2

E1: Primer canal


de intercambio
E2: Segundo
canal de
intercambio

080

MOVR
@MOVR

250

Obligatorio

E1: Primer canal


de intercambio
E2: Segundo
canal de
intercambio

Bs

MOVER A
REGISTRO

Salida

Pgi
na

E2

DIST
@DIST

RECOGIDA DE
DATOS

Ubicacin

2-2

S
D
S: Fuente (canal
o bit deseado)
D: Destino
(registro de
ndice)

Salida

253

Obligatorio

Of

Bs+n
Transfiere el canal fuente (que se calcula aadiendo un valor de
offset a la direccin base) a un canal de destino.
Bs

Salida

254

Obligatorio

Of

Bs+n

Establece la direccin de memoria de E/S interna del canal, bit o el


indicador de finalizacin del temporizador/contador especificado del
registro de ndice especificado. (Utilice MOVRW(561) para
seleccionar la direccin de memoria de E/S interna de un PV de
temporizador o contador, en un registro de ndice).

Salida

256

Obligatorio

Direccin de memoria de E/S de S

Registro de ndice

MOVER PV DE
TEMPORIZADO
R/CONTADOR A
REGISTRO
MOVRW
@MOVRW
561

MOVRW(561)

S
D
S: Fuente
(nmero de TC
deseado)
D: Destino
(registro de
ndice)

Selecciona la direccin de memoria de E/S interna del PV del


temporizador o contador especificado en el registro de ndice
especificado. (Utilice MOVR(560) para seleccionar la direccin de
memoria de E/S interna de un canal, bit o indicador de finalizacin de
temporizador o contador en un registro de ndice).

Salida

258

Obligatorio

Direccin de memoria de E/S de S

Slo PV de temporizador/contador
Registro de ndice

37

Funciones de instruccin

Seccin

2-2

2-2-7 Instrucciones de desplazamiento de datos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
REGISTRO DE
DESPLAZAMIEN
TO
SFT
010

REGISTRO DE
DESPLAZAMIEN
TO REVERSIBLE

Entrada
datos

SFT(010)

Desplazam.
Entrada
de reset

Salida

St+1, St+2

St

260

Obligatorio

St
E

St: Canal de
inicio
E: Canal de fin
SFTR(084)

Estado de la entrada de datos


para cada entrada de desplazamiento

Perdido

Crea un registro de desplazamiento que desplaza datos hacia la


derecha o hacia la izquierda.

Salida

St
E

084

C: Canal de
control
St: Canal de
inicio
E: Canal de fin
ASFT(017)

ASFT
@ASFT

Entrada de
datos

St

St

262

Obligatorio

SFTR
@SFTR

REGISTRO DE
DESPLAZAMIEN
TO ASNCRONO

Opera un registro de desplazamiento.

Pgi
na

Entrada de datos
Direccin de
desplazamiento

Desplaza todos los datos de canal no cero dentro del rango de


canales especificados hacia St o hacia E, reemplazando los datos de
canales 0000 hex.

Salida

264

Obligatorio

St
E

017

St

Direccin desplazamiento

C: Canal de
control
St: Canal de
inicio
E: Canal de fin

Desplazamiento habilitado

Desplazar

Borrar

Desplazar
E

St
Datos
cero
Datos no cero

E
DESPLAZAR UN
CANAL

WSFT(016)

WSFT
@WSFT

St

016

Desplaza datos entre St y E en unidades de canal.

267

Obligatorio

St

Salida

Perdido

S: Canal fuente
St: Canal de
inicio
E: Canal de fin
DESPLAZAMIEN
TO ARITMTICO
A IZQUIERDA

ASL(025)

Desplaza el contenido del canal un bit hacia la izquierda.

Salida

268

Obligatorio

Wd

ASL Wd: Canal


@ASL
025
DOBLE
DESPLAZAMIEN
TO A
IZQUIERDA
ASLL
@ASLL
570

38

ASLL(570)

Wd
Wd: Canal

Desplaza el contenido de Wd y Wd+1 un bit hacia la izquierda.


Wd+1

Wd

Salida
Obligatorio

270

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DESPLAZAMIEN
TO ARITMTICO
A DERECHA
ASR
@ASR

Seccin

Smbolo/operan
do

ASR(026)

Funcin

Ubicacin
Condicin
de ejecucin

Desplaza el contenido del canal un bit hacia la derecha.

Salida

2-2
Pgi
na
272

Obligatorio

Wd
Wd: Canal

026
DOBLE
DESPLAZAMIEN
TO A DERECHA

ASRL(571)

Wd

Desplaza el contenido de Wd y Wd +1 un bit hacia la derecha.


Wd+1

Wd

Salida

273

Obligatorio

ASRL Wd: Canal


@ASRL
571
ROTAR A
IZQUIERDA

ROL(027)

Desplaza todos los bits de Wd hacia la izquierda, incluyendo el


indicador de acarreo (CY).

Wd
ROL
@ROL Wd: Canal
027
DOUBLE ROTAR
A IZQUIERDA

ROLL(572)

Wd
ROLL
@ROLL Wd: Canal
572
ROTAR A
IZQUIERDA SIN
ACARREO
RLNC
@RLNC

RLNC(574)

Wd

Salida

275

Obligatorio

Desplaza todos los bits de Wd y Wd +1 hacia la izquierda, incluyendo


el indicador de acarreo (CY).
Wd+1
Wd

Salida

Desplaza todos los bits de Wd hacia la izquierda, sin incluir el


indicador de acarreo (CY).
Wd

Salida

Desplaza todos los bits de Wd y Wd +1 hacia la izquierda, sin incluir


el indicador de acarreo (CY).
Wd+1
Wd

Salida

277

Obligatorio

282

Obligatorio

Wd: Canal

574
DOUBLE ROTAR
A IZQUIERDA
SIN ACARREO

RLNL(576)

Wd

283

Obligatorio

RLNL Wd: Canal


@RLNL
576
ROTAR A
DERECHA

ROR(028)

ROTAR A
DERECHA
DOBLE

RORL(573)

Wd
ROR
@ROR Wd: Canal
028

Wd

Desplaza todos los bits de Wd hacia la derecha, incluyendo el


indicador de acarreo (CY).
Wd
Wd+1

Salida

278

Obligatorio

Desplaza todos los bits de Wd y Wd +1 hacia la derecha, incluyendo


el indicador de acarreo (CY).
Wd
Wd+1

Salida

Desplaza todos los bits de Wd hacia la derecha, sin incluir el


indicador de acarreo (CY). El contenido del bit de la derecha de Wd
se desplaza hacia el bit de la izquierda y al indicador de acarreo (CY).

Salida

280

Obligatorio

RORL Wd: Canal


@RORL
573
ROTAR A
DERECHA SIN
ACARREO
RRNC
@RRNC

RRNC(575)

Wd
Wd: Canal

Wd

575
ROTAR A
DERECHA
DOBLE SIN
ACARREO

RRNL(577)

Wd

RRNL
@RRNL

285

Obligatorio

Wd: Canal

Desplaza todos los bits de Wd y Wd +1 hacia la derecha, sin incluir el


indicador de acarreo (CY). El contenido del bit de la derecha de Wd
+1 es desplazado hacia el bit de la izquierda de Wd y al indicador de
acarreo (CY).
Wd+1
Wd

Salida

287

Obligatorio

577

39

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DESPLAZAMIEN
TO DE UN
DGITO A
IZQUIERDA
SLD
@SLD
074
DESPLAZAMIEN
TO DE UN
DGITO A
DERECHA
SRD
@SRD
075
DESPLAZAMIEN
TO DE UN DATO
N BITS A
IZQUIERDA
NSFL
@NSFL
578

DESPLAZAMIEN
TO DE UN DATO
N BITS A
DERECHA
NSFR
@NSFR
579

DESPLAZAMIEN
TO DE N BITS A
IZQUIERDA
NASL
@NASL
580

Seccin

Smbolo/operan
do

SLD(074)

St
E

Funcin

Condicin
de ejecucin
Desplaza los datos un dgito (4 bits) hacia la izquierda.
E
St

Salida

Pgi
na
288

Obligatorio

Perdido

St: Canal de
inicio
E: Canal de fin
SRD(075)

St

Desplaza los datos un dgito (4 bits) hacia la derecha.


E
St

Salida

290

Obligatorio
Perdido

E
St: Canal de
inicio
E: Canal de fin
NSFL(578)

Desplaza el nmero especificado de bits hacia la izquierda.

Salida

291

Obligatorio

D
C
N
D: Canal de
comienzo para
desplazamiento
C: Bit de
comienzo
N: Longitud de
datos de
desplazamiento
NSFR(579)

N--1 bit

Desplaza un bit hacia la izquierda

N--1 bit
Desplaza el nmero especificado de bits hacia la derecha.

Salida

293

Obligatorio

D
C
N
D: Canal de
comienzo para
desplazamiento
C: Bit de
comienzo
N: Longitud de
datos de
desplazamiento
NASL(580)

N--1 bit

Desplaza un bit hacia la derecha

N--1 bit

Desplaza los 16 bits especificados de los datos de canal hacia la


izquierda, en funcin del nmero especificado de bits.

D
C
D: Canal de
desplazamiento
C: Canal de
control

Desplazar n bits

Contenido de a o
0 desplazados

Perdido
N bits

40

Ubicacin

2-2

Salida
Obligatorio

295

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
DOUBLE
DESPLAZAMIEN
TO DE N BITS A
IZQUIERDA

NSLL(582)

Desplaza los 32 bits especificados de los datos de canal hacia la


izquierda, en funcin del nmero especificado de bits.

Salida

Pgi
na
297

Obligatorio

C
NSLL
@NSLL D: Canal de
582 desplazamiento
C: Canal de
control

2-2

Desplazar n bits
Contenido
de a o 0
desplazados

Perdido

N bits
DESPLAZAMIEN
TO DE N BITS A
DERECHA

NASR(581)

DOUBLE
DESPLAZAMIEN
TO DE N BITS A
DERECHA

Salida

C
D: Canal de
desplazamiento
C: Canal de
control
NSRL(583)

Contenido de a
o 0 desplazados

Perdido

N bits
Desplaza los 32 bits especificados de los datos de canal hacia la
derecha, en funcin del nmero especificado de bits.

C
NSRL
@NSRL D: Canal de
583 desplazamiento
C: Canal de
control

300

Obligatorio

NASR
@NASR
581

Desplaza los 16 bits especificados de los datos de canal hacia la


derecha, en funcin del nmero especificado de bits.

Salida

303

Obligatorio

Desplazar n bits
Contenido
de a o 0
desplazados

Perdido

2-2-8 Instrucciones de aumento/disminucin


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
INCREMENTO
BINARIO

++(590)

Aumenta el contenido hexadecimal de 4 dgitos del canal


especificado en 1.

Wd
++
@++ Wd: Canal
590
DOUBLE
INCREMENTO
BINARIO

++L(591)

Wd

Wd

Salida

Pgi
na

306

Obligatorio

Wd

Aumenta el contenido hexadecimal de 8 dgitos de los canales


especificados en 1.
Wd+1
Wd
Wd+1
Wd

Salida

Reduce el contenido hexadecimal de 4 dgitos del canal especificado


en 1.

Salida

308

Obligatorio

++L Wd: Canal


@++L
591
DECREMENTO
BINARIO
-- -@-- --

-- --(592)

Wd

Wd

309

Obligatorio

Wd

Wd: Canal

592
DOUBLE
DECREMENTO
BINARIO
-- --L
@-- --L

-- --L(593)

Wd

Reduce el contenido hexadecimal de 8 dgitos de los canales


especificados en 1.
Wd+1

Wd

Wd+1

Salida

311

Obligatorio

Wd

Wd: Primer canal

593
INCREMENTO
BCD

++B(594)

Wd
++B
@++B Wd: Canal
594

Aumenta el contenido BCD de 4 dgitos del canal especificado en 1.


Wd

Wd

Salida

313

Obligatorio

41

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
DOUBLE
INCREMENTO
BCD
++BL
@++BL

++BL(595)

Wd

Aumenta el contenido BCD de 8 dgitos de los canales especificados


en 1.
Wd+1

Wd

Wd+1

Salida

2-2
Pgi
na
315

Obligatorio

Wd

Wd: Primer canal

595
DECREMENTO
BCD
-- --B
@-- --B

-- --B(596)

Reduce el contenido BCD de 4 dgitos del canal especificado en 1.

Salida

317

Obligatorio

Wd

Wd

Wd

--1

Wd: Canal

596
DOUBLE
DECREMENTO
BCD
-- --BL
@-- --BL

-- --BL(597)

Wd

Reduce el contenido BCD de 8 dgitos de los canales especificados


en 1.
Wd+1

Wd

Wd+1

Salida

319

Obligatorio

Wd

Wd: Primer canal

597

2-2-9 Instrucciones matemticas de smbolos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
SUMA BINARIA
CON SIGNO SIN
ACARREO
+
@+
400

+(400)

+L
@+L
401

SUMA BINARIA
CON SIGNO
CON ACARREO
+C
@+C
402

(Binario con signo)

Ad

(Binario con signo)

CY

(Binario con signo)

Ad
R

+L(401)

CY se pondr en
ON cuando exista
un acarreo.

Suma datos y/o constantes hexadecimales de 8 dgitos (dos canales).


Au+1

Au

(Binario con signo)

Ad+1

Ad

(Binario con signo)

CY

R+1

(Binario con signo)

Au
Ad
R
Au: Primer canal
de sumando
Ad: Primer canal
de sumando
R: Primer canal
de resultado

+C(402)
Au

CY se pondr en ON
cuando
exista un
acarreo.

Suma datos y/o constantes hexadecimales de 4 dgitos (un canal)


con el indicador de acarreo (CY).
Au
(Binario con signo)

Ad

Ad

R
Au: Canal de
sumando
Ad: Canal de
sumando
R: Canal de
resultado

42

Au

Au

Au: Canal de
sumando
Ad: Canal de
sumando
R: Canal de
resultado
DOUBLE SUMA
BINARIA CON
SIGNO SIN
ACARREO

Suma datos y/o constantes hexadecimales de 4 dgitos (un canal).

CY

+
CY se pondr en
ON cuando exista un acarreo.

CY

(Binario con signo)

(Binario con signo)

Salida

Pgi
na

323

Obligatorio

Salida

324

Obligatorio

Salida
Obligatorio

326

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DOUBLE SUMA
BINARIA CON
SIGNO CON
ACARREO
+CL
@+CL
403

SUMA BCD SIN


ACARREO
+B
@+B
404

Smbolo/operan
do

+CL(403)
Au

+BL
@+BL
405

Au: Primer canal


de sumando
Ad: Primer canal
de sumando
R: Primer canal
de resultado

+B(404)

+BC
@+BC
406

+BL(405)

+BC(406)
Au

CY

R+1

328

Obligatorio

(Binario con signo)

Suma datos y/o constantes BCD de 4 dgitos (un canal).


Au

CY se pondr
en ON cuando
exista un acarreo.

Salida

Ad

(BCD)

CY

(BCD)

CY se pondr
en ON cuando
exista un acarreo.

Salida

Au +1

Au

(BCD)

Ad+1

Ad

(BCD)

CY

R+1

(BCD)

Suma datos y/o constantes BCD de 4 dgitos (un canal) con el


indicador de acarreo (CY).
Au
(BCD)
Ad

CY

Ad+1

333

Obligatorio

(BCD)

Ad

Salida

335

Obligatorio

(BCD)

CY

+
CY

Salida

(BCD)

Suma datos y/o constantes BCD de 8 dgitos (dos canales) con el


indicador de acarreo (CY).
Au +1
Au
(BCD)

Ad

332

Obligatorio

CY

+
CY se pondr
en ON cuando
exista un acarreo.

330

Obligatorio

(BCD)

Suma datos y/o constantes BCD de 8 dgitos (dos canales).

CY se pondr
en ON cuando
exista un acarreo.

Pgi
na

(Binario con signo)

Ad

Au: Primer canal


de sumando
Ad: Primer canal
de sumando
R: Primer canal
de resultado

Salida

2-2

CY

Ad

Au

407

Ad

+
CY se pondr en ON
cuando exista un acarreo.

Au

+BCL(407)

+BCL
@+BCL

Ad+1

Ad

Au: Canal de
sumando
Ad: Canal de
sumando
R: Canal de
resultado
SUMA BCD
DOBLE CON
ACARREO

Suma datos y/o constantes hexadecimales de 8 dgitos (dos canales)


con el indicador de acarreo (CY).
Au+1
Au
(Binario con signo)

Au
R

Ubicacin
Condicin
de ejecucin

Au: Primer canal


de sumando
Ad: Primer canal
de sumando
R: Primer canal
de resultado
SUMA BCD CON
ACARREO

Funcin

Ad

Au: Canal de
sumando
Ad: Canal de
sumando
R: Canal de
resultado
DOUBLE SUMA
BCD SIN
ACARREO

Seccin

R+1

(BCD)

43

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
RESTA BINARIA
CON SIGNO SIN
ACARREO
-@-410

Smbolo/operan
do

--(410)

--L
@--L
411

RESTA BINARIA
CON SIGNO
CON ACARREO
--C
@--C
412

--CL
@--CL
413

--B
@--B
414

--L(411)

CY se pondr
en ON cuando
exista un acarreo negativo.

Mi

(Binario con signo)

--

Su

(Binario con signo)

CY

(Binario con signo)

Resta datos y/o constantes hexadecimales de 8 dgitos (dos canales).

Mi
Su
R
Mi: Canal de
minuendo
Su: Canal de
sustraendo
R: Canal de
resultado

--C(412)

CY se pondr en ON
cuando exista un acarreo negativo.

Mi+1

Mi

(Binario con signo)

--

Su+1

Su

(Binario con signo)

CY

R+1

(Binario con signo)

Resta datos y/o constantes hexadecimales de 4 dgitos (un canal)


con el indicador de acarreo (CY).

Mi
Su
R

--CL(413)

CY se pondr
en ON cuando
exista un acarreo negativo.

Salida

Pgi
na
337

Obligatorio

(Binario con signo)

Su

(Binario con signo)

CY se pondr en ON
cuando
exista un
acarreo negativo.

Mi+1

Mi

(Binario con signo)

Su+1

Su

(Binario con signo)

R+1

Mi

Mi
R

CY se pondr en
ON cuando exista un acarreo.

Salida

343

Obligatorio

Salida

345

Obligatorio

(Binario con signo)

Resta datos y/o constantes BCD de 4 dgitos (un canal).

Su

Obligatorio

CY

-CY

339

(Binario con signo)

Resta datos y/o constantes hexadecimales de 8 dgitos (dos canales)


con el indicador de acarreo (CY).

Salida

CY

CY

Su

--B(414)

Mi

--

Mi

Mi: Canal de
minuendo
Su: Canal de
sustraendo
R: Canal de
resultado

44

Resta datos y/o constantes hexadecimales de 4 dgitos (un canal).

2-2

Mi: Canal de
minuendo
Su: Canal de
sustraendo
R: Canal de
resultado
RESTA BCD SIN
ACARREO

Ubicacin
Condicin
de ejecucin

Su

Mi: Canal de
minuendo
Su: Canal de
sustraendo
R: Canal de
resultado
DOUBLE
SIGNED BINARY
WITH CARRY

Funcin

Mi

Mi: Canal de
minuendo
Su: Canal de
sustraendo
R: Canal de
resultado
RESTA BINARIA
DOBLE CON
SIGNO SIN
ACARREO

Seccin

(BCD)

--

Su

(BCD)

CY

(BCD)

Salida
Obligatorio

347

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DOBLE RESTA
BCD SIN
ACARREO

Smbolo/operan
do

--BL(415)
Su

415

R
Mi: Primer canal
de minuendo
Su: Primer canal
de sustraendo
R: Primer canal
de resultado

--BC
@--BC
416

--BC(416)
Mi

--BCL
@--BCL
417

Mi
Su

*
@*
420

DOBLE
MULTIPLICACI
N BINARIA CON
SIGNO
*L
@*L
421

CY se pondr
en ON cuando
exista un acarreo negativo.

Salida

Mi +1

Mi

(BCD)

--

Su+1

Su

(BCD)

CY

R+1

(BCD)

Resta datos y/o constantes BCD de 4 dgitos (un canal) con el


indicador de acarreo (CY).
Mi
(BCD)
Su
-CY se pondr
en ON cuando
exista un acarreo negativo.

Su

-CY

R+1

Md

(Binario con signo)

Mr

(Binario con signo)

R +1

(Binario con signo)

Mr
R

Multiplica datos y/o constantes hexadecimales con signo de 8 dgitos.

Md: Primer canal


de multiplicando
Mr: Primer canal
de multiplicador
R: Primer canal
de resultado

R+3

R+2

Obligatorio

Salida

353

Obligatorio

(BCD)

Md

Md

352

CY

Multiplica datos y/o constantes hexadecimales con signo de 4 dgitos.

*L(421)

Salida

(BCD)

*(420)

Md: Canal de
multiplicando
Mr: Canal de
multiplicador
R: Canal de
resultado

348

Obligatorio

(BCD)

Su+1

Mr

Pgi
na

(BCD)

Resta datos y/o constantes BCD de 8 dgitos (dos canales) con el


indicador de acarreo (CY).
Mi +1
Mi
(BCD)

CY se pondr
en ON cuando
exista un acarreo negativo.

2-2

CY

CY

R
Mi: Primer canal
de minuendo
Su: Primer canal
de sustraendo
R: Primer canal
de resultado

MULTIPLICACI
N BINARIA CON
SIGNO

Resta datos y/o constantes BCD de 8 dgitos (dos canales).

--BCL(417)

Ubicacin
Condicin
de ejecucin

Su
Mi: Canal de
minuendo
Su: Canal de
sustraendo
R: Canal de
resultado

DOUBLE RESTA
BCD CON
ACARREO

Funcin

Mi

--BL
@--BL

RESTA BCD
CON ACARREO

Seccin

Md + 1

Md

Mr + 1

Mr

R+1

Salida

355

Obligatorio

Salida

357

Obligatorio
(Binario con signo)
(Binario con signo)
(Binario con signo)

45

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
MULTIPLICACI
N BINARIA SIN
SIGNO
*U
@*U
422

Seccin

Smbolo/operan
do

*U(422)

Funcin

Condicin
de ejecucin
Multiplica datos y/o constantes hexadecimales sin signo de 4 dgitos.

Md

*UL
@*UL
423

MULTIPLICACI
N BCD
*B
@*B
424

Md

(Binario sin signo)

Mr

(Binario sin signo)

R +1

(Binario sin signo)

*UL(423)

Multiplica datos y/o constantes hexadecimales sin signo de 8 dgitos.

Md

*BL
@*BL
425

R
Md: Primer canal
de multiplicando
Mr: Primer canal
de multiplicador
R: Primer canal
de resultado

*B(424)

R+3

R+2

*BL(425)

Mr

R+1

360

Obligatorio

(Binario sin signo)


(Binario sin signo)

Md

(BCD)

Mr

(BCD)

R +1

(BCD)

Md + 1

Md

Mr + 1

Mr

R+1

Mr
R

Dr
R

R+3

R+2

Salida

363

Obligatorio

(BCD)
(BCD)

Dr

(Binario con signo)

R +1

(Binario con signo)

Cociente

362

(BCD)

Divide datos y/o constantes hexadecimales con signo de 4 dgitos (un


canal).
Dd
(Binario con signo)

Resto

Salida
Obligatorio

Multiplica datos y/o constantes BCD de 8 dgitos (dos canales).

Md

Dd: Canal de
dividendo
Dr: Canal de
divisor
R: Canal de
resultado

46

Mr + 1

Salida

(Binario sin signo)

Dd

430

Md

Multiplica datos y/o constantes BCD de 4 dgitos (un canal).

Mr

/(430)
/
@/

Md + 1

Md

Md: Primer canal


de multiplicando
Mr: Primer canal
de multiplicador
R: Primer canal
de resultado
DIVISIN
BINARIA CON
SIGNO

359

Obligatorio

Mr

Md: Canal de
multiplicando
Mr: Canal de
multiplicador
R: Canal de
resultado
DOBLE
MULTIPLICACI
N BCD

Salida

Pgi
na

Mr
Md: Canal de
multiplicando
Mr: Canal de
multiplicador
R: Canal de
resultado

DOBLE
MULTIPLICACI
N BINARIA SIN
SIGNO

Ubicacin

2-2

Salida
Obligatorio

365

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
DOBLE
DIVISIN
BINARIA CON
SIGNO
/L
@/L
431

DIVISIN
BINARIA SIN
SIGNO

/L(431)
Dd
Dr
R
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor
R: Primer canal
de resultado

/U(432)

Divide datos y/o constantes hexadecimales con signo de 8 dgitos


(dos canales).
Dd + 1
Dd
(Binario con signo)

R+3

R+2

Resto

Dr + 1

Dr

R+1

432

DOBLE
DIVISIN
BINARIA SIN
SIGNO
/UL
@/UL
433

DIVISIN BCD

(Binario sin signo)

Dr

(Binario sin signo)

R +1

(Binario sin signo)

Dd
Dr
R
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor
R: Primer canal
de resultado

/B(434)

/B
@/B

Dd

434

Dr

Resto

Divide datos y/o constantes hexadecimales sin signo de 8 dgitos


(dos canales).
Dd + 1
Dd
(Binario sin signo)

R+3

R+2

Resto

/BL
@/BL
435

/BL(435)

Dr + 1

Dr

R+1

Salida

370

Obligatorio

(Binario sin signo)

Dd

(BCD)

Dr

(BCD)

R +1

(BCD)

Resto

R+2
Resto

371

Obligatorio

Divide datos y/o constantes BCD de 8 dgitos (dos canales).

R+3

Salida

Cociente

Dd + 1

Dd

Dr + 1

Dr

R+1

Dr
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor
R: Primer canal
de resultado

Obligatorio

Cociente

Dd
R

368

(Binario sin signo)

Divide datos y/o constantes BCD de 4 dgitos (un canal).

Dd: Canal de
dividendo
Dr: Canal de
divisor
R: Canal de
resultado

Salida

Cociente

DOBLE
DIVISIN BCD

(Binario con signo)

Dd

Dr

/UL(433)

366

Obligatorio

(Binario con signo)

Divide datos y/o constantes hexadecimales sin signo de 4 dgitos (un


canal).

Dd: Canal de
dividendo
Dr: Canal de
divisor
R: Canal de
resultado

Pgi
na

Cociente

Dd

/U
@/U

Salida

2-2

Salida

373

Obligatorio
(BCD)
(BCD)
(BCD)

Cociente

47

Funciones de instruccin

Seccin

2-2

2-2-10 Instrucciones de conversin


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
BCD A BINARIO
BIN
@BIN
023

BIN(023)

Convierte los datos BCD en datos binarios.

(BCD)

Salida
(BIN)

Pgi
na

375

Obligatorio

R
S: Canal fuente
R: Canal de
resultado

BCD A BINARIO
DOBLE
BINL
@BINL
058

BINARIO A BCD
BCD
@BCD
024

BINL(058)

S
R

Convierte datos BCD de 8 dgitos en datos hexadecimales de 8


dgitos (binarios de 32 bits).
(BCD)
(BIN)
R
(BCD)

Salida

376

Obligatorio

(BIN)

R+1

S: Primer canal
fuente
R: Primer canal
de resultado
BCD(024)

Convierte un canal de datos binarios en uno de datos BCD.

(BIN)

(BCD)

Salida

378

Obligatorio

R
S: Canal fuente
R: Canal de
resultado

BINARIO A BCD
DOBLE
BCDL
@BCDL
059

COMPLEMENTO
A2
NEG
@NEG
160

DOBLE
COMPLEMENTO
A2
NEGL
@NEGL
161

BINARIO CON
SIGNO DE 16 A
32 BITS
SIGN
@SIGN
600

BCDL(059)

Convierte datos hexadecimales de 8 dgitos (binarios de 32 bits) en


datos BCD de 8 dgitos.
(BIN)
R
(BCD)

(BIN)

R+1

379

Obligatorio

(BCD)

S: Primer canal
fuente
R: Primer canal
de resultado
NEG(160)

Calcula el complemento a 2 de un canal de datos hexadecimales.


Complemento a 2
(Complemento + 1)
(S)
(R)

S
R

Salida

381

Obligatorio

S: Canal fuente
R: Canal de
resultado
NEGL(161)

Calcula el complemento a 2 de dos canales de datos hexadecimales.

(S+1, S)

Salida

382

Obligatorio

Complemento a 2
(Complemento + 1)

(R+1, R)

S: Primer canal
fuente
R: Primer canal
de resultado
SIGN(600)

S
R
S: Canal fuente
R: Primer canal
de resultado

Expande un valor binario con signo de 16 bits a su equivalente de 32


bits.
MSB
S
MSB = 0:
0000 hex.

MSB = 1:
FFFF hex.
D+1

D
D = Contenido de S

48

Salida

Salida
Obligatorio

384

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DECODIFICADO
R DE DATOS

Seccin

Smbolo/operan
do

MLPX(076)

MLPX
@MLPX

076

Funcin

Ubicacin
Condicin
de ejecucin

Lee el valor numrico del dgito especificado (o byte) en el canal


fuente, pone en ON el bit correspondiente en el canal de resultado (o
rango de 16 canales) y pone en OFF los otros bits del canal de
resultado (o rango de 16 canales).
Conversin de 4 a 16

Salida

2-2
Pgi
na
385

Obligatorio

C
=1 (Convertir 2 dgitos).

S: Canal fuente
C: Canal de
control
R: Primer canal
de resultado

n=2 (Comenzar con el


segundo dgito).
4Decodificacin de 4-a-16 bits
(El bit m de R se pone en ON).
R
R+1
Conversin de 8 a 256
C
=1 (Convertir 2 bytes).
n=1 (Comenzar con el
primer byte).
8Decodificacin de 8-a-256 bits
(El bit m de R a R+15 se pone en
ON).
R+1

R+14
R+15
R+16
R+17

R+30
R+31

Se utilizan dos rangos de 16 canales


cuando especifica
2 bytes.

49

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
CODIFICADOR
DE DATOS

Seccin

Smbolo/operan
do

DMPX(077)

DMPX
@DMPX

077

Funcin

Ubicacin
Condicin
de ejecucin

Encuentra la ubicacin del primer o el ltimo bit ON en el canal fuente


(o el rango de 16 canales) y escribe dicho valor en el dgito (o byte)
especificado en el canal de resultado.
Conversin de 16 a 4
C
Busca el bit de la izquierda
(Direccin de bit ms alta)

S: Primer canal
fuente
R: Canal de
resultado
C: Canal de
control

Salida

2-2
Pgi
na
390

Obligatorio

=1 (Convertir
2 canales).

Decodificacin de
16-a-4 bits
(La ubicacin del bit
de la izquierda (m)
se escribe en R).

Bit de la izquierda

Bit de la derecha

n=2 (Comenzar con el dgito 2).

R
Conversin de 256 a 8
C
=0 (Convertir un rango de 16 canales).

Bit de la izquierda

Busca el bit de la izquierda


(Direccin de bit ms alta)
Decodificacin de 256-a-8 bits
(La ubicacin del bit de la izquierda del
rango de 16 canales (m) se escribe en R).
n=1 (Comenzar con el byte 1).
R
CONVERSIN
ASCII

ASC(086)

ASC
@ASC

Di

086

D
S: Canal fuente
Di: Indicador de
dgito
D: Primer canal
de destino

50

Convierte dgitos hexadecimales de 4 bits del canal fuente en sus


equivalentes ASCII de 8 bits.
Di
Primer dgito a convertir

Nmero de
dgitos
(n+1)
Izquierda (1)

Derecha (0)

Salida
Obligatorio

393

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
ASCII A HEX
HEX
@HEX
162

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Convierte hasta 4 bytes de datos ASCII del canal fuente en sus


equivalentes hexadecimales y escribe estos dgitos en el canal de
destino especificado.

Di

Di

HEX(162)

Salida

Pgi
na
397

Obligatorio

C: 0021

2-2

Primer byte a convertir

S: Primer canal
fuente
Di: Indicador de
dgito
D: Canal de
destino

Izquierda (1)

Derecha (0)

Nmero de dgitos (n+1)


Primer dgito a escribir

COLUMNA A
LNEA

LINE(063)

LINE
@LINE

063

D
S: Primer canal
fuente
N: Nmero de bit
D: Canal de
destino

Convierte una columna de bits de un rango de 16 canales (el mismo


nmero de bits en 16 canales consecutivos) en los 16 bits del canal
de destino.
N
Bit
Bit
15
00

S
S+1
S+2
S+3
.
.
.

0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 1

S+15

0 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0

0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1

.
.
.

.
.
.

.
.
.

D
COLM(064)

COLM
@COLM

064

N
S: Canal fuente
D: Primer canal
de destino
N: Nmero de bit

401

Obligatorio

1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1

Bit
15

LNEA A
COLUMNA

Salida

Bit
00

. . .

0 1 1 1

Convierte los 16 bits del canal fuente en una columna de bits con un
rango de 16 canales de los canales de destino (el mismo nmero de
bits en 16 canales consecutivos).
Bit
15

Salida

403

Obligatorio

Bit
00

0 1 1 1

Bi

Bit
15

Bit
00

D
D+1
D+2
D+3
.
.
.

0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1

D+15

0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0

1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1

.
.
.

.
.
.

.
.
.

51

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
BCD CON
SIGNO A
BINARIO
BINS
@BINS
470

Smbolo/operan
do

BINS(470)

BISL
@BISL
472

BISL(472)

BCDS(471)

405

Obligatorio

Binario con signo

Convierte los datos BCD doble con signo en datos binarios doble con
signo.

BDSL(473)

BCD con signo

Binario con signo

BCD con signo

Binario con signo

Convierte un canal de datos binarios con signo a otro con datos BCD
con signo.

407

Obligatorio

Salida

410

Obligatorio

Formato BCD con signo especificado en C


Binario con signo

BCD con signo

Convierte los datos binarios doble con signo en datos BCD doble con
signo.

C
S

Formato BCD con signo especificado en C

D
C: Canal de
control
S: Primer canal
fuente
D: Primer canal
de destino

Salida

Formato BCD con signo


especificado en C

C: Canal de
control
S: Canal fuente
D: Canal de
destino

52

BCD con signo

471

473

Salida

Pgi
na

Formato BCD con signo


especificado en C

BDSL
@BDSL

Convierte un canal de datos BCD con signo en otro con datos


binarios con signo.

2-2

BCDS
@BCDS

DOBLE BINARIO
CON SIGNO A
BCD

Ubicacin
Condicin
de ejecucin

C: Canal de
control
S: Primer canal
fuente
D: Primer canal
de destino
BINARIO CON
SIGNO A BCD

Funcin

C: Canal de
control
S: Canal fuente
D: Canal de
destino
DOBLE BCD
CON SIGNO A
BINARIO

Seccin

Binario con signo

BCD con signo

Binario con signo

BCD con signo

Salida
Obligatorio

413

Funciones de instruccin

Seccin

2-2

2-2-11 Instrucciones lgicas


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
AND LGICA
ANDW
@ANDW
034

ANDW(034)

I1
I2
R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

DOBLE AND
LGICA

ANDL(610)

ANDL
@ANDL
610

I1
I2
R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

OR LGICA
ORW
@ORW
035

ORW(035)

I1
I2
R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

DOBLE OR
LGICA

ORWL(611)

ORWL
@ORWL
611

I1
I2
R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

OR EXCLUSIVA
XORW
@XORW
036

XORW(036)

I1
I2
R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

Ubicacin

Operacin lgica AND de los bits correspondientes de datos de


canales y/o constantes.

Salida

Pgi
na

417

Obligatorio

I1. I2 R

I1

I2

Operacin lgica AND de los bits correspondientes de datos de canal


y/o constantes dobles.

Salida

419

Obligatorio

(I1, I1+1). (I2, I2+1) (R, R+1)

I1, I1+1

I2, I2+1

R, R+1

Operacin lgica OR de los bits correspondientes de datos de canal


y/o constantes.

Salida

420

Obligatorio

I1 + I2 R

I1

I2

Operacin lgica OR de los bits correspondientes de datos de canal


y/o constantes dobles.

Salida

422

Obligatorio

(I1, I1+1) + (I2, I2+1) (R, R+1)

I1, I1+1

I2, I2+1

R, R+1

Operacin lgica OR exclusiva de los bits correspondientes de datos


de canales y/o constantes.

Salida

424

Obligatorio

I1. I2 + I1.I2 R

I1

I2

53

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DOBLE OR
EXCLUSIVA

Smbolo/operan
do

XORL(612)

I1

XORL
@XORL

I2

612

R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

EXCLUSIVE
NOR

XNRW(037)

I1

XNRW
@XNRW

I2

037

R
I1: Entrada 1
I2: Entrada 2
R: Canal de
resultado

DOUBLE
EXCLUSIVE
NOR

XNRL(613)

I1

XNRL
@XNRL

I2
R

613

I1: Entrada 1
I2: Entrada 2
R: Primer canal
de resultado
COMPLEMENT
COM
@COM
029
DOUBLE
COMPLEMENT

Seccin

COM(029)

Wd

Funcin

Ubicacin
Condicin
de ejecucin

Operacin lgica OR exclusiva de los bits correspondientes de datos


de canales y/o constantes dobles.

Salida

2-2
Pgi
na
426

Obligatorio

(I1, I1+1). (I2, I2+1) + (I1, I1+1). (I2, I2+1) (R, R+1)

I1, I1+1

I2, I2+1

R, R+1

Operacin lgica NOR exclusiva de los bits correspondientes de


datos de canales y/o constantes.

Salida

427

Obligatorio

I1. I2 + I1.I2 R

I1

I2

Operacin lgica NOR exclusiva de los bits correspondientes de


datos de canales y/o constantes dobles.

Salida

429

Obligatorio

(I1, I1+1). (I2, I2+1) + (I1, I1+1). (I2, I2+1) (R, R+1)

I1, I1+1

I2, I2+1

R, R+1

Pone en OFF todos los bits en ON y viceversa, en Wd.

Salida

431

Obligatorio

WdWd: 1 0 y 0 1

Wd: Canal
COML(614)

Wd
COML
@COML Wd: Canal
614

Pone en OFF todos los bits en ON y viceversa, en Wd y Wd+1.

Salida

432

Obligatorio

(Wd+1, Wd)(Wd+1, Wd)

2-2-12 Instrucciones matemticas especiales


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
BINARY ROOT
ROTB
@ROTB
620

ROTB(620)

ROOT(072)

ROOT
@ROOT
072

54

Salida

434

Obligatorio

R
S: Primer canal
fuente
R: Canal de
resultado

BCD RAZ
CUADRADA

Calcula la raz cuadrada del contenido binario de 32 bits de los


canales especificados y enva la parte entera del resultado al canal
de resultado especificado.

Pgi
na

S
R
S: Primer canal
fuente
R: Canal de
resultado

S+1

Datos binarios (32 bits)

Datos binarios (16 bits)

Calcula la raz cuadrada del nmero BCD de 8 dgitos y enva la parte


entera del resultado al canal de resultado especificado
S+1

Datos BCD (8 dgitos)

R
Datos BCD (4 dgitos)

Salida
Obligatorio

436

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
PROCESOS
ARITMTICOS
APR
@APR
069

Seccin

Smbolo/operan
do

APR(069)

C
S

Funcin

Ubicacin
Condicin
de ejecucin

Calcula el seno, el coseno, o una extrapolacin lineal de los datos


fuente.
La funcin de extrapolacin lineal permite que cualquier relacin
entre X e Y se aproxime a los segmentos de lnea.

Salida

Divide un nmero de coma flotante de 7 dgitos por otro. Los nmeros


de coma flotante se expresan en notacin cientfica (mantisa de 7
dgitos y exponente de 1 dgito).
Cociente

Salida

2-2
Pgi
na
439

Obligatorio

R
C: Canal de
control
S: Datos fuente
R: Canal de
resultado

DIVISIN EN
COMA
FLOTANTE

FDIV(079)

Dd

FDIV
@FDIV
079

Dr
R
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor
R: Primer canal
de resultado

CONTADOR DE
BIT
BCNT
@BCNT
067

BCNT(067)

Dr+1

Dr

Dd+1

Dd

Salida

447

Obligatorio
N canales

S
N: Nmero de
canales
S: Primer canal
fuente
R: Canal de
resultado

Cuenta el nmero total de bits ON de los canales especificados.

N
R

R+1

443

Obligatorio

Cuenta el nmero
de bits ON.

a
S+(N--1)

Resultado binario
R

2-2-13 Instrucciones matemticas de coma flotante


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
COMA
FLOTANTE A 16
BITS
FIX
@FIX
450

COMA
FLOTANTE A 32
BITS
FIXL
@FIXL
451

DE 16 BITS A
COMA
FLOTANTE

FIX(450)
S
R

452

S+1

S: Primer canal
fuente
R: Canal de
resultado
FIXL(451)

S
R
S: Primer canal
fuente
R: Primer canal
de resultado

Datos de coma
flotante (32 bits)

Datos binarios con


signo (16 bits)

Convierte un valor de coma flotante de 32 bits en datos binarios con


signo de 32 bits y sita el resultado en los canales de resultado
especificados.
S+1

Datos de coma
flotante (32 bits)

R+1

Datos binarios con


signo (32 bits)

Convierte un valor binario con signo de 16 bits en datos de coma


flotante de 32 bits y sita el resultado en los canales de resultado
especificados.

Datos binarios con


signo (16 bits)

Datos de coma flotante (32 bits)

FLT(452)

FLT
@FLT

Convierte un valor de coma flotante de 32 bits en datos binarios con


signo de 16 bits y sita el resultado en el canal de resultado
especificado.

S: Canal fuente
R: Primer canal
de resultado

R+1

Salida

Pgi
na

454

Obligatorio

Salida

456

Obligatorio

Salida

457

Obligatorio

55

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
DE 32 BITS A
COMA
FLOTANTE
FLTL
@FLTL
453

FLOATING-POIN
T ADD
+F
@+F
454

Smbolo/operan
do

FLTL(453)

--F
@--F
455

+F(454)
Au

Convierte un valor binario con signo de 32 bits en datos de coma


flotante de 32 bits y sita el resultado en los canales de resultado
especificados.

--F(455)

/F
@/F

Dr

457

R
Dd: Primer canal
de dividendo
Dr: Primer canal
de divisor
R: Primer canal
de resultado

*F(456)

--

Mr

456

56

Datos de coma flotante (32 bits)

Au+1

Au

Sumando (datos de
coma flotante, 32 bits)

Ad+1

Ad

Nmero adicional (datos de coma flotante,


32 bits)

R+1

Resultado (datos de
coma flotante, 32
bits)

Mi+1

Mi

Minuendo (datos de
coma flotante, 32 bits)

Su+1

Su

Sustraendo (datos de
coma flotante, 32 bits)

R+1

Resultado (datos de
coma flotante, 32 bits)

RAD(458)

S
R
S: Primer canal
fuente
R: Primer canal
de resultado

Dd+1

Dd

Dividendo (datos de
coma flotante, 32 bits)

Dr+1

Dr

Divisor (datos de coma flotante, 32 bits)

R+1

Resultado (datos de
coma flotante, 32 bits)

Multiplica dos nmeros de coma flotante de 32 bits y sita el


resultado en los canales de resultado especificados.

Md: Primer canal


de multiplicando
Mr: Primer canal
de multiplicador
R: Primer canal
de resultado

458

R+1

Divide un nmero de coma flotante de 32 bits por otro y sita el


resultado en los canales de resultado especificados.

Md

*F
@*F

RAD
@RAD

Datos binarios con


signo (32 bits)

Mi

Dd

GRADOS A
RADIANES

Resta un nmero de coma flotante de 32 bits a otro y sita el


resultado en los canales de resultado especificados.

Su

/F(457)

MULTIPLICACI
N EN COMA
FLOTANTE

S+1

Suma dos nmeros de coma flotante de 32 bits y sita el resultado en


los canales de resultado especificados.

Ad
R

Ubicacin
Condicin
de ejecucin

S: Primer canal
fuente
R: Primer canal
de resultado

Mi: Primer canal


de minuendo
Su: Primer canal
de sustraendo
R: Primer canal
de resultado
DIVISIN EN
COMA
FLOTANTE

Funcin

Au: Primer canal


de sumando
AD: Primer canal
de sumando
R: Primer canal
de resultado
FLOATING-POIN
T SUBTRACT

Seccin

Md+1

Md

Multiplicando (datos de
coma flotante, 32 bits)

Mr+1

Mr

Multiplicador (datos de
coma flotante, 32 bits)

R+1

Resultado (datos de
coma flotante, 32 bits)

Cambia un nmero de coma flotante de 32 bits de grados a radianes


y sita el resultado en los canales de resultado especificados.
S+1

Fuente (grados, datos de


coma flotante de 32 bits)

R+1

Resultado (radianes, datos


de coma flotante de 32 bits)

Salida

2-2
Pgi
na
459

Obligatorio

Salida

460

Obligatorio

Salida

462

Obligatorio

Salida

466

Obligatorio

Salida

464

Obligatorio

Salida
Obligatorio

468

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
RADIANES A
GRADOS
DEG
@DEG
459

SENO
SIN
@SIN
460

Seccin

Smbolo/operan
do

DEG(459)

Funcin

Condicin
de ejecucin
Cambia un nmero de coma flotante de 32 bits de radianes a grados,
y sita el resultado en los canales de resultado especificados.

S
R
S: Primer canal
fuente
R: Primer canal
de resultado

COS
@COS
461

TAN
@TAN
462

ASIN
@ASIN
463

ACOS
@ACOS
464

R+1

Resultado (grados, datos


de coma flotante de 32
bits)

SIN

COS(461)

S
R

TAN(462)

S
R

ASIN(463)

S
R
S: Primer canal
fuente
R: Primer canal
de resultado

ARCO COSENO

Fuente (radianes, datos de


coma flotante de 32 bits)

ACOS(464)

S
R
S: Primer canal
fuente
R: Primer canal
de resultado

S+1

Fuente (datos de
coma flotante de
32 bits)

R+1

Resultado (datos
de coma flotante
de 32 bits)

Calcula el coseno de un nmero de coma flotante de 32 bits (en


radianes) y sita el resultado en los canales de resultado
especificados.
Fuente (datos
S
de coma flotante
COS
S+1
de 32 bits)
R+1

Salida

Pgi
na
470

Obligatorio

Salida

472

Obligatorio

Salida

474

Obligatorio

Resultado (datos
de coma flotante
de 32 bits)

Calcula la tangente de un nmero de coma flotante de 32 bits (en


radianes) y sita el resultado en los canales de resultado
especificados.
Fuente (datos
S
TAN
S+1
de coma flotante

Salida

476

Obligatorio

de 32 bits)

S: Primer canal
fuente
R: Primer canal
de resultado
ARCO SENO

S: Primer canal
fuente
R: Primer canal
de resultado
TANGENTE

S+1

Calcula el seno de un nmero de coma flotante de 32 bits (en


radianes) y sita el resultado en los canales de resultado
especificados.

SIN(460)

S: Primer canal
fuente
R: Primer canal
de resultado
COSENO

Ubicacin

2-2

R+1

Resultado (datos
de coma flotante
de 32 bits)

Calcula el arco seno de un nmero de coma flotante de 32 bits y sita


el resultado en los canales de resultado especificados. (La funcin de
arco seno es la inversa a la funcin de seno; calcula el ngulo que
produce un valor de seno dado entre --1 y 1).
Fuente (datos
S
de coma flotante
SIN--1
S+1
de 32 bits)
R+1

S+1

R+1

478

Obligatorio

Resultado (datos de coma


flotante de 32
bits)

Calcula el arco coseno de un nmero de coma flotante de 32 bits y


sita el resultado en los canales de resultado especificados. (La
funcin de arco coseno es la inversa a la funcin de coseno; calcula
el ngulo que produce un valor de coseno dado entre --1 y 1).
COS--1

Salida

Salida

479

Obligatorio

Fuente (datos
de coma flotante
de 32 bits)
Resultado (datos
de coma flotante
de 32 bits)

57

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
ARCO
TANGENTE

ATAN(465)

ATAN
@ATAN
465

RAZ
CUADRADA

S
R
S: Primer canal
fuente
R: Primer canal
de resultado

SQRT(466)

SQRT
@SQRT
466

EXPONENTE
EXP
@EXP
467

LOG
@LOG
468

EXP(467)

S
R

LOG(468)

S
R

PWR
@PWR
840

PWR(840)

Fuente (datos
de coma flotante
de 32 bits)

R+1

Resultado (datos de coma


flotante de 32
bits)

S+1

R+1

481

Obligatorio

Salida

483

Obligatorio

Resultado (datos de coma


flotante de 32
bits)
Salida

485

Obligatorio

R+1

Resultado (datos de coma


flotante de 32
bits)

Calcula el logaritmo natural (de base e) de un nmero de coma


flotante de 32 bits y sita el resultado en los canales de resultado
especificados.
Fuente (datos
S
de coma flotante
loge
S+1
de 32 bits)
R+1

Potencia
E+1
B+1

E
R+1
Base

Salida

487

Obligatorio

Resultado (datos
de coma flotante
de 32 bits)

Eleva un nmero de coma flotante de 32 bits a la potencia de otro


nmero igual.

E
R

Salida

Pgi
na

Fuente (datos
de coma flotante
de 32 bits)

Calcula el exponencial natural (de base e) de un nmero de coma


flotante de 32 bits y sita el resultado en los canales de resultado
especificados.
Fuente (datos
de coma flotante
S
S+1
de 32 bits)

B: Primer canal
de base
E: Primer canal
de exponente
R: Primer canal
de resultado

58

S+1

Calcula la raz cuadrada de un nmero de coma flotante de 32 bits y


sita el resultado en los canales de resultado especificados.

S: Primer canal
fuente
R: Primer canal
de resultado

S: Primer canal
fuente
R: Primer canal
de resultado
POTENCIA
EXPONENCIAL

TAN--1

S: Primer canal
fuente
R: Primer canal
de resultado

LOGARITMO

Calcula el arco tangente de un nmero de coma flotante de 32 bits y


sita el resultado en los canales de resultado especificados. (La
funcin de arco tangente es la inversa a la funcin de tangente;
calcula el ngulo que produce un valor de tangente dado).

2-2

Salida
Obligatorio

489

Funciones de instruccin

Seccin

2-2

2-2-14 Instrucciones de procesamiento de datos de tabla


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de
ejecucin

Cdigo
FIJAR STACK
SSET
@SSET
630

SSET(630)

TB

Define una pila de la longitud especificada que comienza en el canal


especificado e inicializa los canales en la regin de datos,
ponindolos a cero.
Direccin de memo-

494

Obligatorio

ria de E/S interna

N
TB: Primera
direccin de pila
N: Nmero de
canales

Salida

Pgi
na

TB

m+(N--1)

TB+1

ltimo canal de la pila

N canales apilados

TB+2
TB+3

Puntero
de pila
m+(N--1)

MOVER AL
STACK

PUSH(632)

PUSH
@PUSH
632

PRIMERO EN
ENTRAR
PRIMERO EN
SALIR

TB
S
TB: Primera
direccin de pila
S: Canal fuente

FIFO(633)

TB

FIFO
@FIFO
633

Escribe un canal de datos en la pila especificada.


Direccin de memoria de E/S interna
TB

497

Obligatorio

TB

TB+1

TB+1

TB+2
TB+3

TB+2
TB+3

PUSH(632)

Lee el primer canal de datos escritos en la pila especificada (los datos


ms antiguos de la pila).
Direccin de memoria de E/S interna

D
TB: Primera
direccin de pila
D: Canal de
destino

Salida
Direccin de
memoria de
E/S interna

TB

Direccin de memoria de E/S interna

TB
Datos
ms anti- TB+1
guos
TB+2

Puntero TB+1
de pila
TB+2
TB+3

Salida

500

Obligatorio

m --1

TB+3
Puntero
de pila

m --1

Primero en entrar primero en salir


LTIMO EN
ENTRAR
PRIMERO EN
SALIR

LIFO(634)

TB

LIFO
@LIFO
634

D
TB: Primera
direccin de pila
D: Canal de
destino

Lee el ltimo canal de datos escritos en la pila especificada (los datos


ms recientes de la pila).
Puntero de
pila TB
TB+1

Direccin de memoria de E/S interna


Datos ms
recientes

Salida

503

Obligatorio

Direccin de memoria de E/S interna

TB
TB+1

TB+2

TB+2

TB+3

TB+3
Puntero
de pila

m --1

El puntero
disminuye.

m --1

m --1

A permanece sin
cambios.

ltimo en entrar primero en salir

59

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin

Cdigo
DIMENSIONAR
TABLA DE
REGISTROS
DIM
@DIM
631

DIM(631)

Define una tabla de registros declarando la longitud de cada registro y


el nmero de registros. Se pueden definir hasta 16 tablas de registro.

Condicin
de
ejecucin
Salida

2-2
Pgi
na

506

Obligatorio

Nmero de tabla (N)

LR

Registro 1

NR
TB
N: Nmero de
tabla
LR: Longitud de
cada registro
NR: Nmero de
registros
TB: Primer canal
de tabla

FIJAR
LOCALIZACIN
REGISTRO
SETR
@SETR
635

SETR(635)

N
R

Nmero de registros

Registro NR

Escribe una ubicacin del registro especificado (la direccin de


memoria de E/S interna del principio del registro) en el registro de
ndice especificado.
Direccin de memoria
Nmero de tabla (N)
de E/S interna

D
R

N: Nmero de
tabla
R: Nmero de
registro
D: Registro de
ndice de destino
OBTENER
NMERO DE
REGISTRO

GETR(636)

GETR
@GETR
636

Canales LR NR

509

Obligatorio

SETR(635) escribe la direccin de memoria


de E/S interna (m) del primer canal del registro R en el registro de ndice D.

Nmero de
registro (R)

Devuelve el nmero de registro del registro situado en la direccin de


memoria de E/S interna contenida en el registro de ndice
especificado.

Salida

511

Obligatorio

Nmero de tabla (N) Direccin de memo-

IR

ria de E/S interna

D
N: Nmero de
tabla
IR: Registro de
ndice
D: Canal de
destino

Salida

IR

GETR(636) escribe el
nmero de registro del
registro que incluye la
direccin de memoria
de E/S en D.

Nmero de registro (R)

n
BSQUEDA DE
DATOS
SRCH
@SRCH
181

SRCH(181)

R1

SWAP
@SWAP
637

60

R1

Cd

R1+(C--1)
Coincidencia

Cambia los bits de la izquierda y de la derecha en todos los canales


del rango.
Intercambio de la posicin de los bytes.

R1
N: Nmero de
canales
R1: Primer canal
del rango

513

Buscar

Cd

SWAP(637)

Salida
Obligatorio

Direccin de memoria de E/S interna

C: Primer canal
de control
R1: Primer canal
del rango
Cd: Datos de
comparacin
INTERCAMBIAR
BYTES

Busca un canal de datos dentro de un rango de canales.

R1
N

Salida
Obligatorio

515

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Condicin
de
ejecucin
Salida

Cdigo
ENCONTRAR
MXIMO

MAX(182)

MAX
@MAX
182

R1

MIN(183)

MIN
@MIN
183

SUMA
@SUMA
184

R1

R1

R1+(W--1)

Busca el valor mnimo del rango.

R1

180

520

Obligatorio

Canales C
Valor mn.

R1+(W--1)

Suma los bytes o canales del rango y enva el resultado a dos


canales.

Salida

523

Obligatorio

C
R1
C: Primer canal
de control
R1: Primer canal
del rango
D: Primer canal
de destino

FCS
@FCS

Salida
Direccin de memoria de E/S interna

R1

CLCULO DE
FCS

517

Obligatorio

Canales C

SUMA(184)

Pgi
na

Valor
mx.

C: Primer canal
de control
R1: Primer canal
del rango
D: Canal de
destino
SUMA

Direccin de memoria de E/S interna

D
C: Primer canal
de control
R1: Primer canal
del rango
D: Canal de
destino

ENCONTRAR
MNIMO

Busca el valor mximo del rango.

Ubicacin

2-2

FCS(180)

R1+(W--1)

Calcula el valor FCS ASCII para el rango especificado.

Salida

527

Obligatorio

R1
Unidades C

R1
D
C: Primer canal
de control
R1: Primer canal
del rango
D: Primer canal
de destino

Clculo

Conversin ASCII
Valor FCS

61

Funciones de instruccin

Seccin

2-2

2-2-15 Instrucciones de control de datos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
PID CONTROL
PID
190

PID(190)

Ejecuta el control PID de acuerdo con los parmetros especificados.


Parmetros (C a C+8)

S
Entrada de PV (S)

S: Canal de
entrada
C: Primer canal
de parmetro
D: Canal de
salida

LMT
@LMT
680

531

Obligatorio

C
D

CONTROL DE
LMITE

Salida

Pgi
na

LMT(680)

Control PID

Variable manipulada (D)

Controla los datos de salida en funcin de si los datos de entrada


estn o no dentro de los lmites superior e inferior.

Salida

542

Obligatorio

C
D
S: Canal de
entrada
C: Primer canal
de lmite
D: Canal de
salida

Lmite superior C+1

Lmite inferior C

CONTROL DE
BANDA
MUERTA
BAND
@BAND
681

BAND(681)

Controla los datos de salida en funcin de si los datos de entrada


estn o no dentro del rango de banda muerta.

Salida

ZONE
@ZONE
682

ZONE(682)

S
C
D
S: Canal de
entrada
C: Primer canal
de lmite
D: Canal de
salida

62

545

Obligatorio

C
Lmite inferior (C)

S: Canal de
entrada
C: Primer canal
de lmite
D: Canal de
salida
CONTROL DE
ZONA MUERTA

Salida

Entrada
Lmite superior (C+1)

Suma el margen especificado para datos de entrada y enva el


resultado.
Salida

Margen positivo (C+1)


Entrada
Margen negativo (C)

Salida
Obligatorio

547

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
ESCALADO
SCL
@SCL
194

Seccin

Smbolo/operan
do

SCL(194)
S

Funcin

Ubicacin
Condicin
de ejecucin

Convierte datos binarios sin signo en datos BCD sin signo, de


acuerdo con la funcin lineal especificada.
R (BCD sin signo)

Punto B

S: Canal fuente
P1: Primer canal
de parmetro
R: Canal de
resultado

Pgi
na
550

Obligatorio

El escalado se ejecuta de
acuerdo con la funcin lineal
definida por los puntos A y B.

P1
R

Salida

2-2

Punto A

(BCD)

P
P1 + 1
P1 + 2
P1 + 3

Valor convertido

(BIN)
(BCD)

Valor convertido

(BIN)

S (binario sin signo)


ESCALADO 2
SCL2
@SCL2
486

SCL2(486)

S
P1
R

Convierte datos binarios con signo en datos BCD con signo, de


acuerdo con la funcin lineal especificada. Se puede introducir un
offset cuando se define la funcin lineal.

555

Obligatorio

Offset negativo

Offset positivo

R (BCD con signo)

R (BCD con signo)

S: Canal fuente
P1: Primer canal
de parmetro
R: Canal de
resultado

Salida

Y
Y

Offset

X
S (binario con signo)

S (binario
con signo)

Offset

Offset de 0000
P1

Offset

(Binario con signo)

P1 + 1

(Binario con signo)

P1 + 2

(BCD con signo)

R (BCD con signo)

Y
Offset = 0000 hex.

X
S (binario
con signo)

63

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
ESCALADO 3
SCL3
@SCL3
487

Seccin

Smbolo/operan
do

SCL3(487)

S
P1
R
S: Canal fuente
P1: Primer canal
de parmetro
R: Canal de
resultado

Funcin

Ubicacin
Condicin
de ejecucin

Convierte datos BCD con signo en datos binarios con signo, de


acuerdo con la funcin lineal especificada. Se puede introducir un
offset cuando se define la funcin lineal.

Salida

2-2
Pgi
na
559

Obligatorio

Offset negativo

Offset positivo

R (binario con signo)

R (binario con signo)

Conversin mx.

Conversin mx.

X
Offset

Conversin mn.

X
S (BCD con signo)

Offset

S (BCD con signo)

Conversin mn.

Offset de 0000
R (binario con signo)
Conversin mx.
Y
X

S (BCD con signo)

Conversin mn.
VALOR MEDIO
AVG
195

AVG(195)

Calcula el valor medio de un canal de entrada para el nmero


especificado de ciclos.
S: Canal fuente

N
R
S: Canal fuente
N: Nmero de
ciclos
R: Canal de
resultado

N: Nmero de ciclos

R
R+1

Puntero
Indicador vlido de media

Media

R+2
R+3
N valores

R+N+1

64

Salida
Obligatorio

563

Funciones de instruccin

Seccin

2-2

2-2-16 Instrucciones de subrutinas


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
LLAMADA A
SUBRUTINA

SBS(091)

N
SBS
@SBS N: Nmero de
091 subrutina

Llama a la subrutina con el nmero de subrutina especificado y


ejecuta dicho programa.
Condicin de ejecucin ON

Salida

Pgi
na

567

Obligatorio

Programa principal

Programa de
subrutina
(SBN(092) a
RET(093))
Fin del programa

INICIO DE
SUBRUTINA

SBN(092)
SBN
092

Indica el principio del programa de subrutina con el nmero de


subrutina especificado.

N
N: Nmero de
subrutina

Salida

577

Opcional

Regin de subrutina

FIN DE
SUBRUTINA

RET(093)

Indica el final del programa de subrutina.

Salida

580

Opcional

RET
093
MACRO
MCRO
@MCRO
099

MCRO(099)

N
S

Llama a la subrutina con el nmero de subrutina especificado y


ejecuta dicho programa utilizando los parmetros de entrada en S a
S+3, y los parmetros de salida en D a D+3.

Salida

573

Obligatorio

MCRO(099)

D
N: Nmero de
subrutina
S: Primer canal
de parmetro de
entrada
D: Primer canal
de parmetro de
salida

Ejecucin de subrutina entre SBN(092) y RET(093).

MCRO(099)

La subrutina utiliza A600 a


A603 como entradas y
A604 a A607 como salidas.

65

Funciones de instruccin

Seccin

2-2

2-2-17 Instrucciones de control de interrupcin


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
FIJAR
MSCARA DE
INTERUPCIN
MSKS
@MSKS
690

MSKS(690)

N
S
N: Identificador
de interrupcin
S: Datos de
interrupcin

Configura el procesamiento de interrupcin para interrupciones de


E/S o interrupciones programadas. Tanto las tareas de interrupcin de
E/S como las programadas estn enmascaradas (inhabilitadas)
cuando el PLC se conecta por primera vez. MSKS(690) se puede
utilizar para desenmascarar o enmascarar las interrupciones de E/S y
establecer los intervalos de tiempo para interrupciones programadas.

Salida

Pgi
na

580

Obligatorio

Unidad de entrada de interrupcin 0 a 3


Interrupcin
de E/S

Enmascarar (1) o desenmascarar (0) entradas de interrupcin 0 a


7.
Intervalo de tiempo
Interrupcin
programada

LEER
MSCARA DE
INTERUPCIN
MSKR
@MSKR
692

BORRAR
INTERRUPCIN
CLI
@CLI
691

MSKR(692)

Establecer intervalo de
tiempo de interrupcin
programada.

Lee las selecciones de procesamiento de interrupcin actual que se


realizaron con MSKS(690).

Salida

Borra o retiene las entradas de interrupcin registradas para


interrupciones de E/S o selecciona el tiempo hasta la primera
interrupcin programada para interrupciones programadas.
N=0a3

Salida

D
N: Identificador
de interrupcin
D: Canal de
destino

CLI(691)
N
S
N: Identificador
de interrupcin
S: Datos de
interrupcin

Entrada de
interrupcin n

Entrada de
interrupcin n

Estado interno

Estado interno

N=4a5

Interrupcin registrada
borrada
MSKS(690)

Interrupcin registrada
retenida
Ejecucin de tarea de interrupcin programada.

Tiempo de la primera
interrupcin programada

66

586

Obligatorio

Obligatorio

590

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
INHIBIR
INTERRUPCION
ES

DI(693)

Inhabilita la ejecucin de todas las tareas de interrupcin excepto la


interrupcin de corte de alimentacin.

Salida

2-2
Pgi
na
594

Obligatorio

DI
@DI
693
Inhabilita la ejecucin de
todas las tareas de interrupcin (excepto la interrupcin de corte de alimentacin).

HABILITAR
INTERRUPCION
ES

EI(694)

Habilita la ejecucin de todas las tareas de interrupcin que se


inhabilitaron con DI(693).

Salida

595

Opcional

EI
694

Inhabilita la ejecucin de
todas las tareas de interrupcin (excepto la interrupcin de corte de alimentacin).

Activa la ejecucin de todas las tareas de interrupcin inhabilitadas.

2-2-18 Instrucciones de pasos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
DEFINIR PASO

STEP(008)

STEP
008

B
B: Bit

INICIO DE PASO

SNXT(009)

SNXT
009

B
B: Bit

Ubicacin

STEP(008) funciona de dos formas, dependiendo de su posicin y de


si se ha especificado o no un bit de control.
(1)Inicia un paso especfico.
(2)Finaliza el rea de programacin de pasos (es decir, la ejecucin
de pasos).
SNXT(009) se utiliza para lo siguiente:
(1)Iniciar la ejecucin de programacin de pasos.
(2)Proceder al siguiente bit de control de pasos.
(3)Finalizar la ejecucin de programacin de pasos.

Salida

Pgi
na

603

Obligatorio

Salida

603

Obligatorio

67

Funciones de instruccin

Seccin

2-2

2-2-19 Instrucciones de unidades de E/S bsicas


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
REFRESCO DE
E/S
IORF
@IORF
097

IORF(097)

Refresca los canales de E/S especificados.


rea de bit de E/S o
rea de bit de unidad
de E/S especial

St
E
St: Canal de
inicio
E: Canal de fin

St

Salida

Unidad de E/S o
Unidad de E/S especial

Pgi
na

620

Obligatorio

Refresco de E/S

E
DECODIFICADO
R DE 7
SEGMENTOS
SDEC
@SDEC
078

SDEC(078)

Convierte el contenido hexadecimal del los dgitos designados en un


cdigo 8 bits para display de 7 segmentos y lo sita en los 8 bits
superiores o inferiores de los canales de destino especificados.

Di

Salida

623

Obligatorio

Di

Nmero de dgitos

S: Canal fuente
Di: Indicador de
dgito
D: Primer canal
de destino

Primer dgito a convertir

8 bits de la derecha (0)


7segmentos

LECTURA DE
E/S
INTELIGENTES
IORD
@IORD
222

IORD(222)

C
S

Lee el contenido del rea de memoria de la unidad de E/S.


S
S+1
Nmero de unidad de la unidad de E/S especial

IOWR
@IOWR
223

IOWR(223)

C
S
D
C: Datos de
control
S: Transferir
fuente y nmero
de canales
D: Transferir
destino y nmero
de canales

68

625

Obligatorio

C: Datos de
control
S: Transferir
fuente y nmero
de canales
D: Transferir
destino y nmero
de canales
ESCRITURA DE
E/S
INTELIGENTES

Salida

Nmero
designado de canales ledos.

Enva el contenido del rea de memoria de E/S de la CPU a la unidad


de E/S especial.
D
D+1
Nmero unidad de unidad de E/S especial

Nmero
designado
de canales
escritos.

Salida
Obligatorio

629

Funciones de instruccin

Seccin

2-2

2-2-20 Instrucciones de comunicaciones serie


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
MACRO DE
PROTOCOLO
PMCR
@PMCR
260

PMCR(260)

Llama y ejecuta una secuencia de comunicaciones registrada en una


tarjeta o unidad de comunicaciones serie.

C1

CPU

C2
S

TRANSMITIR
TXD
@TXD
236

TXD(236)

634

Obligatorio

Unidad de comunicaciones serie


Puerto

R
C1:Canal de
control 1
C2: Canal de
control 2
S: Primer canal de
envo
R: Primer canal de
recepcin

Salida

Pgi
na

R
a

Dispositivo externo

Enva el nmero especificado de bytes de datos desde el puerto


RS-232C incorporado en la CPU.

Salida

Lee el nmero especificado de bytes de datos desde el puerto


RS-232C incorporado en la CPU.

Salida

Cambia los parmetros de comunicaciones de un puerto serie de la


CPU, de la unidad de comunicaciones serie (bus de CPU), o de la
tarjeta de comunicaciones serie. STUP(237) habilita el modo de
protocolo para que se pueda cambiar durante el funcionamiento del
PLC.

Salida

643

Obligatorio

C
N
S: Primer canal
fuente
C: Canal de
control
N: Nmero de
bytes
0000 a 0100 hex.
(0 a 256 decimal)

RECIBIR
RXD
@RXD
235

RXD(235)

648

Obligatorio

C
N
D: Primer canal
de destino
C: Canal de
control
N: Nmero de
bytes para
almacenar
0000 a 0100 hex.
(0 a 256 decimal)

CAMBIAR
SETUP DE
PUERTO SERIE
STUP
@STUP
237

STUP(237)

C
S

653

Obligatorio

C: Canal de
control (puerto)
S: Primer canal
fuente

69

Funciones de instruccin

Seccin

2-2

2-2-21 Instrucciones de red


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
ENVIAR A RED
SEND
@SEND
090

SEND(090)

Enva datos a un nodo de la red.


Nodo local
15
0

S
D
C

RECV(098)

RECV
@RECV
098

S: Primer canal
fuente
D: Primer canal
de destino
C:: Primer canal
de control
ENVIAR
COMANDO

CMND(490)

CMND
@CMND
490

Nodo local
15

C
S: Primer canal
de comando
D: Primer canal
de respuesta
C:: Primer canal
de control

Salida

668

Obligatorio

Nodo fuente
15

S
n

Enva comandos FINS y recibe la respuesta.


Nodo local
15

0
Datos
del comando
(n
bytes)

(S--1)
+ n
2

15

(D--1)
+m
2

Salida
Nodo de destino

70

S
D

Solicita la transmisin de datos desde un nodo de la red y recibe los


datos.

D
C

15

662

Obligatorio

Nodo de destino

n: Nmero
de canales
de envo

S: Primer canal
fuente
D: Primer canal
de destino
C:: Primer canal
de control
RECIBIR DE
RED

Salida

Pgi
na

Datos
de respuesta
(m
bytes)

Comando
Interpretar

Respuesta

Ejecutar

Obligatorio

672

Funciones de instruccin

Seccin

2-2

2-2-22 Instrucciones de memoria de archivos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
LEER ARCHIVO
DE DATOS
FREAD
@FREAD
700

FREAD(700)

C
S1
S2
D
C: Canal de
control
S1: Primer canal
fuente
S2: Nombre de
archivo
D: Primer canal
de destino

Lee los datos especificados o una cantidad de datos desde el archivo


de datos especificado de la memoria de archivos al rea de datos
especificada de la CPU.
Direccin de inicio de lectura
especificada en
S1+2 y S1+3

Salida

Pgi
na

681

Obligatorio

Archivo especifiCPU
cado en S2

Nmero de canales especificados en S1 y


S1+1
Tarjeta de memoria o memoria de
archivos de EM
(Especificada por
el 4 dgito de C).
Archivo especificado en S2

Nmero
de canales escritos en D y
D+1.
CPU

Nmero de
canales

Tarjeta de memoria o memoria de


archivos de EM
(Especificada por el 4 dgito de C).
ESCRIBIR
ARCHIVO DE
DATOS

FWRIT(701)

FWRIT
@FWRIT
701

D1
D2
S
C: Canal de
control
D1: Primer canal
de destino
D2:: Nombre de
archivo
S: Primer canal
fuente

Sobrescribe o anexiona datos en el archivo de datos especificado de


la memoria de archivos, con los datos especificados del rea de
datos de la CPU. Si el archivo especificado no existe, se crear un
nuevo archivo con ese nombre.
CPU
Direccin
de inicio
especificada en S

Salida

688

Obligatorio

Archivo especificado en D2

Canal de inicio especificado en


D1+2 y D1+3
Nmero de canales especificados en D1 y
D1+1

Sobrescribir
Tarjeta de memoria o memoria de
archivos de EM
(Especificada por el 4 dgito de C).

CPU
Direccin
de inicio
especificada en S

Archivo especificado en D2

Fin de
archivo

Datos
existentes

Nmero de canales especificados en D1 y


D1+1

Apndice
Tarjeta de memoria o memoria de archivos de
EM
(Especificada por el 4 dgito de C).

CPU
Direccin de
inicio especificada en S

Comienzo
de archivo

Archivo especificado en D2

Nuevo fichero creado

Nmero de canales especificados


en D1 y D1+1

Tarjeta de memoria o memoria de


archivos de EM
(Especificada por el 4 dgito de C).

71

Funciones de instruccin

Seccin

2-2

2-2-23 Instrucciones de visualizacin


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
VISUALIZAR
MENSAJE

MSG(046)

MSG
@MSG
046

Ubicacin

Lee los 16 canales especificados de ASCII extendido y muestra el


mensaje en un dispositivo perifrico, como una consola de
programacin.

Salida

Pgi
na

697

Obligatorio

M
N: Nmero de
mensaje
M: Primer canal
de mensaje

2-2-24 Instrucciones de reloj


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
SUMA DE
CALENDARIO
CADD
@CADD
730

CADD(730)

Suma la hora a los datos del calendario de los canales especificados.


C
C+1

C+2

T
T+1

R
R+1
R+2
RESTA DE
CALENDARIO
CSUB
@CSUB
731

CSUB(731)

C
T
R

C+2

SEC(065)

SEC
@SEC
065

S
D
S: Primer canal
fuente
D: Primer canal
de destino

Segundos

Da
Ao

Hora
Mes

Minutos

Segundos
Horas

Minutos

Segundos

Da
Ao

Hora
Mes

Minutos

Segundos

Da
Ao

Hora
Mes

Salida

703

-T
T+1

Minutos

Segundos
Horas

R
R+1

Minutos
Da
Ao

Segundos
Hora
Mes

Convierte los datos de tiempo en formato horas/minutos/segundos en


un tiempo equivalente en segundos slo.

Minutos

Segundos
Horas

Segundos

72

700

Obligatorio

R+2
HORAS A
SEGUNDOS

Minutos

Resta la hora a los datos del calendario de los canales especificados.


C
C+1

C: Primer canal
de calendario
T: Primer canal
de hora
R: Primer canal
de resultado

Salida

Pgi
na

Obligatorio

T
C: Primer canal
de calendario
T: Primer canal
de hora
R: Primer canal
de resultado

Ubicacin

Salida
Obligatorio

707

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
SEGUNDOS A
HORAS
HMS
@HMS
066

Seccin

Smbolo/operan
do

SEC(066)

Funcin

Condicin
de ejecucin
Convierte los datos de segundos en un tiempo equivalente en formato
horas/minutos/segundos.

DATE(735)

S
DATE
@DATE S: Primer canal
735 fuente

Salida

Pgi
na
709

Obligatorio

Segundos

S: Primer canal
fuente
D: Primer canal
de destino

Minutos

AJUSTE DEL
RELOJ

Ubicacin

2-2

Segundos
Horas

Cambia la seleccin del reloj interno por la seleccin de los canales


fuente especificados.

Salida

711

Obligatorio

CPU
Reloj interno

Nueva
seleccin

Minutos

Segundos

Da

Hora

Ao

Mes

00

Da semana

2-2-25 Instrucciones de depuracin


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Condicin
de ejecucin

Cdigo
MUESTREO DE
MEMORIA DE
SEGUIMIENTO
TRSM

TRSM(045)

Ubicacin

Cuando se ejecuta TRSM(045), el estado de un bit o canal


preseleccionado se muestrea y almacena en la memoria de
seguimiento. TRSM(045) se puede utilizar en cualquier sitio del
programa y las veces que desee.

Salida

Pgi
na

714

Opcional

045

73

Funciones de instruccin

Seccin

2-2

2-2-26 Instrucciones de diagnstico de fallos


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
ALARMA DE
FALLO

FAL(006)

FAL
@FAL
006

Genera o borra los errores no fatales definidos por el usuario. Los


errores no fatales no detienen el funcionamiento del PLC.

N
M
N: Nmero FAL
M: Primer canal
de mensaje

La ejecucin
de FAL(006)
genera un
error no fatal
con el nmero FAL N.

Indicador de error FAL en ON


Indicador de nmero FAL ejecutado
correspondiente en ON
Cdigo de error escrito en A400
Cdigo de error y tiempo escrito en el
rea de registro de errores

Salida

Pgi
na

718

Obligatorio

El indicador ERR parpadea


Mensaje en la consola de programacin

SEVERE
ALARMA DE
FALLO

FALS(007)

FALS
007

M
N: Nmero FALS
M: Primer canal
de mensaje

Genera errores fatales definidos por el usuario. Los errores fatales


detienen el funcionamiento del PLC.
La ejecucin
de FALS(007)
genera un
error fatal con
el nmero
FALS N.

Indicador de error FALS en ON


Cdigo de error escrito en A400
Cdigo de error y tiempo/fecha
escritos en el rea de registro
de errores

Salida

722

Obligatorio

El indicador ERR
se enciende
Mensaje en la consola de programacin

DETECCIN DE
PUNTO DE
FALLO
FPD
269

FPD(269)

C
T
R
C: Canal de
control
T: Tiempo de
supervisin
R: Primer canal
de registro

Diagnostica un fallo en un bloque de instrucciones, mediante la


supervisin del tiempo entre la ejecucin de FPD(269) y la ejecucin
de una salida de diagnstico, y la bsqueda de la entrada que impide
que una salida se ponga en ON.
Funcin de supervisin de tiempo:
Inicia la temporizacin cuando la condicin de
ejecucin A pasa a ON. Genera un error no
fatal si la salida B no se pone en ON dentro
del tiempo de supervisin.

Condicin de
ejecucin A

T
R
Siguiente bloque de instrucciones

Bloque de
procesamiento de
errores
(opcional)

Bloque de diagnstico lgico*


Condicin C ejecucin
diagnstico lgico

Salida de diagnstico B

Funcin de diagnstico lgico


Determina qu entrada en C impide
que la salida B se ponga en ON.

74

Salida
Obligatorio

726

Funciones de instruccin

Seccin

2-2

2-2-27 Otras instrucciones


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
ACARREO A ON

STC(040)

STC
@STC

Pone a ON el indicador de acarreo (CY).

Salida

Pgi
na

735

Obligatorio

040
ACARREO A
OFF

CLC(041)

Pone en OFF el indicador de acarreo (CY).

Salida

735

Obligatorio

CLC
@CLC
041
SELECCIONAR
BANCO DE EM
EMBC
@EMBC
281

EMBC(281)

Cambia el banco de EM actual.

Salida

736

Obligatorio

N
N: Nmero de
banco de EM

AMPLIAR
TIEMPO DE
CICLO MXIMO

WDT(094)

Extiende el tiempo de ciclo mximo, pero slo para el ciclo en el que


se ejecuta la instruccin.

Salida

738

Obligatorio

WDT T: Seleccin del


@WDT temporizador
094

2-2-28 Instrucciones de programacin de bloques


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
INICIO DE
PROGRAMA DE
BLOQUE
BPRG
096

BPRG(096)

Define un rea de programacin de bloques. Para cada BPRG(096)


debe haber un BEND(801) correspondiente.

N
N: Nmero de
programa de
bloques

Salida

Pgi
na

745

Obligatorio

Programa de bloques
Se ejecuta cuando la condicin de ejecucin est
en ON.

FIN DE
PROGRAMA DE
BLOQUE

Definir un rea de programacin de bloques. Para cada BPRG(096)


debe haber un BEND(801) correspondiente.

Salida

Detiene y reinicia el programa de bloques especificado desde otro


programa de bloques.

Programa de
bloques

745

Obligatorio

BEND
801
PAUSA BLOQUE
PROGRAMA
BPPS
811

BPPS
(811)

N
N: Nmero de
programa de
bloques

748

Obligatorio

a
a

BPPS(811) ejecutado para programa de


bloques n.

Programa de bloques n.
Una vez que se ha detenido, este programa de bloques no se ejecutar aunque el bit a est en ON.

75

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
REINICIO
BLOQUE
PROGRAMA

BPRS
(812)

BPRS
812

N: Nmero de
programa de
bloques

Detiene y reinicia el programa de bloques especificado desde otro


programa de bloques.

EXIT

B: Bit de
operando

748

EXIT(806)

Pgi
na

Obligatorio

BPRS(812) ejecutado
para programa de
bloques n.

SALIDA
BLOQUE
CONDICIONAL

Programa de
bloques

2-2

Programa de bloques n. Este


programa de bloques no se
ejecutar mientras el bit a est en ON.

EXIT(806) sin un bit de operando sale del programa si la condicin de


ejecucin est en ON.
Condicin
de ejecucin OFF

806

Condicin
de ejecucin ON

Programa de
bloques

754

Obligatorio

A ejecutado. A ejecutado.

Condicin de ejecucin

B ejecutado.

Bloque finalizado.
SALIDA
BLOQUE
CONDICIONAL
EXIT
806

EXIT(806)
B
B: Bit de
operando

EXIT(806) sin un bit de operando sale del programa si la condicin de


ejecucin est en ON.
Bit de operando en
OFF
(ON para
EXIT NOT)

Bit de operando en ON
(OFF para
EXIT NOT)

Programa de
bloques

754

Obligatorio

A ejecutado. A ejecutado.

B ejecutado.

Bloque finalizado.
SALIDA
BLOQUE
CONDICIONAL
(NOT)
EXIT NOT
806

76

EXIT NOT(806)
B
B: Bit de
operando

EXIT(806) sin un bit de operando sale del programa si la condicin de


ejecucin est en ON.

Programa de
bloques
Obligatorio

754

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
BIFURCACIN
DE BLOQUE
CONDICIONAL

Seccin

Smbolo/operan
do
IF (802)

IF

Funcin

Condicin
de ejecucin
Si la condicin de ejecucin est en ON, se ejecutarn las
instrucciones entre IF(802) y ELSE(803); si la condicin de ejecucin
est en OFF, se ejecutarn las instrucciones entre ELSE(803) e
IEND(804).
Condicin de
ejecucin

802

IF (802)
B
IF

802

B: Bit de
operando

Programa de
bloques

Pgi
na
750

Obligatorio

Condicin
ejecucin ON?

A ejecutado (entre
IF y ELSE).

BIFURCACIN
DE BLOQUE
CONDICIONAL

Ubicacin

2-2

B ejecutado (despus de ELSE).

Si el bit de operando est en ON, se ejecutarn las instrucciones


entre IF(802) y ELSE(803). Si el bit de operando est en OFF, se
ejecutarn las instrucciones entre ELSE(803) e IEND(804).

Programa de
bloques

750

Obligatorio

Bit de operando ON?

IF R (IF NOT R)

A ejecutado (entre
IF y ELSE).

BIFURCACIN
DE BLOQUE
CONDICIONAL
(NOT)
IF NOT

IF (802) NOT
B
B: Bit de
operando

B ejecutado (despus de ELSE).

Si el bit de operando est en ON se ejecutarn las instrucciones entre


IF(802) y ELSE(803), y si el bit de operando est en OFF, se
ejecutarn las instrucciones entre ELSE(803) e IEND(804).

Programa de
bloques

Si se omite la instruccin ELSE(803) y el bit de operando est en ON,


se ejecutarn las instrucciones entre IF(802) e IEND(804).

Programa de
bloques

750

Obligatorio

802
BIFURCACIN
DE BLOQUE
CONDICIONAL
(ELSE)

---

750

Obligatorio

ELSE
803
FIN DE
BIFURCACIN
DE BLOQUE
CONDICIONAL

---

Si el bit de operando est en OFF, slo se ejecutarn las


instrucciones despus de IEND(804).

Programa de
bloques

750

Obligatorio

IEND
804

77

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
UN CICLO Y
ESPERA

Seccin

Smbolo/operan
do
WAIT(805)

WAIT
805

Funcin

Ubicacin
Condicin
de ejecucin

Si la condicin de ejecucin est en ON para WAIT(805), se saltar


el resto de las instrucciones en el programa de bloques.
Condicin Condicin Condicin
de ejecu- de ejecu- de ejecucin OFF cin OFF cin ON

Programa de
bloques

2-2
Pgi
na
757

Obligatorio

A ejecutado.

B ejecutado.

Condicin de
ejecucin

C ejecutado.

C ejecu- C ejecutado.
tado.

Esperar
WAIT(805)
B

UN CICLO Y
ESPERA
WAIT
805

UN CICLO Y
ESPERA (NOT)
WAIT NOT
805

TEMPORIZADO
R DE ESPERA
TIMW
813

B: Bit de
operando

WAIT(805) NOT
B
B: Bit de
operando

TIMW(813)
N
SV
N: Nmero de
temporizador
SV: Valor
seleccionado

Si el bit de operando est en OFF (ON para WAIT NOT(805)), se


saltar el resto de la instrucciones en el programa de bloques. En el
ciclo siguiente, no se ejecutar ninguna parte del programa de
bloques, excepto la condicin de ejecucin para WAIT(805) o
WAIT(805) NOT. Cuando la condicin de ejecucin se ponga en ON
(OFF para WAIT(805) NOT), se ejecutarn las instrucciones desde
WAIT(805) o WAIT(805) NOT hasta el final del programa.

Programa de
bloques

Si el bit de operando est en OFF (ON para WAIT NOT(805)), se


saltar el resto de la instrucciones en el programa de bloques. En el
ciclo siguiente, no se ejecutar ningn programa de bloques, excepto
la condicin de ejecucin para WAIT(805) o WAIT(805) NOT. Cuando
la condicin de ejecucin se pone en ON (OFF para WAIT(805)
NOT), se ejecutarn las instrucciones desde WAIT(805) o WAIT(805)
NOT hasta el final del programa.

Programa de
bloques

Retrasa la ejecucin del resto del programa de bloques hasta que


haya transcurrido el tiempo especificado. La ejecucin continuar
desde la instruccin siguiente a TIMW(813) cuando termine el
temporizador.

A ejecutado
SV
preseleccionado.

Tiempo transcurrido.

B ejecutado.

BEND
C ejecutado.
C

78

757

Obligatorio

757

Obligatorio

Programa de
bloques
Obligatorio

761

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
CONTADOR DE
ESPERA
CNTW
814

Seccin

Smbolo/operan
do
CNTW(814)
N
SV

Funcin

Ubicacin
Condicin
de ejecucin

Retrasa la ejecucin del resto del programa de bloques hasta


alcanzar el recuento especificado. La ejecucin continuar desde la
instruccin siguiente a CNTW(814) cuando termine el contador.

N: Nmero de
contador
SV: Valor
seleccionado
I: Entrada de
contaje

Programa de
bloques

2-2
Pgi
na
764

Obligatorio

A ejecutado.
SV
preseleccionado.

Tiempo transcurrido.

B ejecutado.

C
TEMPORIZADO
R DE ESPERA
DE ALTA
VELOCIDAD
TMHW
815

TMHW(815)
N
SV
N: Nmero de
temporizador
SV: Valor
seleccionado

C ejecutado.

C ejecutado.

C ejecutado.

Retrasa la ejecucin del resto del programa de bloques hasta que


haya transcurrido el tiempo especificado. La ejecucin continuar
desde la instruccin siguiente a TMHW(815) cuando termine el
temporizador.

Programa de
bloques

767

Obligatorio

A ejecutado
SV
preseleccionado.

Tiempo transcurrido.

B ejecutado.

BEND
C ejecutado.
C
---

BUCLE

LOOP(809) designa el comienzo del programa de lazo.

LOOP

Programa de
bloques

770

Condicin Condicin Condicin Condicin Obligatorio


de ejecu- de ejecu- de ejecu- de ejecucin ON
cin OFF cin OFF cin OFF

809

Condicin de ejecucin

Lazo repetido

79

Funciones de instruccin
Instruccin
Mnemnico

Seccin

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
LEND (810)

LEND
LEND
810

LEND
LEND
810

LEND (810)
B
B: Bit de
operando

LEND(810) o LEND(810) NOT especifica el final del lazo. Cuando no


se alcanza LEND(810) o LEND(810) NOT, la ejecucin del programa
enlazar con el LOOP(809) anterior hasta que el bit de operando para
LEND(810) o LEND(810) NOT se ponga en ON u OFF
(respectivamente) o hasta que la condicin de ejecucin para
LEND(810) se ponga en ON.

Programa de
bloques

Si el bit de operando est en OFF para LEND(810) (o en ON para


LEND(810) NOT), se repite la ejecucin del lazo empezando por la
instruccin siguiente a LOOP(809). Si el bit de operando est en ON
para LEND(810) (o en OFF para LEND(810) NOT), el lazo finaliza y
la ejecucin contina con la instruccin siguiente a LEND(810) o
LEND(810) NOT.
Bit de
Bit de
Bit de
Bit de
operan- operan- operanoperando ON
do OFF
do OFF
do OFF

Programa de
bloques

2-2
Pgi
na
770

Obligatorio

770

Obligatorio

Lazo repetido

Nota El estado del bit de operando se debe


invertir para LEND(810) NOT.
LEND(810) NOT

LEND NOT
LEND NOT
810

B: Bit de
operando

LEND(810) o LEND(810) NOT especifica el final del lazo. Cuando no


se alcanza LEND(810) o LEND(810) NOT, la ejecucin del programa
enlazar con el LOOP(809) anterior hasta que el bit de operando para
LEND(810) o LEND(810) NOT se ponga en ON u OFF
(respectivamente) o hasta que la condicin de ejecucin para
LEND(810) se ponga en ON.

Programa de
bloques

770

Obligatorio

2-2-29 Instrucciones de procesamiento de cadenas de texto


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
MOVER
CADENA

MOV$(664)

MOV$
@MOV$
664

CONCATENAR
CADENA
+$
@+$
656

Salida

775

Obligatorio

S
D
S: Primer canal
fuente
D: Primer canal
de destino

+$(656)
S1
S2
D
S1: Cadena de
texto 1
S2: Cadena de
texto 2
D: Primer canal
de destino

80

Transfiere una cadena de texto.

Pgi
na

Vincula una cadena de texto a otra.

Salida

Obligatorio

777

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
OBTENER
CADENA
IZQUIERDA
LEFT$
@LEFT$
652

Seccin

Smbolo/operan
do

LEFT$(652)

Funcin

Ubicacin
Condicin
de ejecucin

Toma un nmero designado de caracteres empezando por la


izquierda (principio) de una cadena de texto.

S1

Salida

2-2
Pgi
na
780

Obligatorio

S2
D

S1: Primer canal


de la cadena de
texto
S2: Nmero de
caracteres
D: Primer canal
de destino
OBTENER
CADENA
DERECHA

RGHT$(653)

S1

RGHT$
@RGHT$
653

Lee un nmero designado de caracteres empezando por la derecha


(final) de una cadena de texto.

Salida

782

Obligatorio

00

S2
D
S1: Primer canal
de la cadena de
texto
S2: Nmero de
caracteres
D: Primer canal
de destino

OBTENER
CADENA DEL
MEDIO
MID$
@MID$
654

MID$(654)

S1

Lee un nmero designado de caracteres situados enmedio de una


cadena de texto.

Salida

784

Obligatorio

S2
S3

D
S1: Primer canal
de la cadena de
texto
S2: Nmero de
caracteres
S3: Posicin de
comienzo
D: Primer canal
de destino
ENCONTRAR
EN CADENA

FIND$(660)

FIND
@FIND$
660

S1

Encuentra una cadena de texto designada dentro de otra cadena.


Datos encontrados

Salida

786

Obligatorio

S2
D
S1: Primer canal
de la cadena de
texto fuente
S2: Primer canal
de la cadena de
texto encontrada
D: Primer canal
de destino

LONGITUD DE
CADENA
LEN$
@LEN$
650

LEN$(650)

S
D

Calcula la longitud de una cadena de texto.

1
3
5

2
4

Salida

788

Obligatorio

S: Primer canal
de la cadena de
texto
D: Primer canal
de destino

81

Funciones de instruccin
Instruccin
Mnemnico
Cdigo
SUSTITUIR EN
CADENA
RPLC$
@RPLC$
661

Seccin

Smbolo/operan
do

RPLC$(654)

S1

Funcin

Ubicacin
Condicin
de ejecucin

Sustituye una cadena de texto por otra designada en una posicin


tambin designada.

Salida

2-2
Pgi
na
790

Obligatorio

S2
S3

S4
D
S1: Primer canal
de la cadena de
texto
S2: Primer canal
de la cadena de
texto de
sustitucin
S3: Nmero de
caracteres
S4: Posicin de
comienzo
D: Primer canal
de destino
BORRAR
CADENA

DEL$(658)

DEL$
@DEL$
658

Elimina una cadena de texto designada dentro de otra cadena.


Nmero de caracteres para
eliminar (designado por S2).

S1
S2
S3

Salida

792

Obligatorio

D
S1: Primer canal
de la cadena de
texto
S2: Nmero de
caracteres
S3: Posicin de
comienzo
D: Primer canal
de destino
CAMBIAR
CADENA

XCHG$(665)

XCHG$
@XCHG$
665

BORRAR
CADENA

82

Ex1

Sustituye una cadena de texto designada por otra.


Ex1

Ex1

Ex2

Ex2

Salida

795

Obligatorio

Ex2
Ex1: Primer canal
de intercambio 1
Ex2: Primer canal
de intercambio 2
CLR$(666)

S
CLR$
@CLR$ S: Primer canal
666 de la cadena de
texto

Borra una cadena de texto completa y la sustituye por NUL (00 hex.).
S

A
C

B
D
NUL

Salida
Obligatorio

S
NUL

796

Funciones de instruccin
Instruccin
Mnemnico

Smbolo/operan
do

Cdigo
INSERTAR EN
CADENA

INS$(657)

S3
D
S1: Primer canal
de la cadena de
texto base
S2: Primer canal
de la cadena de
texto insertada
S3: Posicin de
comienzo
D: Primer canal
de destino
LD

Smbolo

LD, AND, OR +
=$, <>$, <$, <=$,
>$, >=$

S1
S2

Ubicacin
Condicin
de ejecucin

Inserta una cadena de texto designada dentro de otra cadena.

S2

657

670 (=$)
671 (<>$)
672 (<$)
673 (<=$)
674 (>$)
675 (>=$)

Funcin

S1

INS$
@INS$

Comparacin de
cadenas

Seccin

Salida

2-2
Pgi
na
798

Obligatorio
NUL

Caracteres
insertados

Las instrucciones de comparacin de cadenas (=$, <>$, <$, <=$, >$,


>=$) comparan dos cadenas de texto desde el principio, expresadas
en valores del cdigo ASCII. Si el resultado de la comparacin es
verdadero, se crear una condicin de ejecucin ON para LOAD,
AND o para OR.

800
LD: Opcional
AND, OR:
Obligatorio

AND

Smbolo
S1
S2
OR

Smbolo
S1
S2
S1: Cadena de
texto 1
S2: Cadena de
texto 2

83

Funciones de instruccin

Seccin

2-2

2-2-30 Instrucciones de control de tareas


Instruccin
Mnemnico

Smbolo/operan
do

Funcin

Ubicacin
Condicin
de ejecucin

Cdigo
TAREA ON
TKON
@TKON
820

TKON(820)

N
N: Nmero de
tarea

Convierte la tarea especificada en ejecutable.


El nmero de la tarea especificada es superior al de la tarea local
(m<n).

El nmero de la tarea especificada es inferior al de la tarea local


(m>n).

Se ejecuta en
el siguiente
ciclo.

Se ejecuta
en este ciclo.

Tarea n

Tarea n

TKOF
@TKOF
821

TKOF(821)

N
N: Nmero de
tarea

Pone la tarea especificada en modo standby.


El nmero de la tarea especificada es superior al de la tarea
local (m<n).
Tarea m

84

Salida

El nmero de la tarea especificada es inferior al de la tarea


local (m>n).
Tarea m

En modo
standby
durante
un ciclo.

Tarea n

806

Obligatorio

Tarea m

Tarea m

TAREA OFF

Salida

Pgi
na

En modo
standby
durante
el siguiente
ciclo.

Tarea n

Obligatorio

809

Lista alfabtica de instrucciones por mnemnico

2-3

Seccin

2-3

Lista alfabtica de instrucciones por mnemnico

A
Mnemnico

Instruccin

Cdigo de
funcin

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

ACOS

ARCO COSENO

464

@ACOS

---

---

479

AND

AND

---

@AND

%AND

!AND

124

AND <

AND LESS THAN

310

---

---

---

210

AND <$

AND STRING LESS


THAN

672

---

---

---

800

AND <>

AND NOT EQUAL

305

---

---

---

210

AND <>$

AND STRING NOT


EQUAL

671

---

---

---

800

AND <>L

AND DOUBLE NOT


EQUAL

306

---

---

---

210

AND <>S

AND SIGNED NOT


EQUAL

307

---

---

---

210

AND <>SL

AND DOUBLE
SIGNED NOT EQUAL

308

---

---

---

210

AND <L

AND DOUBLE LESS


THAN

311

---

---

---

210

AND <S

AND SIGNED LESS


THAN

312

---

---

---

210

AND <SL

AND DOUBLE
SIGNED LESS THAN

313

---

---

---

210

AND =

AND EQUAL

300

---

---

---

210

AND =$

AND STRING
EQUALS

670

---

---

---

800

AND =L

AND DOUBLE EQUAL

301

---

---

---

210

AND =S

AND SIGNED EQUAL

302

---

---

---

210

AND =SL

AND DOUBLE
SIGNED EQUAL

303

---

---

---

210

AND >

AND GREATER THAN

320

---

---

---

210

AND >$

AND STRING
GREATER THAN

674

---

---

---

800

AND >L

AND DOUBLE
GREATER THAN

321

---

---

---

210

AND >S

AND SIGNED
GREATER THAN

322

---

---

---

210

AND >SL

AND DOUBLE
SIGNED GREATER
THAN

323

---

---

---

210

AND LD

AND LOAD

---

---

---

---

131

AND NOT

AND NOT

---

---

---

!AND NOT

126

AND TST

AND TEST DE BITS

350

---

---

---

141

AND TSTN

AND TEST DE BITS

351

---

---

---

141

AND

AND LESS THAN OR


EQUAL

315

---

---

---

210

AND $

AND STRING LESS


THAN OR EQUALS

673

---

---

---

800

AND L

AND DOUBLE LESS


THAN OR EQUAL

316

---

---

---

210

AND S

AND SIGNED LESS


THAN OR EQUAL

317

---

---

---

210

AND SL

AND DOUBLE
SIGNED LESS THAN
OR EQUAL

318

---

---

---

210

AND

AND GREATER THAN


OR EQUAL

325

---

---

---

210

AND $

AND STRING
GREATER THAN OR
EQUALS

675

---

---

---

800

85

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo de
funcin

Diferencial
ascendente

Seccin
Diferencial
descendente

AND L

AND DOUBLE
GREATER THAN OR
EQUAL

326

---

---

Especificacin
de refresco
inmediato
---

AND S

AND SIGNED
GREATER THAN OR
EQUAL

327

---

---

---

210

AND SL

AND DOUBLE
SIGNED GREATER
THAN OR EQUAL

328

---

---

---

210

ANDL

DOBLE AND LGICA

610

@ANDL

---

---

419

ANDW

AND LGICA

034

@ANDW

---

---

417

APR

PROCESOS
ARITMTICOS

069

@APR

---

---

439

ASC

CONVERSIN ASCII

086

@ASC

---

---

393

ASFT

REGISTRO DE
DESPLAZAMIENTO
ASNCRONO

017

@ASFT

---

---

264

ASIN

ARCO SENO

463

@ASIN

---

---

478

ASL

DESPLAZAMIENTO
ARITMTICO A
IZQUIERDA

025

@ASL

---

---

268

ASLL

DOBLE
DESPLAZAMIENTO A
IZQUIERDA

570

@ASLL

---

---

270

ASR

DESPLAZAMIENTO
ARITMTICO A
DERECHA

026

@ASR

---

---

272

ASRL

DOBLE
DESPLAZAMIENTO A
DERECHA

571

@ASRL

---

---

273

ATAN

ARCO TANGENTE

465

@ATAN

---

---

481

AVG

VALOR MEDIO

195

---

---

---

563

2-3

Pgina
210

B
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

BAND

CONTROL DE
BANDA MUERTA

681

@BAND

---

---

545

BCD

BINARIO A BCD

024

@BCD

---

---

378

BCDL

DOBLE BINARIO A
BCD

059

@BCDL

---

---

379

BCDS

BINARIO CON SIGNO


A BCD

471

@BCDS

---

---

410

BCMP

COMPARACIN DE
BLOQUE SIN SIGNO

068

@BCMP

---

---

230

BCNT

CONTADOR DE BITS

067

@BCNT

---

---

447

BDSL

BINARIO CON SIGNO


A BCD

473

@BDSL

---

---

413

BEND

FIN DE PROGRAMA
DE BLOQUE

801

---

---

---

745

BIN

BCD A BINARIO

023

@BIN

---

---

375

BINL

BCD A BINARIO
DOBLE

058

@BINL

---

---

376

BINS

BCD CON SIGNO A


BINARIO

470

@BINS

---

---

405

BISL

BCD CON SIGNO A


BINARIO

472

@BISL

---

---

407

BPPS

BLOCK PROGRAM
PAUSE

811

---

---

---

748

BPRG

INICIO DE
PROGRAMA DE
BLOQUE

096

---

---

---

745

86

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

BPRS

REINICIO DE
PROGRAMA DE
BLOQUE

812

---

---

Especificacin
de refresco
inmediato
---

BREAK

ROMPER BUCLE

514

---

---

---

173

BSET

RELLENAR BLOQUE

071

@BSET

---

---

248

2-3

Pgina
748

C
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

CADD

SUMA DE
CALENDARIO

730

@CADD

---

---

700

CJP

SALTO
CONDICIONAL

510

---

---

---

164

CJPN

SALTO
CONDICIONAL

511

---

---

---

164

CLC

ACARREO A OFF

041

@CLC

---

---

735

CLI

BORRAR
INTERRUPCIN

691

@CLI

---

---

590

CLR$

BORRAR CADENA

666

@CLR$

---

---

796

CMND

ENVIAR COMANDO

490

@CMND

---

---

672

CMP

COMPARAR

020

---

---

!CMP

215

CMPL

COMPARAR DOBLE

060

---

---

---

218

CNR

RESET
TEMPORIZADOR/
CONTADOR

545

@CNR

---

---

202

CNT

CONTADOR

---

---

---

---

196

CNTR

CONTADOR
REVERSIBLE

012

---

---

---

198

CNTW

CONTADOR WAIT

814

---

---

---

764

COLL

RECOGIDA DE
DATOS

081

@COLL

---

---

254

COLM

LNEA A COLUMNA

064

@COLM

---

---

403

COM

COMPLEMENTO

029

---

---

---

431

COML

DOBLE
COMPLEMENTO

614

@COML

---

---

432

COS

COSENO

461

@COS

---

---

474

CPS

COMPARACIN
BINARIA CON SIGNO

114

---

---

!CPS

220

CPSL

COMPARACIN
BINARIA CON SIGNO

115

---

---

---

223

CSUB

RESTA DE
CALENDARIO

731

@CSUB

---

---

703

D
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

DATE

AJUSTE DEL RELOJ

735

@DATE

---

---

711

DEG

RADIANES-A
GRADOS

459

@DEG

---

---

470

DEL$

BORRAR CADENA

658

@DEL$

---

---

792

DI

INHIBIR
INTERRUPCIONES

693

@DI

---

---

594

DIFD

DIFERENCIAL
DESCENDENTE

014

---

---

!DIFD

150

DIFU

DIFERENCIAL
ASCENDENTE

013

---

---

!DIFU

150

DIM

DIMENSIONAR
TABLA DE
REGISTROS

631

@DIM

---

---

506

DIST

DISTRIBUCIN DE
DATOS

080

@DIST

---

---

253

87

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

DMPX

CODIFICADOR DE
DATOS

077

@DMPX

---

Especificacin
de refresco
inmediato
---

DOWN

CONDICIN OFF

522

---

---

---

2-3

Pgina
390
140

E
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

EI

HABILITAR
INTERRUPCIONES

694

---

---

---

595

ELSE

ELSE

803

---

---

---

750

EMBC

SELECCIONAR
BANCO DE EM

281

@EMBC

---

---

736

END

END

001

---

---

---

157

EXIT NOT
(operando)

SALIDA BLOQUE
CONDICIONAL NOT

806

---

---

---

754

EXIT
(condicin de
entrada)

SALIDA BLOQUE
CONDICIONAL

806

---

---

---

754

EXIT
(operando)

SALIDA BLOQUE
CONDICIONAL

806

---

---

---

754

EXP

EXPONENTE

467

@EXP

---

---

485

F
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

FAL

ALARMA DE FALLO

006

@FAL

---

---

718

FALS

ALARMA DE FALLO

007

---

---

---

722

FCS

CLCULO DE FCS

180

@FCS

---

---

527

FDIV

DIVISIN EN COMA
FLOTANTE

079

@FDIV

---

---

443

FIFO

PRIMERO EN
ENTRAR PRIMERO
EN SALIR

633

@FIFO

---

---

500

FIND$

FIND IN STRING

660

@FIND$

---

---

786

FIX

COMA FLOTANTE A
16 BITS

450

@FIX

---

---

454

FIXL

COMA FLOTANTE A
32 BITS

451

@FIXL

---

---

456

FLT

DE 16 BITS A COMA
FLOTANTE

452

@FLT

---

---

457

FLTL

DE 32 BITS A COMA
FLOTANTE

453

@FLTL

---

---

459

FOR

BUCLES FOR-NEXT

512

---

---

---

170

FPD

DETECCIN DE
PUNTO DE FALLO

269

---

---

---

726

FREAD

LEER ARCHIVO DE
DATOS

700

@FREAD

---

---

681

FWRIT

ESCRIBIR ARCHIVO
DE DATOS

701

@FWRIT

---

---

688

G
Mnemnico

GETR

88

Instruccin

OBTENER NMERO
DE REGISTRO

Cdigo FUN

636

Diferencial
ascendente
@GETR

Diferencial
descendente
---

Especificacin
de refresco
inmediato
---

Pgina

511

Lista alfabtica de instrucciones por mnemnico

Seccin

2-3

H
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

HEX

ASCII A HEX

162

@HEX

---

---

397

HMS

SEGUNDOS A
HORAS

066

@HMS

---

---

709

I
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

IEND

IF END

804

---

---

---

750

IF NOT
(operando)

IF NOT

802

---

---

---

750

IF (condicin
de entrada)

IF

802

---

---

---

750

IF (operando)

IF

802

---

---

---

750

IL

INTERLOCK

002

---

---

---

158

ILC

INTERLOCK CLEAR

003

---

---

---

158

INS$

INS$

657

@INS$

---

---

798

IORD

LECTURA DE E/S
INTELIGENTES

222

@IORD

---

---

625

IORF

REFRESCO DE E/S

097

@IORF

---

---

620

IOWR

ESCRITURA DE E/S
INTELIGENTES

223

@IOWR

---

---

629

J
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

JME

FIN DE SALTO

005

---

---

---

161

JME0

FIN DE SALTO
MLTIPLE

516

---

---

---

168

JMP

SALTO

004

---

---

---

161

JMP0

SALTO MLTIPLE

515

---

---

---

168

K
Mnemnico

BIESTABLE

Instruccin

BIESTABLE

Cdigo FUN

011

Diferencial
ascendente
---

Diferencial
descendente
---

Especificacin
de refresco
inmediato
!BIESTABLE

Pgina

146

L
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

LD

LOAD

---

@LD

%LD

!LD

120

LD <

LOAD LESS THAN

310

---

---

---

210

LD <$

LOAD STRING LESS


THAN

672

---

---

---

800

LD <>

LOAD NOT EQUAL

305

---

---

---

210

LD <>$

LOAD STRING NOT


EQUAL

671

---

---

---

800

LD <>L

LOAD DOUBLE NOT


EQUAL

306

---

---

---

210

LD <>S

LOAD SIGNED NOT


EQUAL

307

---

---

---

210

LD <>SL

LOAD DOUBLE
SIGNED NOT EQUAL

308

---

---

---

210

LD <L

LOAD DOUBLE LESS


THAN

311

---

---

---

210

LD <S

LOAD SIGNED LESS


THAN

312

---

---

---

210

LD <SL

LOAD DOUBLE
SIGNED LESS THAN

313

---

---

---

210

89

Lista alfabtica de instrucciones por mnemnico


Mnemnico
LD =

LOAD EQUAL

300

---

---

Especificacin
de refresco
inmediato
---

LD =$

LOAD STRING
EQUALS

670

---

---

---

800

LD =L

LOAD DOUBLE
EQUAL

301

---

---

---

210

LD =S

LOAD SIGNED
EQUAL

302

---

---

---

210

LD =SL

LOAD DOUBLE
SIGNED EQUAL

303

---

---

---

210

LD >

LOAD GREATER
THAN

320

---

---

---

210

LD >$

LOAD STRING
GREATER THAN

674

---

---

---

800

LD >L

LOAD DOUBLE
GREATER THAN

321

---

---

---

210

LD >S

LOAD SIGNED
GREATER THAN

322

---

---

---

210

LD >SL

LOAD DOUBLE
SIGNED GREATER
THAN

323

---

---

---

210

LD NOT

LOAD NOT

---

---

---

!LD NOT

122

LD TST

LOAD TEST DE BITS

350

---

---

---

141

LD TSTN

LOAD TEST DE BITS

351

---

---

---

141

LD

LOAD LESS THAN


OR EQUAL

315

---

---

---

210

LD $

LOAD STRING LESS


THAN OR EQUAL

673

---

---

---

800

LD L

LOAD DOUBLE LESS


THAN OR EQUAL

316

---

---

---

210

LD S

LOAD SIGNED LESS


THAN OR EQUAL

317

---

---

---

210

LD SL

LOAD DOUBLE
SIGNED LESS THAN
OR EQUAL

318

---

---

---

210

LD

LOAD GREATER
THAN OR EQUAL

325

---

---

---

210

LD $

LOAD STRING
GREATER THAN OR
EQUALS

675

---

---

---

800

LD L

LOAD DOUBLE
GREATER THAN OR
EQUAL

326

---

---

---

210

LD S

LOAD SIGNED
GREATER THAN OR
EQUAL

327

---

---

---

210

LD SL

LOAD DOUBLE
SIGNED GREATER
THAN OR EQUAL

328

---

---

---

210

LEFT$

OBTENER CADENA
DE IZQUIERDA

652

@LEFT$

---

---

780

LEN$

LONGITUD DE
CADENA

650

@LEN$

---

---

788

LEND NOT
(operando)

LOOP END NOT

810

---

---

---

770

LEND
(condicin de
entrada)

LOOP END

810

---

---

---

770

LEND
(operando)

LOOP END

810

---

---

---

770

LIFO

LTIMO EN ENTRAR
PRIMERO EN SALIR

634

@LIFO

---

---

503

LINE

COLUMNA A LNEA

063

@LINE

---

---

401

LMT

CONTROL DE LMITE

680

@LMT

---

---

542

90

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

2-3

Pgina
210

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

LOG

LOGARITMO

468

@LOG

---

Especificacin
de refresco
inmediato
---

LOOP

LOOP

809

---

---

---

2-3

Pgina
487
770

M
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

MAX

ENCONTRAR
MXIMO

182

@MAX

---

---

517

MCMP

COMPARACIN
MLTIPLE

019

@MCMP

---

---

226

MCRO

MACRO

099

@MCRO

---

---

573

MID$

OBTENER CADENA
DE ENMEDIO

654

@MID$

---

---

784

MIN

ENCONTRAR
MNIMO

183

@MIN

---

---

520

MLPX

DECODIFICADOR DE
DATOS

076

@MLPX

---

---

385

MOV

MOVER

021

@MOV

---

!MOV

233

MOV$

MOVER CADENA

664

@MOV$

---

---

775

MOVB

MOVER BIT

082

@MOVB

---

---

239

MOVD

MOVER DGITO

083

@MOVD

---

---

241

MOVL

MOVER DOBLE

498

@MOVL

---

---

236

MOVR

MOVER A REGISTRO

560

@MOVR

---

---

256

MSG

VISUALIZAR
MENSAJE

046

@MSG

---

---

697

MSKR

LEER MSCARA DE
INTERUPCIN

692

@MSKR

---

---

586

MSKS

FIJAR MSCARA DE
INTERUPCIN

690

@MSKS

---

---

580

MTIM

MULTI-SALIDA
TEMPORIZADOR

543

---

---

---

191

MVN

MOVER NEGADO

022

@MVN

---

---

235

MVNL

MOVER NEGADO
DOBLE

499

@MVNL

---

---

237

MOVRW

MOVER PV DE
TEMPORIZADOR/CO
NTADOR A
REGISTRO

561

---

---

---

258

N
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

NASL

DESPLAZAMIENTO
DE N BITS A
IZQUIERDA

580

@NASL

---

---

295

NASR

DESPLAZAMIENTO
DE N BITS A
DERECHA

581

@NASR

---

---

300

NEG

COMPLEMENTO A 2

160

@NEG

---

---

381

NEGL

COMPLEMENTO A 2

161

@NEGL

---

---

382

NEXT

BUCLES FOR-NEXT

513

---

---

---

170

NOP

NO OPERACIN

000

---

---

---

158

NOT

NOT

520

---

---

---

139

NSFL

DESPLAZAMIENTO
DE UN DATO N BITS
A IZQUIERDA

578

@NSFL

---

---

291

NSFR

DESPLAZAMIENTO
DE UN DATO N BITS
A DERECHA

579

@NSFR

---

---

293

91

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

NSLL

DESPLAZAMIENTO
DE N BITS A
IZQUIERDA

582

@NSLL

---

Especificacin
de refresco
inmediato
---

NSRL

DESPLAZAMIENTO
DE N BITS A
DERECHA

583

@NSRL

---

---

2-3

Pgina
297

303

O
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

OR

OR

---

@OR

%OR

!OR

127

OR <

OR LESS THAN

310

---

---

---

210

OR <$

OR STRING LESS
THAN

672

---

---

---

800

OR <>

OR NOT EQUAL

305

---

---

---

210

OR <>$

OR STRING NOT
EQUAL

671

---

---

---

800

OR <>L

OR DOUBLE NOT
EQUAL

306

---

---

---

210

OR <>S

OR SIGNED NOT
EQUAL

307

---

---

---

210

OR <>SL

OR DOUBLE SIGNED
NOT EQUAL

308

---

---

---

210

OR <L

OR DOUBLE LESS
THAN

311

---

---

---

210

OR <S

OR SIGNED LESS
THAN

312

---

---

---

210

OR <SL

OR DOUBLE SIGNED
LESS THAN

313

---

---

---

210

OR =

OR EQUAL

300

---

---

---

210

OR =$

OR STRING EQUALS

670

---

---

---

800

OR =L

OR DOUBLE EQUAL

301

---

---

---

210

OR =S

OR SIGNED EQUAL

302

---

---

---

210

OR =SL

OR DOUBLE SIGNED
EQUAL

303

---

---

---

210

OR >

OR GREATER THAN

320

---

---

---

210

OR >$

OR STRING
GREATER THAN

674

---

---

---

800

OR >L

OR DOUBLE
GREATER THAN

321

---

---

---

210

OR >S

OR SIGNED
GREATER THAN

322

---

---

---

210

OR >SL

OR DOUBLE SIGNED
GREATER THAN

323

---

---

---

210

OR LD

OR LOAD

---

---

---

---

133

OR NOT

OR NOT

---

---

---

!OR NOT

129

OR TST

OR TEST DE BITS

350

---

---

---

141

OR TSTN

OR TEST DE BITS

351

---

---

---

141

OR

OR LESS THAN OR
EQUAL

315

---

---

---

210

OR $

OR STRING LESS
THAN OR EQUALS

673

---

---

---

800

OR L

OR DOUBLE LESS
THAN OR EQUAL

316

---

---

---

210

OR S

OR SIGNED LESS
THAN OR EQUAL

317

---

---

---

210

OR SL

OR DOUBLE SIGNED
LESS THAN OR
EQUAL

318

---

---

---

210

OR

OR GREATER THAN
OR EQUAL

325

---

---

---

210

92

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

OR $

OR STRING
GREATER THAN OR
EQUALS

675

---

---

Especificacin
de refresco
inmediato
---

OR L

OR DOUBLE
GREATER THAN OR
EQUAL

326

---

---

---

210

OR S

OR SIGNED
GREATER THAN OR
EQUAL

327

---

---

---

210

OR SL

OR DOUBLE SIGNED
GREATER THAN OR
EQUAL

328

---

---

---

210

ORW

OR LGICA

035

@ORW

---

---

420

ORWL

DOBLE OR LGICA

611

@ORWL

---

---

422

OUT

SALIDA

---

---

---

!OUT

144

OUT NOT

SALIDA NEGADA

---

---

---

!OUT NOT

145

2-3

Pgina
800

P
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

PID

CONTROL PID

190

---

---

---

531

PMCR

MACRO DE
PROTOCOLO

260

@PMCR

---

---

634

PUSH

MOVER AL STACK

632

@PUSH

---

---

497

PWR

POTENCIA
EXPONENCIAL

840

@PWR

---

---

489

R
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

RAD

GRADOS A
RADIANES

458

@RAD

---

---

468

RECV

RECIBIR DE RED

098

@RECV

---

---

668

RET

FIN DE SUBRUTINA

093

---

---

---

580

RGHT$

OBTENER CADENA
DE LA DERECHA

653

@RGHT$

---

---

782

RLNC

ROTAR A IZQUIERDA
SIN ACARREO

574

@RLNC

---

---

282

RLNL

ROTAR A IZQUIERDA
SIN ACARREO

576

@RLNL

---

---

283

ROL

ROTAR A IZQUIERDA

027

@ROL

---

---

275

ROLL

ROTAR A IZQUIERDA

572

@ROLL

---

---

277

ROOT

BCD RAZ
CUADRADA

072

@ROOT

---

---

436

ROR

ROTAR A DERECHA

028

@ROR

---

---

278

RORL

ROTAR A DERECHA
DOBLE

573

@RORL

---

---

280

ROTB

RAZ CUADRADA
BINARIA

620

@ROTB

---

---

434

RPLC$

SUSTITUIR EN
CADENA

661

@RPLC$

---

---

790

RRNC

ROTAR A DERECHA
SIN ACARREO

575

@RRNC

---

---

285

RRNL

ROTAR A DERECHA
DOBLE SIN
ACARREO

577

@RRNL

---

---

287

RSET

RESET

---

@RSET

%RSET

!RSET

152

RSTA

RESET MLTIPLE

531

@RSTA

---

---

154

RXD

RECIBIR

235

@RXD

---

---

648

93

Lista alfabtica de instrucciones por mnemnico

Seccin

2-3

S
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

SBN

INICIO DE
SUBRUTINA

092

---

---

---

577

SBS

LLAMADA A
SUBRUTINA

091

@SBS

---

---

567

SCL

ESCALADO

194

@SCL

---

---

550

SCL2

ESCALADO 2

486

@SCL2

---

---

555

SCL3

ESCALADO 3

487

@SCL3

---

---

559

SDEC

DECODIFICADOR DE
7 SEGMENTOS

078

@SDEC

---

---

623

SEC

HORAS A
SEGUNDOS

065

@SEC

---

---

707

SEND

ENVIAR A RED

090

@SEND

---

---

662

SET

SET

---

@SET

%SET

!SET

152

SETA

SET MLTIPLES BITS

530

@SETA

---

---

154

SETR

FIJAR
LOCALIZACIN
REGISTRO

635

@SETR

---

---

509

SFT

REGISTRO DE
DESPLAZAMIENTO

010

---

---

---

260

SFTR

REGISTRO DE
DESPLAZAMIENTO

084

@SFTR

---

---

262

SIGN

BINARIO CON SIGNO


DE 16 A 32 BITS

600

@SIGN

---

---

384

SIN

SENO

460

@SIN

---

---

472

SLD

DESPLAZAMIENTO
DE UN DGITO A
IZQUIERDA

074

@SLD

---

---

288

SNXT

INICIO DE PASO

009

---

---

---

603

SQRT

RAZ CUADRADA

466

@SQRT

---

---

483

SRCH

BUSCAR DATO

181

@SRCH

---

---

513

SRD

DESPLAZAMIENTO
DE UN DGITO A
DERECHA

075

@SRD

---

---

290

SSET

FIJAR STACK

630

@SSET

---

---

494

STC

ACARREO A ON

040

@STC

---

---

735

STEP

DEFINIR PASO

008

---

---

---

603

STUP

CAMBIAR SETUP DE
PUERTO SERIE

237

@STUP

---

---

653

SUMA

SUMA

184

@SUMA

---

---

523

SWAP

INTERCAMBIAR
BYTES

637

@SWAP

---

---

515

T
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

TAN

TANGENTE

462

@TAN

---

---

476

TCMP

COMPARAR TABLA

085

@TCMP

---

---

228

TIM

TEMPORIZADOR

---

---

---

---

175

TIMH

HIGH-SPEED
TEMPORIZADOR

015

---

---

---

179

TIML

TEMPORIZADOR
LARGO

542

---

---

---

189

TIMW

TEMPORIZADOR
ESPERA

813

---

---

---

761

TKOF

TAREA OFF

821

@TKOF

---

---

809

TKON

TAREA ON

820

@TKON

---

---

806

TMHH

TEMPORIZADOR DE
MUY ALTA
VELOCIDAD

540

---

---

---

183

94

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

TMHW

TEMPORIZADOR
ALTA VELOCIDAD DE
ESPERA

815

---

---

Especificacin
de refresco
inmediato
---

TRSM

MUESTREO DE
MEMORIA DE
SEGUIMIENTO

045

---

---

---

714

TTIM

TEMPORIZADOR
TOTALIZADOR

087

---

---

---

185

TXD

TRANSMITIR

236

@TXD

---

---

643

2-3

Pgina
767

U
Mnemnico

UP

Instruccin

CONDICIN ON

Cdigo FUN

521

Diferencial
ascendente
---

Diferencial
descendente
---

Especificacin
de refresco
inmediato
---

Pgina

140

W
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

WAIT NOT
(operando)

UN CICLO Y ESPERA
NEGADO

805

---

---

---

757

WAIT
(condicin de
entrada)

UN CICLO Y ESPERA

805

---

---

---

757

WAIT
(operando)

UN CICLO Y ESPERA

805

---

---

---

757

WDT

AMPLIAR TIEMPO DE
CICLO MXIMO

094

@WDT

---

---

738

WSFT

DESPLAZAR UN
CANAL

016

@WSFT

---

---

267

X
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

XCGL

INTERCAMBIO DE
DATOS

562

@XCGL

---

---

251

XCHG

INTERCAMBIO DE
DATOS

073

@XCHG

---

---

250

XCHG$

INTERCAMBIAR
CADENA

665

@XCHG$

---

---

795

XFER

TRANSFERIR
BLOQUE

070

@XFER

---

---

246

XFRB

TRANSFERIR BITS

062

@XFRB

---

---

243

XNRL

DOBLE NOR
EXCLUSIVA

613

@XNRL

---

---

429

XNRW

NOR EXCLUSIVA

037

@XNRW

---

---

427

XORL

DOBLE OR
EXCLUSIVA

612

@XORL

---

---

426

XORW

OR EXCLUSIVA

036

@XORW

---

---

424

Z
Mnemnico

ZONE

Instruccin

CONTROL DE ZONA
MUERTA

Cdigo FUN

682

Diferencial
ascendente
@ZONE

Diferencial
descendente
---

Especificacin
de refresco
inmediato
---

Pgina

547

95

Lista alfabtica de instrucciones por mnemnico

Seccin

2-3

Smbolos
Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

SUMA BINARIA CON


SIGNO SIN
ACARREO

400

@+

---

---

323

+$

CONCATENAR
CADENA

656

@+$

---

---

777

++

INCREMENTO
BINARIO

590

@++

---

---

306

++B

INCREMENTO BCD

594

@++B

---

---

313

++BL

DOBLE
INCREMENTO BCD

595

@++BL

---

---

315

++L

DOBLE
INCREMENTO
BINARIO

591

@++L

---

---

308

+B

SUMA BCD SIN


ACARREO

404

@+B

---

---

330

+BC

SUMA BCD CON


ACARREO

406

@+BC

---

---

333

+BCL

SUMA BCD DOBLE


CON ACARREO

407

@+BCL

---

---

335

+BL

SUMA BCD SIN


ACARREO

405

@+BL

---

---

332

+C

SUMA BINARIA CON


SIGNO CON
ACARREO

402

@+C

---

---

326

+CL

SUMA BINARIA CON


SIGNO CON
ACARREO

403

@+CL

---

---

328

+F

SUMA DE COMA
FLOTANTE

454

@+F

---

---

460

+L

SUMA BINARIA CON


SIGNO SIN
ACARREO

401

@+L

---

---

324

--

RESTA BINARIA CON


SIGNO SIN
ACARREO

410

@--

---

---

337

-- --

DECREMENTO
BINARIO

592

@-- --

---

---

309

-- --B

DECREMENTO BCD

596

@-- --B

---

---

317

-- --BL

DOUBLE
DECREMENTO BCD

597

@-- --BL

---

---

319

-- --L

DECREMENTO
BINARIO

593

@-- --L

---

---

311

--B

RESTA BCD SIN


ACARREO

414

@--B

---

---

347

--BC

RESTA BCD CON


ACARREO

416

@--BC

---

---

352

--BCL

RESTA BCD CON


ACARREO

417

@--BCL

---

---

353

--BL

DOBLE RESTA BCD


SIN ACARREO

415

@--BL

---

---

348

--C

RESTA BINARIA
CON SIGNO CON
ACARREO

412

@--C

---

---

343

--CL

RESTA BINARIA
DOBLE CON SIGNO
CON ACARREO

413

@--CL

---

---

345

--F

RESTA EN COMA
FLOTANTE

455

@--F

---

---

462

MULTIPLICACIN
BINARIA CON SIGNO

420

@*

---

---

355

*B

MULTIPLICACIN
BCD

424

@*B

---

---

362

96

Lista alfabtica de instrucciones por mnemnico


Mnemnico

Instruccin

Cdigo FUN

Diferencial
ascendente

Seccin
Diferencial
descendente

*BL

DOBLE
MULTIPLICACIN
BCD

425

@*BL

---

Especificacin
de refresco
inmediato
---

*F

MULTIPLICACIN EN
COMA FLOTANTE

456

@*F

---

---

464

*L

DOBLE
MULTIPLICACIN
BINARIA CON SIGNO

421

@*L

---

---

357

*U

MULTIPLICACIN
BINARIA SIN SIGNO

422

@*U

---

---

359

*UL

DOBLE
MULTIPLICACIN
BINARIA SIN SIGNO

423

@*UL

---

---

360

--L

RESTA BINARIA
DOBLE CON SIGNO
SIN ACARREO

411

@--L

---

---

339

DIVISIN BINARIA
CON SIGNO

430

@/

---

---

365

/B

DIVISIN BCD

434

@/B

---

---

371

/BL

DOBLE DIVISIN
BCD

435

@/BL

---

---

373

/F

DIVISIN EN COMA
FLOTANTE

457

@/F

---

---

466

/L

DOBLE DIVISIN
BINARIA CON SIGNO

431

@/L

---

---

366

/U

DIVISIN BINARIA
SIN SIGNO

432

@/U

---

---

368

/UL

DOBLE DIVISIN
BINARIA SIN SIGNO

433

@/UL

---

---

370

2-3

Pgina
363

97

Lista de instrucciones por cdigo de funcin

2-4

Seccin

Lista de instrucciones por cdigo de funcin

Cdigo de
funcin

Mnemnico

Instruccin

Diferencial
ascendente

Diferencial
descendente

Especificacin
de refresco
inmediato

Pgina

---

LD

LOAD

@LD

%LD

!LD

120

---

LD NOT

LOAD NOT

---

---

!LD NOT

122

---

AND

AND

@AND

%AND

!AND

124

---

AND NOT

AND NOT

---

---

!AND NOT

126

---

OR

OR

@OR

%OR

!OR

127

---

OR NOT

OR NOT

---

---

!OR NOT

129

---

AND LD

AND LOAD

---

---

---

131

---

OR LD

OR LOAD

---

---

---

133

---

OUT

SALIDA

---

---

!OUT

144

---

OUT NOT

SALIDA NEGADA

---

---

!OUT NOT

145

---

SET

SET

@SET

%SET

!SET

152

---

RSET

RESET

@RSET

%RSET

!RSET

152

---

TIM

TEMPORIZADOR

---

---

---

175

---

CNT

CONTADOR

---

---

---

196

000

NOP

NO OPERACIN

---

---

---

158

001

END

END

---

---

---

157

002

IL

INTERLOCK

---

---

---

158

003

ILC

INTERLOCK CLEAR

---

---

---

158

004

JMP

SALTO

---

---

---

161

005

JME

FIN DE SALTO

---

---

---

161

006

FAL

ALARMA DE FALLO

@FAL

---

---

718

007

FALS

ALARMA DE FALLO

---

---

---

722

008

STEP

DEFINIR PASO

---

---

---

603

009

SNXT

INICIO DE PASO

---

---

---

603

010

SFT

REGISTRO DE
DESPLAZAMIENTO

---

---

---

260

011

BIESTABLE

BIESTABLE

---

---

!BIESTABLE

146

012

CNTR

CONTADOR
REVERSIBLE

---

---

---

198

013

DIFU

DIFERENCIAL
ASCENDENTE

---

---

!DIFU

150

014

DIFD

DIFERENCIAL
DESCENDENTE

---

---

!DIFD

150

015

TIMH

TEMPORIZADOR

---

---

---

179

016

WSFT

DESPLAZAR UN
CANAL

@WSFT

---

---

267

017

ASFT

REGISTRO DE
DESPLAZAMIENTO
ASNCRONO

@ASFT

---

---

264

019

MCMP

COMPARACIN
MLTIPLE

@MCMP

---

---

226

020

CMP

COMPARAR

---

---

!CMP

215

021

MOV

MOVER

@MOV

---

!MOV

233

022

MVN

MOVER NEGADO

@MVN

---

---

235

023

BIN

BCD A BINARIO

@BIN

---

---

375

024

BCD

BINARIO A BCD

@BCD

---

---

378

025

ASL

DESPLAZAMIENTO
ARITMTICO A
IZQUIERDA

@ASL

---

---

268

026

ASR

DESPLAZAMIENTO
ARITMTICO A
DERECHA

@ASR

---

---

272

027

ROL

ROTAR A IZQUIERDA

@ROL

---

---

275

028

ROR

ROTAR A DERECHA

@ROR

---

---

278

029

COM

COMPLEMENT

@COM

---

---

431

034

ANDW

AND LGICA

@ANDW

---

---

417

035

ORW

OR LGICA

@ORW

---

---

420

98

2-4

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

036

XORW

OR EXCLUSIVA

@XORW

---

Especificacin
de refresco
inmediato
---

037

XNRW

NOR EXCLUSIVA

@XNRW

---

---

427

040

STC

ACARREO A ON

@STC

---

---

735

041

CLC

ACARREO A OFF

@CLC

---

---

735

045

TRSM

MUESTREO DE
MEMORIA DE
SEGUIMIENTO

---

---

---

714

046

MSG

VISUALIZAR
MENSAJE

@MSG

---

---

697

058

BINL

BCD A BINARIO
DOBLE

@BINL

---

---

376

059

BCDL

DOBLE BINARIO A
BCD

@BCDL

---

---

379

060

CMPL

COMPARAR DOBLE

---

---

---

218

062

XFRB

TRANSFERIR BITS

@XFRB

---

---

243

063

LINE

COLUMNA A LNEA

@LINE

---

---

401

064

COLM

LNEA A COLUMNA

@COLM

---

---

403

065

SEC

HORAS A
SEGUNDOS

@SEC

---

---

707

066

HMS

SEGUNDOS A
HORAS

@HMS

---

---

709

067

BCNT

CONTADOR DE BITS

@BCNT

---

---

447

068

BCMP

COMPARACIN DE
BLOQUE SIN SIGNO

@BCMP

---

---

230

069

APR

PROCESOS
ARITMTICOS

@APR

---

---

439

070

XFER

TRANSFERIR
BLOQUE

@XFER

---

---

246

071

BSET

RELLENAR BLOQUE

@BSET

---

---

248

072

ROOT

BCD RAZ
CUADRADA

@ROOT

---

---

436

073

XCHG

INTERCAMBIO DE
DATOS

@XCHG

---

---

250

074

SLD

DESPLAZAMIENTO
DE UN DGITO A
IZQUIERDA

@SLD

---

---

288

075

SRD

DESPLAZAMIENTO
DE UN DGITO A
DERECHA

@SRD

---

---

290

076

MLPX

DECODIFICADOR DE
DATOS

@MLPX

---

---

385

077

DMPX

CODIFICADOR DE
DATOS

@DMPX

---

---

390

078

SDEC

DECODIFICADOR DE
7 SEGMENTOS

@SDEC

---

---

623

079

FDIV

DIVISIN EN COMA
FLOTANTE

@FDIV

---

---

443

080

DIST

DISTRIBUCIN DE
DATOS

@DIST

---

---

253

081

COLL

RECOGIDA DE
DATOS

@COLL

---

---

254

082

MOVB

MOVER BIT

@MOVB

---

---

239

083

MOVD

MOVER DGITO

@MOVD

---

---

241

084

SFTR

REGISTRO DE
DESPLAZAMIENTO

@SFTR

---

---

262

085

TCMP

COMPARAR TABLA

@TCMP

---

---

228

086

ASC

CONVERSIN ASCII

@ASC

---

---

393

087

TTIM

TEMPORIZADOR
TOTALIZADOR

---

---

---

185

090

SEND

ENVIAR A RED

@SEND

---

---

662

2-4

Pgina
424

99

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin
091

SBS

LLAMADA A
SUBRUTINA

@SBS

---

Especificacin
de refresco
inmediato
---

092

SBN

INICIO DE
SUBRUTINA

---

---

---

577

093

RET

FIN DE SUBRUTINA

---

---

---

580

094

WDT

AMPLIAR TIEMPO DE
CICLO MXIMO

@WDT

---

---

738

096

BPRG

INICIO DE
PROGRAMA DE
BLOQUE

---

---

---

745

097

IORF

REFRESCO DE E/S

@IORF

---

---

620

098

RECV

RECIBIR DE RED

@RECV

---

---

668

099

MCRO

MACRO

@MCRO

---

---

573

114

CPS

COMPARACIN
BINARIA CON SIGNO

---

---

!CPS

220

115

CPSL

COMPARACIN
BINARIA CON SIGNO

---

---

---

223

160

NEG

COMPLEMENTO A 2

@NEG

---

---

381

161

NEGL

COMPLEMENTO A 2

@NEGL

---

---

382

162

HEX

ASCII A HEX

@HEX

---

---

397

180

FCS

CLCULO DE FCS

@FCS

---

---

527

181

SRCH

BUSCAR DATO

@SRCH

---

---

513

182

MAX

ENCONTRAR
MXIMO

@MAX

---

---

517

183

MIN

ENCONTRAR
MNIMO

@MIN

---

---

520

184

SUMA

SUMA

@SUMA

---

---

523

190

PID

CONTROL PID

---

---

---

531

194

SCL

ESCALADO

@SCL

---

---

550

195

AVG

VALOR MEDIO

---

---

---

563

222

IORD

LECTURA DE E/S
INTELIGENTES

@IORD

---

---

625

223

IOWR

ESCRITURA DE E/S
INTELIGENTES

@IOWR

---

---

629

235

RXD

RECIBIR

@RXD

---

---

648

236

TXD

TRANSMITIR

@TXD

---

---

643

237

STUP

CAMBIAR SETUP DE
PUERTO SERIE

@STUP

---

---

653

260

PMCR

MACRO DE
PROTOCOLO

@PMCR

---

---

634

269

FPD

DETECCIN DE
PUNTO DE FALLO

---

---

---

726

281

EMBC

SELECCIONAR
BANCO DE EM

@EMBC

---

---

736

300

AND =

AND EQUAL

---

---

---

210

300

LD =

LOAD EQUAL

---

---

---

210

300

OR =

OR EQUAL

---

---

---

210

301

AND =L

AND DOUBLE EQUAL

---

---

---

210

301

LD =L

LOAD DOUBLE
EQUAL

---

---

---

210

301

OR =L

OR DOUBLE EQUAL

---

---

---

210

302

AND =S

AND SIGNED EQUAL

---

---

---

210

302

LD =S

LOAD SIGNED
EQUAL

---

---

---

210

302

OR =S

OR SIGNED EQUAL

---

---

---

210

303

AND =SL

AND DOUBLE
SIGNED EQUAL

---

---

---

210

303

LD =SL

LOAD DOUBLE
SIGNED EQUAL

---

---

---

210

100

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

2-4

Pgina
567

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

303

OR =SL

OR DOUBLE SIGNED
EQUAL

---

---

Especificacin
de refresco
inmediato
---

305

AND <>

AND NOT EQUAL

---

---

---

210

305

LD <>

LOAD NOT EQUAL

---

---

---

210

305

OR <>

OR NOT EQUAL

---

---

---

210

306

AND <>L

AND DOUBLE NOT


EQUAL

---

---

---

210

306

LD <>L

LOAD DOUBLE NOT


EQUAL

---

---

---

210

306

OR <>L

OR DOUBLE NOT
EQUAL

---

---

---

210

307

AND <>S

AND SIGNED NOT


EQUAL

---

---

---

210

307

LD <>S

LOAD SIGNED NOT


EQUAL

---

---

---

210

307

OR <>S

OR SIGNED NOT
EQUAL

---

---

---

210

308

AND <>SL

AND DOUBLE
SIGNED NOT EQUAL

---

---

---

210

308

LD <>SL

LOAD DOUBLE
SIGNED NOT EQUAL

---

---

---

210

308

OR <>SL

OR DOUBLE SIGNED
NOT EQUAL

---

---

---

210

310

AND <

AND LESS THAN

---

---

---

210

310

LD <

LOAD LESS THAN

---

---

---

210

310

OR <

OR LESS THAN

---

---

---

210

311

AND <L

AND DOUBLE LESS


THAN

---

---

---

210

311

LD <L

LOAD DOUBLE LESS


THAN

---

---

---

210

311

OR <L

OR DOUBLE LESS
THAN

---

---

---

210

312

AND <S

AND SIGNED LESS


THAN

---

---

---

210

312

LD <S

LOAD SIGNED LESS


THAN

---

---

---

210

312

OR <S

OR SIGNED LESS
THAN

---

---

---

210

313

AND <SL

AND DOUBLE
SIGNED LESS THAN

---

---

---

210

313

LD <SL

LOAD DOUBLE
SIGNED LESS THAN

---

---

---

210

313

OR <SL

OR DOUBLE SIGNED
LESS THAN

---

---

---

210

315

AND

AND LESS THAN OR


EQUAL

---

---

---

210

315

LD

LOAD LESS THAN


OR EQUAL

---

---

---

210

315

OR

OR LESS THAN OR
EQUAL

---

---

---

210

316

AND L

AND DOUBLE LESS


THAN OR EQUAL

---

---

---

210

316

LD L

LOAD DOUBLE LESS


THAN OR EQUAL

---

---

---

210

316

OR L

OR DOUBLE LESS
THAN OR EQUAL

---

---

---

210

317

AND S

AND SIGNED LESS


THAN OR EQUAL

---

---

---

210

317

LD S

LOAD SIGNED LESS


THAN OR EQUAL

---

---

---

210

317

OR S

OR SIGNED LESS
THAN OR EQUAL

---

---

---

210

2-4

Pgina
210

101

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin
318

AND SL

AND DOUBLE
SIGNED LESS THAN
OR EQUAL

---

---

Especificacin
de refresco
inmediato
---

318

LD SL

LOAD DOUBLE
SIGNED LESS THAN
OR EQUAL

---

---

---

210

318

OR SL

OR DOUBLE SIGNED
LESS THAN OR
EQUAL

---

---

---

210

320

AND >

AND GREATER THAN

---

---

---

210

320

LD >

LOAD GREATER
THAN

---

---

---

210

320

OR >

OR GREATER THAN

---

---

---

210

321

AND >L

AND DOUBLE
GREATER THAN

---

---

---

210

321

LD >L

LOAD DOUBLE
GREATER THAN

---

---

---

210

321

OR >L

OR DOUBLE
GREATER THAN

---

---

---

210

322

AND >S

AND SIGNED
GREATER THAN

---

---

---

210

322

LD >S

LOAD SIGNED
GREATER THAN

---

---

---

210

322

OR >S

OR SIGNED
GREATER THAN

---

---

---

210

323

AND >SL

AND DOUBLE
SIGNED GREATER
THAN

---

---

---

210

323

LD >SL

LOAD DOUBLE
SIGNED GREATER
THAN

---

---

---

210

323

OR >SL

OR DOUBLE SIGNED
GREATER THAN

---

---

---

210

325

AND

AND GREATER THAN


OR EQUAL

---

---

---

210

325

LD

LOAD GREATER
THAN OR EQUAL

---

---

---

210

325

OR

OR GREATER THAN
OR EQUAL

---

---

---

210

326

AND L

AND DOUBLE
GREATER THAN OR
EQUAL

---

---

---

210

326

LD L

LOAD DOUBLE
GREATER THAN OR
EQUAL

---

---

---

210

326

OR L

OR DOUBLE
GREATER THAN OR
EQUAL

---

---

---

210

327

AND S

AND SIGNED
GREATER THAN OR
EQUAL

---

---

---

210

327

LD S

LOAD SIGNED
GREATER THAN OR
EQUAL

---

---

---

210

327

OR S

OR SIGNED
GREATER THAN OR
EQUAL

---

---

---

210

328

AND SL

AND DOUBLE
SIGNED GREATER
THAN OR EQUAL

---

---

---

210

328

LD SL

LOAD DOUBLE
SIGNED GREATER
THAN OR EQUAL

---

---

---

210

328

OR SL

OR DOUBLE SIGNED
GREATER THAN OR
EQUAL

---

---

---

210

350

AND TST

AND TEST DE BITS

---

---

---

141

102

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

2-4

Pgina
210

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

350

LD TST

LOAD TEST DE BITS

---

---

Especificacin
de refresco
inmediato
---

350

OR TST

OR TEST DE BITS

---

---

---

141

351

AND TSTN

AND TEST DE BITS


NOT

---

---

---

141

351

LD TSTN

LOAD TEST DE BITS


NOT

---

---

---

141

351

OR TSTN

OR TEST DE BITS
NOT

---

---

---

141

400

SUMA BINARIA CON


SIGNO SIN
ACARREO

@+

---

---

323

401

+L

SUMA BINARIA CON


SIGNO SIN
ACARREO

@+L

---

---

324

402

+C

SUMA BINARIA CON


SIGNO CON
ACARREO

@+C

---

---

326

403

+CL

SUMA BINARIA CON


SIGNO CON
ACARREO

@+CL

---

---

328

404

+B

SUMA BCD SIN


ACARREO

@+B

---

---

330

405

+BL

SUMA BCD SIN


ACARREO

@+BL

---

---

332

406

+BC

SUMA BCD CON


ACARREO

@+BC

---

---

333

407

+BCL

SUMA BCD DOBLE


CON ACARREO

@+BCL

---

---

335

410

--

RESTA BINARIA CON


SIGNO SIN
ACARREO

@--

---

---

337

411

--L

RESTA BINARIA
DOBLE CON SIGNO
SIN ACARREO

@--L

---

---

339

412

--C

RESTA BINARIA
CON SIGNO CON
ACARREO

@--C

---

---

343

413

--CL

RESTA BINARIA
DOBLE CON SIGNO
CON ACARREO

@--CL

---

---

345

414

--B

RESTA BCD SIN


ACARREO

@--B

---

---

347

415

--BL

DOBLE RESTA BCD


SIN ACARREO

@--BL

---

---

348

416

--BC

RESTA BCD CON


ACARREO

@--BC

---

---

352

417

--BCL

RESTA BCD CON


ACARREO

@--BCL

---

---

353

420

MULTIPLICACIN
BINARIA CON SIGNO

@*

---

---

355

421

*L

DOBLE
MULTIPLICACIN
BINARIA CON SIGNO

@*L

---

---

357

422

*U

MULTIPLICACIN
BINARIA SIN SIGNO

@*U

---

---

359

423

*UL

DOBLE
MULTIPLICACIN
BINARIA SIN SIGNO

@*UL

---

---

360

424

*B

MULTIPLICACIN
BCD

@*B

---

---

362

425

*BL

DOBLE
MULTIPLICACIN
BCD

@*BL

---

---

363

430

DIVISIN BINARIA
CON SIGNO

@/

---

---

365

2-4

Pgina
141

103

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin
431

/L

DOBLE DIVISIN
BINARIA CON SIGNO

@/L

---

Especificacin
de refresco
inmediato
---

432

/U

DIVISIN BINARIA
SIN SIGNO

@/U

---

---

368

433

/UL

DOBLE DIVISIN
BINARIA SIN SIGNO

@/UL

---

---

370

434

/B

DIVISIN BCD

@/B

---

---

371

435

/BL

DOBLE DIVISIN
BCD

@/BL

---

---

373

450

FIX

COMA FLOTANTE A
16 BITS

@FIX

---

---

454

451

FIXL

COMA FLOTANTE A
32 BITS

@FIXL

---

---

456

452

FLT

DE 16 BITS A COMA
FLOTANTE

@FLT

---

---

457

453

FLTL

DE 32 BITS A COMA
FLOTANTE

@FLTL

---

---

459

454

+F

FLOATING-POINT
ADD

@+F

---

---

460

455

--F

FLOATING-POINT
SUBTRACT

@--F

---

---

462

456

*F

FLOATING-POINT
MULTIPLY

@*F

---

---

464

457

/F

DIVISIN EN COMA
FLOTANTE

@/F

---

---

466

458

RAD

GRADOS A
RADIANES

@RAD

---

---

468

459

DEG

RADIANS-TO
DEGREES

@DEG

---

---

470

460

SIN

SENO

@SIN

---

---

472

461

COS

COSENO

@COS

---

---

474

462

TAN

TANGENTE

@TAN

---

---

476

463

ASIN

ARCO SENO

@ASIN

---

---

478

464

ACOS

ARCO COSENO

@ACOS

---

---

479

465

ATAN

ARCO TANGENTE

@ATAN

---

---

481

466

SQRT

RAZ CUADRADA

@SQRT

---

---

483

467

EXP

EXPONENTE

@EXP

---

---

485

468

LOG

LOGARITMO

@LOG

---

---

487

470

BINS

BCD CON SIGNO A


BINARIO

@BINS

---

---

405

471

BCDS

BINARIO CON SIGNO


A BCD

@BCDS

---

---

410

472

BISL

BCD CON SIGNO A


BINARIO

@BISL

---

---

407

473

BDSL

BINARIO CON SIGNO


A BCD

@BDSL

---

---

413

486

SCL2

ESCALADO 2

@SCL2

---

---

555

487

SCL3

ESCALADO 3

@SCL3

---

---

559

490

CMND

ENVIAR COMANDO

@CMND

---

---

672

498

MOVL

MOVER DOBLE

@MOVL

---

---

236

499

MVNL

MOVER NEGADO
DOBLE

@MVNL

---

---

237

510

CJP

SALTO
CONDICIONAL

---

---

---

164

511

CJPN

SALTO
CONDICIONAL

---

---

---

164

512

FOR

BUCLES FOR-NEXT

---

---

---

170

513

NEXT

BUCLES FOR-NEXT

---

---

---

170

514

BREAK

ROMPER BUCLE

---

---

---

173

515

JMP0

SALTO MLTIPLE

---

---

---

168

104

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

2-4

Pgina
366

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

516

JME0

FIN DE SALTO
MLTIPLE

---

---

Especificacin
de refresco
inmediato
---

520

NOT

NOT

---

---

---

139

521

UP

CONDICIN ON

---

---

---

140

522

DOWN

CONDICIN OFF

---

---

---

140

530

SETA

SET MLTIPLES BITS

@SETA

---

---

154

531

RSTA

RESET MLTIPLE

@RSTA

---

---

154

540

TMHH

TEMPORIZADOR
MUY ALTA VELOC.

---

---

---

183

542

TIML

TEMPORIZADOR
LARGO

---

---

---

189

543

MTIM

TEMPORIZADOR
MULTISALIDA

---

---

---

191

545

CNR

RESET
TEMPORIZADOR/
CONTADOR

@CNR

---

---

202

560

MOVR

MOVER A REGISTRO

@MOVR

---

---

256

561

MOVRW

MOVER PV DE
TEMPORIZADOR/
CONTADOR A
REGISTRO

@MOVRW

---

---

258

562

XCGL

INTERCAMBIO DE
DATOS

@XCGL

---

---

251

570

ASLL

DOBLE
DESPLAZAMIENTO A
IZQUIERDA

@ASLL

---

---

270

571

ASRL

DOBLE
DESPLAZAMIENTO A
DERECHA

@ASRL

---

---

273

572

ROLL

ROTAR A IZQUIERDA

@ROLL

---

---

277

573

RORL

ROTAR A DERECHA
DOBLE

@RORL

---

---

280

574

RLNC

ROTAR A IZQUIERDA
SIN ACARREO

@RLNC

---

---

282

575

RRNC

ROTAR A DERECHA
SIN ACARREO

@RRNC

---

---

285

576

RLNL

ROTAR A IZQUIERDA
SIN ACARREO

@RLNL

---

---

283

577

RRNL

ROTAR A DERECHA
DOBLE SIN
ACARREO

@RRNL

---

---

287

578

NSFL

DESPLAZAMIENTO
DE UN DATO N BITS
A IZQUIERDA

@NSFL

---

---

291

579

NSFR

DESPLAZAMIENTO
DE UN DATO N BITS
A DERECHA

@NSFR

---

---

293

580

NASL

DESPLAZAMIENTO
DE N BITS A
IZQUIERDA

@NASL

---

---

295

581

NASR

DESPLAZAMIENTO
DE N BITS A
DERECHA

@NASR

---

---

300

582

NSLL

DESPLAZAMIENTO
DE N BITS A
IZQUIERDA

@NSLL

---

---

297

583

NSRL

DESPLAZAMIENTO
DE N BITS A
DERECHA

@NSRL

---

---

303

590

++

INCREMENTO
BINARIO

@++

---

---

306

591

++L

DOBLE
INCREMENTO
BINARIO

@++L

---

---

308

592

-- --

DECREMENTO
BINARIO

@-- --

---

---

309

2-4

Pgina
168

105

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin
593

-- --L

DECREMENTO
BINARIO

@-- --L

---

Especificacin
de refresco
inmediato
---

594

++B

INCREMENTO BCD

@++B

---

---

313

595

++BL

DOBLE
INCREMENTO BCD

@++L

---

---

315

596

-- --B

DECREMENTO BCD

@-- --B

---

---

317

597

-- --BL

DOBLE
DECREMENTO BCD

@-- --BL

---

---

319

600

SIGN

BINARIO CON SIGNO


DE 16 A 32 BITS

@SIGN

---

---

384

610

ANDL

DOBLE AND LGICA

@ANDL

---

---

419

611

ORWL

DOBLE OR LGICA

@ORWL

---

---

422

612

XORL

DOBLE OR
EXCLUSIVA

@XORL

---

---

426

613

XNRL

DOBLE NOR
EXCLUSIVA

@XNRL

---

---

429

614

COML

DOBLE
COMPLEMENTO

@COML

---

---

432

620

ROTB

RAIZ CUADRADA
BINARIA

@ROTB

---

---

434

630

SSET

FIJAR STACK

@SSET

---

---

494

631

DIM

DIMENSIONAR
TABLA DE
REGISTROS

@DIM

---

---

506

632

PUSH

MOVER AL STACK

@PUSH

---

---

497

633

FIFO

PRIMERO EN
ENTRAR PRIMERO
EN SALIR

@FIFO

---

---

500

634

LIFO

LTIMO EN ENTRAR
PRIMERO EN SALIR

@LIFO

---

---

503

635

SETR

FIJAR
LOCALIZACIN
REGISTRO

@SETR

---

---

509

636

GETR

OBTENER NMERO
DE REGISTRO

@GETR

---

---

511

637

SWAP

INTERCAMBIAR
BYTES

@SWAP

---

---

515

650

LEN$

LONGITUD DE
CADENA

@LEN$

---

---

788

652

LEFT$

OBTENER CADENA
DE LA IZQUIERDA

@LEFT$

---

---

780

653

RGHT$

OBTENER CADENA
DE LA DERECHA

@RGHT$

---

---

782

654

MID$

OBTENER CADENA
DEL MEDIO

@MID$

---

---

784

656

+$

CONCATENAAR
CADENA

@+$

---

---

777

657

INS$

INS$

@INS$

---

---

798

658

DEL$

BORRAR CADENA

@DEL$

---

---

792

660

FIND$

ENCONTRAR EN
CADENA

@FIND$

---

---

786

661

RPLC$

SUSTITUIR EN
CADENA

@RPLC$

---

---

790

664

MOV$

MOVER CADENA

@MOV$

---

---

775

665

XCHG$

INTERCAMBIAR
CADENA

@XCHG$

---

---

795

666

CLR$

BORRAR CADENA

@CLR$

---

---

796

670

AND =$

AND STRING
EQUALS

---

---

---

800

670

LD =$

LOAD STRING
EQUALS

---

---

---

800

670

OR =$

OR STRING EQUALS

---

---

---

800

106

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

2-4

Pgina
311

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

671

AND <>$

AND STRING NOT


EQUAL

---

---

Especificacin
de refresco
inmediato
---

671

LD <>$

LOAD STRING NOT


EQUAL

---

---

---

800

671

OR <>$

OR STRING NOT
EQUAL

---

---

---

800

672

AND <$

AND STRING LESS


THAN

---

---

---

800

672

LD <$

LOAD STRING LESS


THAN

---

---

---

800

672

OR <$

OR STRING LESS
THAN

---

---

---

800

673

AND $

AND STRING LESS


THAN OR EQUALS

---

---

---

800

673

LD $

LOAD STRING LESS


THAN OR EQUAL

---

---

---

800

673

OR $

OR STRING LESS
THAN OR EQUALS

---

---

---

800

674

AND >$

AND STRING
GREATER THAN

---

---

---

800

674

LD >$

LOAD STRING
GREATER THAN

---

---

---

800

674

OR >$

OR STRING
GREATER THAN

---

---

---

800

675

AND $

AND STRING
GREATER THAN OR
EQUALS

---

---

---

800

675

LD $

LOAD STRING
GREATER THAN OR
EQUALS

---

---

---

800

675

OR $

OR STRING
GREATER THAN OR
EQUALS

---

---

---

800

680

LMT

CONTROL DE LMITE

@LMT

---

---

542

681

BAND

CONTROL DE
BANDA MUERTA

@BAND

---

---

545

682

ZONE

CONTROL DE ZONA
MUERTA

@ZONE

---

---

547

690

MSKS

FIJAR MSCARA DE
INTERUPCIN

@MSKS

---

---

580

691

CLI

BORRAR
INTERRUPCIN

@CLI

---

---

590

692

MSKR

LEER MSCARA DE
INTERUPCIN

@MSKR

---

---

586

693

DI

INHIBIR
INTERRUPCIONES

@DI

---

---

594

694

EI

HABILITAR
INTERRUPCIONES

---

---

---

595

700

FREAD

LEER ARCHIVO DE
DATOS

@FREAD

---

---

681

701

FWRIT

ESCRIBIR ARCHIVO
DE DATOS

@FWRIT

---

---

688

730

CADD

SUMA DE
CALENDARIO

@CADD

---

---

700

731

CSUB

RESTA DE
CALENDARIO

@CSUB

---

---

703

735

DATE

AJUSTE DEL RELOJ

@DATE

---

---

711

801

BEND

FIN DE PROGRAMA
DE BLOQUE

---

---

---

745

802

IF

BIFURCACIN
CONDICIONAL DE
BLOQUE

---

---

---

750

2-4

Pgina
800

107

Lista de instrucciones por cdigo de funcin


Cdigo de
funcin
802

IF

BIFURCACIN
CONDICIONAL DE
BLOQUE

---

---

Especificacin
de refresco
inmediato
---

802

IF NOT

BIFURCACIN
CONDICIONAL DE
BLOQUE NEGADA

---

---

---

750

803

ELSE

ELSE

---

---

---

750

804

IEND

IF END

---

---

---

750

805

WAIT

UN CICLO Y ESPERA

---

---

---

757

805

WAIT

UN CICLO Y ESPERA

---

---

---

757

805

WAIT NOT

UN CICLO Y ESPERA
NEGADO

---

---

---

757

806

EXIT

SALIDA BLOQUE
CONDICIONAL

---

---

---

754

806

EXIT

SALIDA BLOQUE
CONDICIONAL

---

---

---

754

806

EXIT NOT

SALIDA BLOQUE
CONDICIONAL NOT

---

---

---

754

809

LOOP

LOOP

---

---

---

770

810

LEND

LOOP END

---

---

---

770

810

LEND

LOOP END

---

---

---

770

810

LEND NOT

LOOP END NOT

---

---

---

770

811

BPPS

PAUSA DE
PROGRAMAD E
BLOQUE

---

---

---

748

812

BPRS

REINICIO DE
PROGRAMA DE
BLOQUE

---

---

---

748

813

TIMW

TEMPORIZADORDE
ESPERA

---

---

---

761

814

CNTW

CONTADOR DE
ESPERA

---

---

---

764

815

TMHW

TEMPORIZADOR DE
ALTA VELOCIDAD DE
ESPERA

---

---

---

767

820

TKON

TAREA ON

@TKON

---

---

806

821

TKOF

TAREA OFF

@TKOF

---

---

809

840

PWR

POTENCIA
EXPONENCIAL

@PWR

---

---

489

108

Mnemnico

Seccin

Instruccin

Diferencial
ascendente

Diferencial
descendente

2-4

Pgina
750

SECCIN 3
Instrucciones
Esta seccin describe cada una de las instrucciones que se utilizan para programar los PLC de la serie CS1. Las instrucciones
se describen por orden de funcin, tal y como aparecen clasificadas en la Seccin 2, Resumen de instrucciones.
3-1
3-2
3-3

3-4

3-5

3-6

Descripciones de notacin y disposicin de instrucciones. . . . . . . . . . . . . . . . . . . . . . . . . .


Actualizacin de instrucciones para las CPU de la versin 1 de la serie CS1. . . . . . . . . . .
Instrucciones de entrada de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-1 LOAD: LD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-2 LOAD NOT: LD NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-3 AND: AND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-4 AND NOT: AND NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-5 OR: OR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-6 OR NOT: OR NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-7 AND LOAD: AND LD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-8 OR LOAD: OR LD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-9 Instrucciones de refresco diferenciado e inmediato. . . . . . . . . . . . . . . . . . . . . . . .
3-3-10 Tiempo de operacin para Instrucciones de E/S . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-11 Bits TR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-12 NOT: NOT(520) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-13 CONDICIN ON/OFF: UP(521) y DOWN(522) . . . . . . . . . . . . . . . . . . . . . . . . .
3-3-14 BIT TEST: TST(350) y TSTN(351) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de salida de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-4-1 SALIDA: OUT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-4-2 SALIDA NEGADA: OUT NOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-4-3 ENCLAVAMIENTO: KEEP(011) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-4-4 FLANCO ASCENDENTE/DESCENDENTE: DIFU(013) y DIFD(014) . . . . . .
3-4-5 SET y RESET: SET y RSET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-4-6 SET/RESET BIT MLTIPLE: SETA(530)/RSTA(531) . . . . . . . . . . . . . . . . . . . .
Instrucciones de control de secuencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-5-1 FIN: END(001) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-5-2 NO OPERATION: NOP(000) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-5-3 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003). . . . . . . . . . . . . . . .
3-5-4 SALTO Y FIN DE SALTO: JMP(004) y JME(005) . . . . . . . . . . . . . . . . . . . . . . .
3-5-5 SALTO CONDICIONAL: CJP(510)/CJPN(511) . . . . . . . . . . . . . . . . . . . . . . . . .
3-5-6 SALTO MLTIPLE Y FIN DE SALTO MLTIPLE: JMP0(515) Y JME0(516)
3-5-7 BUCLES FOR-NEXT: FOR(512)/NEXT(513) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-5-8 ROMPER BUCLE: BREAK(514) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6-1 TEMPORIZADOR: TIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6-2 TEMPORIZADOR DE ALTA VELOCIDAD: TIMH(015) . . . . . . . . . . . . . . . . .
3-6-3 TEMPORIZADOR DE MUY ALTA VELOCIDAD: TMHH(540) . . . . . . . . . . .
3-6-4 TEMPORIZADOR TOTALIZADOR: TTIM(087) . . . . . . . . . . . . . . . . . . . . . . . .
3-6-5 TEMPORIZADOR LARGO: TIML(542) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6-6 TEMPORIZADOR MULTI--SALIDA: MTIM(543) . . . . . . . . . . . . . . . . . . . . . .
3-6-7 CONTADOR: CNT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6-8 CONTADOR REVERSIBLE: CNTR(012) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-6-9 RESET DE TEMPORIZADOR/CONTADOR: CNR(545) . . . . . . . . . . . . . . . . .
3-6-10 Ejemplos de aplicaciones de temporizador y contador . . . . . . . . . . . . . . . . . . . . .
3-6-11 Direccionamiento indirecto de los nmeros de temporizador/contador . . . . . . . .

115
119
120
120
122
124
126
127
129
131
133
135
137
137
139
140
141
144
144
145
146
150
152
154
157
157
158
158
161
164
168
170
173
174
175
179
183
185
189
191
196
199
202
203
207

109

Seccin
3-7

3-8

3-9

110

Instrucciones de comparacin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-7-1 Instrucciones de comparacin de entrada (300 a 328). . . . . . . . . . . . . . . . . . . . . .
3-7-2 COMPARAR: CMP(020) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-7-3 COMPARAR DOBLE: CMPL(060) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-7-4 COMPARACIN BINARIA CON SIGNO: CPS(114) . . . . . . . . . . . . . . . . . . . .
3-7-5 DOBLE COMPARACIN BINARIA CON SIGNO: CPSL(115) . . . . . . . . . . . .
3-7-6 COMPARACIN MLTIPLE: MCMP(019) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-7-7 COMPARAR TABLA: TCMP(085) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-7-8 COMPARAR BLOQUE: BCMP(068) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instrucciones de transferencia de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-1 MOVER: MOV(021) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-2 MOVER NEGADO: MVN(022) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-3 MOVER DOBLE: MOVL(498) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-4 MOVER DOBLE NEGADO: MVNL(499) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-5 MOVER BIT: MOVB(082) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-6 MOVER DGITO: MOVD(083) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-7 TRANSFERENCIA DE BIT MLTIPLE: XFRB(062) . . . . . . . . . . . . . . . . . . . .
3-8-8 TRANSFERIR BLOQUE: XFER(070) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-9 RELLENAR BLOQUE: BSET(071) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-10 INTERCAMBIO DE DATOS: XCHG(073) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-11 INTERCAMBIO DE DATOS DOBLE: XCGL(562) . . . . . . . . . . . . . . . . . . . . . .
3-8-12 DISTRIBUCIN DE DATOS: DIST(080) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-13 RECOGIDA DE DATOS: COLL(081) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-14 MOVER A REGISTRO: MOVR(560) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-8-15 MOVER PV DE TEMP/CONT A REGISTRO: MOVRW(561) . . . . . . . . . . . . .
Instrucciones de desplazamiento de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9-1 REGISTRO DE DESPLAZAMIENTO: SFT(010) . . . . . . . . . . . . . . . . . . . . . . . .
3-9-2 REGISTRO DE DESPLAZAMIENTO REVERSIBLE: SFTR(084) . . . . . . . . . .
3-9-3 REGISTRO DE DESPLAZAMIENTO ASNCRONO: ASFT(017) . . . . . . . . . .
3-9-4 DEPLAZAMIENTO DE CANAL: WSFT(016) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9-5 DESPLAZAMIENTO ARITMTICO A IZQUIERDA: ASL(025) . . . . . . . . . . .
3-9-6 DOBLE DESPLAZAMIENTO A IZQUIERDA: ASLL(570) . . . . . . . . . . . . . . .
3-9-7 DESPLAZAMIENTO ARITMTICO A DERECHA: ASR(026) . . . . . . . . . . . .
3-9-8 DOBLE DESPLAZAMIENTO A DERECHA: ASRL(571) . . . . . . . . . . . . . . . .
3-9-9 ROTAR A IZQUIERDA: ROL(027) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9-10 ROTAR A IZQUIERDA DOBLE: ROLL(572) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9-11 ROTAR A DERECHA: ROR(028) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9-12 ROTAR A DERECHA DOBLE: RORL(573) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-9-13 ROTAR A IZQUIERDA SIN ACARREO: RLNC(574) . . . . . . . . . . . . . . . . . . .
3-9-14 ROTAR DOBLE A IZQUIERDA SIN ACARREO: RLNL(576) . . . . . . . . . . . .
3-9-15 ROTAR A DERECHA SIN ACARREO: RRNC(575) . . . . . . . . . . . . . . . . . . . . .
3-9-16 ROTAR DOBLE A DERECHA SIN ACARREO: RRNL(577) . . . . . . . . . . . . . .
3-9-17 DESPLAZAMIENTO DE UN DGITO A IZQUIERDA: SLD(074) . . . . . . . . .
3-9-18 DESPLAZAMIENTO DE UN DGITO A DERECHA: SRD(075) . . . . . . . . . . .
3-9-19 DESPLAZAR DATO N BITS A IZQUIERDA: NSFL(578) . . . . . . . . . . . . . . . .
3-9-20 DESPLAZAR DATO N BITS A DERECHA: NSFR(579) . . . . . . . . . . . . . . . . .
3-9-21 DESPLAZAR N BITS A IZQUIERDA: NASL(580) . . . . . . . . . . . . . . . . . . . . . .
3-9-22 DOBLE DESPLAZAMIENTO N BITS A IZQUIERDA: NSLL(582) . . . . . . . .
3-9-23 DESPLAZAR N BITS A DERECHA: NASR(581) . . . . . . . . . . . . . . . . . . . . . . .
3-9-24 DOBLE DESPLAZAMIENTO N BITS A DERECHA: NSRL(583) . . . . . . . . . .

210
210
215
218
220
223
226
228
230
233
233
235
236
237
239
241
243
246
248
250
251
253
254
256
258
259
260
262
264
267
268
270
272
273
275
277
278
280
282
283
285
287
288
290
291
293
295
297
300
303

Seccin
3-10 Instrucciones incrementales/decrementales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-1 INCREMENTO BINARIO: ++(590) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-2 DOBLE INCREMENTO BINARIO: ++L(591) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-3 DECREMENTO BINARIO: -- --(592) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-4 DOBLE DECREMENTO BINARIO: -- --L(593) . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-5 INCREMENTO BCD: ++B(594) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-6 DOBLE INCREMENTO BCD: ++BL(595) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-7 DECREMENTO BCD: -- --B(596) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-10-8 DOBLE DECREMENTO BCD: -- --BL(597) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11 Instrucciones matemticas de smbolos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-1 SUMA BINARIA CON SIGNO SIN ACARREO: +(400) . . . . . . . . . . . . . . . . . .
3-11-2 DOBLE SUMA BINARIA CON SIGNO SIN ACARREO: +L(401) . . . . . . . . .
3-11-3 SUMA BINARIA CON SIGNO CON ACARREO: +C(402) . . . . . . . . . . . . . . .
3-11-4 DOBLE SUMA BINARIA CON SIGNO CON ACARREO: +CL(403) . . . . . . .
3-11-5 SUMA BCD SIN ACARREO: +B(404) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-6 DOBLE SUMA BCD SIN ACARREO: +BL(405) . . . . . . . . . . . . . . . . . . . . . . . .
3-11-7 SUMA BCD CON ACARREO: +BC(406) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-8 DOBLE SUMA BCD CON ACARREO: +BCL(407) . . . . . . . . . . . . . . . . . . . . .
3-11-9 RESTA BINARIA CON SIGNO SIN ACARREO: --(410) . . . . . . . . . . . . . . . . .
3-11-10 DOBLE RESTA BINARIA CON SIGNO SIN ACARREO: --L(411) . . . . . . . . .
3-11-11 RESTA BINARIA CON SIGNO CON ACARREO: --C(412) . . . . . . . . . . . . . . .
3-11-12 DOBLE RESTA BINARIA CON SIGNO CON ACARREO: --CL(413) . . . . . . .
3-11-13 RESTA BCD SIN ACARREO: --B(414) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-14 DOBLE RESTA BCD SIN ACARREO: --BL(415) . . . . . . . . . . . . . . . . . . . . . . .
3-11-15 RESTA BCD CON ACARREO: --BC(416) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-16 DOBLE RESTA BCD CON ACARREO: --BCL(417) . . . . . . . . . . . . . . . . . . . . .
3-11-17 MULTIPLICACIN BINARIA CON SIGNO: *(420) . . . . . . . . . . . . . . . . . . . . .
3-11-18 DOBLE MULTIPLICACIN BINARIA CON SIGNO: *L(421) . . . . . . . . . . . .
3-11-19 MULTIPLICACIN BINARIA SIN SIGNO: *U(422) . . . . . . . . . . . . . . . . . . . .
3-11-20 DOBLE MULTIPLICACIN BINARIA SIN SIGNO: *UL(423) . . . . . . . . . . . .
3-11-21 MULTIPLICACIN BCD: *B(424) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-22 DOBLE MULTIPLICACIN BCD: *BL(425) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-23 DIVISIN BINARIA CON SIGNO: /(430) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-24 DOBLE DIVISIN BINARIA CON SIGNO: /L(431) . . . . . . . . . . . . . . . . . . . . .
3-11-25 DIVISIN BINARIA SIN SIGNO: /U(432) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-26 DOBLE DIVISIN BINARIA SIN SIGNO: /UL(433) . . . . . . . . . . . . . . . . . . . .
3-11-27 DIVISIN BCD: /B(434) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-11-28 DOBLE DIVISIN BCD: /BL(435) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12 Instrucciones de conversin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-1 BCD-A-BINARIO: BIN(023) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-2 DOBLE BCD-A--DOBLE BINARIO: BINL(058) . . . . . . . . . . . . . . . . . . . . . . . .
3-12-3 BINARIO-A-BCD: BCD(024) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-4 DOBLE BINARIO-A-DOBLE BCD: BCDL(059) . . . . . . . . . . . . . . . . . . . . . . . .
3-12-5 COMPLEMENTO A 2: NEG(160) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-6 DOBLE COMPLEMENTO A 2: NEGL(161) . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-7 16-BIT A 32-BIT BINARIO CON SIGNO: SIGN(600) . . . . . . . . . . . . . . . . . . .
3-12-8 DECODIFICADOR: MLPX(076) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-9 CODIFICADOR: DMPX(077) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-10 CONVERTIR ASCII: ASC(086) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-11 ASCII AHEX: HEX(162) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-12 COLUMNA A LNEA: LINE(063) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-13 LNEA A COLUMNA: COLM(064) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-14 BCD A BINARIO CON SIGNO: BINS(470) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-15 DOBLE BCD A BINARIO CON SIGNO: BISL(472) . . . . . . . . . . . . . . . . . . . . .
3-12-16 BINARIO A BCD CON SIGNO: BCDS(471) . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-12-17 DOBLE BINARIO A BCD CON SIGNO: BDSL(473) . . . . . . . . . . . . . . . . . . . .
3-13 Instrucciones lgicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-1 AND LGICA: ANDW(034) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

306
306
308
309
311
313
315
317
319
322
323
324
326
328
330
332
333
335
337
339
343
345
347
348
352
353
355
357
359
360
362
363
365
366
368
370
371
373
375
375
376
378
379
381
382
384
385
390
393
397
401
403
405
407
410
413
417
417

111

Seccin
3-13-2 DOBLE AND LGICA: ANDL(610) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-3 OR LGICA: ORW(035) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-4 DOBLE OR LGICA: ORWL(611) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-5 OR EXCLUSIVA: XORW(036) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-6 DOBLE OR EXCLUSIVA: XORL(612) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-7 NOR EXCLUSIVA: XNRW(037) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-8 DOBLE NOR EXCLUSIVA: XNRL(613) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-9 COMPLEMENTO: COM(029) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-13-10 DOBLE COMPLEMENTO: COML(614) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-14 Instrucciones matemticas especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-14-1 RAZ CUADRADA BINARIA: ROTB(620) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-14-2 RAZ CUADRADA BCD: ROOT(072) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-14-3 PROCESOS ARITMTICOS: APR(069) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-14-4 DIVISIN EN COMA FLOTANTE: FDIV(079) . . . . . . . . . . . . . . . . . . . . . . . . .
3-14-5 CONTADOR DE BITS: BCNT(067) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15 Instrucciones matemticas de coma flotante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-1 COMA FLOTANTE A 16-BIT: FIX(450) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-2 COMA FLOTANTE A 32-BIT: FIXL(451) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-3 16-BIT A COMA FLOTANTE: FLT(452) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-4 32-BIT A COMA FLOTANTE: FLTL(453) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-5 SUMA EN COMA FLOTANTE: +F(454) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-6 RESTA EN COMA FLOTANTE: --F(455) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-7 MULTIPLICACIN EN COMA FLOTANTE: *F(456) . . . . . . . . . . . . . . . . . . .
3-15-8 DIVISIN EN COMA FLOTANTE: /F(457) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-9 GRADOS A RADIANES: RAD(458) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-10 RADIANES A GRADOS: DEG(459) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-11 SENO: SIN(460) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-12 COSENO: COS(461) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-13 TANGENTE: TAN(462) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-14 ARCO SENO: ASIN(463) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-15 ARCO COSENO: ACOS(464) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-16 ARCO TANGENTE: ATAN(465) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-17 RAZ CUADRADA: SQRT(466) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-18 EXPONENTE: EXP(467) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-19 LOGARITMO: LOG(468) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-15-20 POTENCIA EXPONENCIAL: PWR(840) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16 Instrucciones de procesamiento de datos de tabla . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-1 ESTABLECER STACK: SSET(630) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-2 MOVER AL STACK: PUSH(632) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-3 PRIMERO EN ENTRAR PRIMERO EN SALIR: FIFO(633) . . . . . . . . . . . . . . .
3-16-4 LTIMO EN ENTRAR PRIMERO EN SALIR: LIFO(634) . . . . . . . . . . . . . . . .
3-16-5 DIMENSIONAR TABLA DE REGISTRO: DIM(631) . . . . . . . . . . . . . . . . . . . .
3-16-6 FIJAR LOCALIZACIN REGISTRO: SETR(635) . . . . . . . . . . . . . . . . . . . . . . .
3-16-7 OBTENER NMERO DE REGISTRO: GETR(636) . . . . . . . . . . . . . . . . . . . . .
3-16-8 BUSCAR DATO: SRCH(181) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-9 INTERCAMBIAR BYTES: SWAP(637) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-10 ENCONTRAR MXIMO: MAX(182) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-11 ENCONTRAR MNIMO: MIN(183) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-12 SUMA: SUM(184) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-16-13 CALCULAR FCS: FCS(180) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

112

419
420
422
424
426
427
429
431
432
434
434
436
439
443
447
449
454
456
457
459
460
462
464
466
468
470
472
474
476
478
479
481
483
485
487
489
491
494
497
500
501
506
509
511
513
515
517
520
523
527

Seccin
3-17 Instrucciones de control de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-1 CONTROL PID: PID(190) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-2 CONTROL DE LMITE: LMT(680) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-3 CONTROL DE BANDA MUERTA: BAND(681) . . . . . . . . . . . . . . . . . . . . . . . .
3-17-4 CONTROL DE ZONA MUERTA: ZONE(682) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-5 ESCALADO: SCL(194) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-6 ESCALADO 2: SCL2(486) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-7 ESCALADO 3: SCL3(487) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-17-8 VALOR MEDIO: AVG(195) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-18 Subrutinas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-18-1 LLAMADA A SUBRUTINA: SBS(091) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-18-2 MACRO: MCRO(099) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-18-3 DEFINIR SUBRUTINA: SBN(092) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-18-4 FINAL DE SUBRUTINA: RET(093) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-19 Instrucciones de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-19-1 FIJAR MSCARA DE INTERRUPCIN: MSKS(690) . . . . . . . . . . . . . . . . . . .
3-19-2 LEER MSCARA DE INTERRUPCIN: MSKR(692) . . . . . . . . . . . . . . . . . . .
3-19-3 BORRAR INTERRUPCIN: CLI(691) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-19-4 INHIBIR INTERRUPCIONES: DI(693) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-19-5 HABILITAR INTERRUPCIONES: EI(694) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-19-6 Resumen de control de interrupcin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-20 Instrucciones de pasos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-20-1 DEFINIR PASO y COMENZAR PASO: STEP(008)/SNXT(009) . . . . . . . . . . . .
3-21 Instrucciones de unidades de E/S bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-21-1 REFRESCO DE E/S: IORF(097) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-21-2 DECODIFICADOR DE 7 SEGMENTOS: SDEC(078) . . . . . . . . . . . . . . . . . . . .
3-21-3 LECTURA DE E/S INTELIGENTE: IORD(222) . . . . . . . . . . . . . . . . . . . . . . . .
3-21-4 ESCRITURA DE E/S INTELIGENTE: IOWR(223) . . . . . . . . . . . . . . . . . . . . . .
3-22 Instrucciones de comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-22-1 Comunicaciones serie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-22-2 MACRO DE PROTOCOLO: PMCR(260) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-22-3 TRANSMITIR: TXD(236) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-22-4 RECIBIR: RXD(235) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-22-5 CAMBIAR SETUP DE PUERTO SERIE: STUP(237) . . . . . . . . . . . . . . . . . . . .
3-23 Instrucciones de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-23-1 Acerca de SYSMAC NET Link/Operaciones SYSMAC LINK . . . . . . . . . . . . . .
3-23-2 ENVIAR A RED: SEND(090) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-23-3 RECIBIR DE RED: RECV(098) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-23-4 ENVIAR COMANDO: CMND(490) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-24 Instrucciones de memoria de archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-24-1 LEER ARCHIVO DE DATOS: FREAD(700) . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-24-2 ESCRIBIR ARCHIVO DE DATOS: FWRIT(701) . . . . . . . . . . . . . . . . . . . . . . . .
3-25 Instrucciones de visualizacin: VISUALIZAR MENSAJE: MSG(046) . . . . . . . . . . . . . . .
3-26 Instrucciones de reloj . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-26-1 SUMA DE CALENDARIO: CADD(730) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-26-2 RESTA DE CALENDARIO: CSUB(731) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-26-3 HORAS A SEGUNDOS: SEC(065) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-26-4 SEGUNDOS A HORAS: HMS(066) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-26-5 AJUSTE DE RELOJ: DATE(735) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-27 Instrucciones de depuracin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-27-1 Muestreo de memoria de seguimiento: TRSM(045) . . . . . . . . . . . . . . . . . . . . . . .
3-28 Instrucciones de diagnstico de fallos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-28-1 ALARMA DE FALLO: FAL(006) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-28-2 ALARMA DE FALLO GRAVE: FALS(007) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-28-3 DETECCIN DE PUNTO DE FALLO: FPD(269) . . . . . . . . . . . . . . . . . . . . . . .
3-29 Otras instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-29-1 ACARREO ON: STC(040) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-29-2 ACARREO OFF: CLC(041) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

531
531
542
545
547
550
555
559
563
567
567
573
577
580
580
580
586
590
594
595
596
602
603
620
620
623
625
629
632
632
634
643
648
653
657
657
662
668
672
680
681
688
697
699
700
703
707
709
711
714
714
718
718
722
726
734
735
735

113

Seccin
3-29-3 SELECCIONAR BANCO DE EM: EMBC(281) . . . . . . . . . . . . . . . . . . . . . . . . .
3-29-4 AMPLIAR EL TIEMPO DE CICLO MXIMO: WDT(094) . . . . . . . . . . . . . . .
3-30 Instrucciones de programacin de bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-30-1 Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-30-2 INICIO/FIN DE PROGRAMA DE BLOQUE.: BPRG(096)/BEND(801) . . . . . .
3-30-3 PAUSA/REINICIO DE PROGRAMA DE BLOQUE.: BPPS(811)/BPRS(812)
................................................................
3-30-4 Bifurcaciones: IF(802), ELSE(803), e IEND(804) . . . . . . . . . . . . . . . . . . . . . . . .
3-30-5 SALIDA DE BLOQUE CONDICIONAL (NOT): EXIT (NOT)(806) . . . . . . . . .
3-30-6 UN CICLO Y ESPERA. (NOT): WAIT(805)/WAIT(805) NOT . . . . . . . . . . . . .
3-30-7 TEMPORIZADOR DE ESPERA: TIMW(813) . . . . . . . . . . . . . . . . . . . . . . . . . .
3-30-8 CONTADOR DE ESPERA: CNTW(814) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-30-9 TEMPORIZADOR DE ALTA VELOCIDAD DE ESPERA: TMHW(815) . . . . .
3-30-10 Control de lazo: LOOP(809)/LEND(810)/LEND(810) NOT . . . . . . . . . . . . . . . .
3-31 Instrucciones de procesamiento de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-1 Resumen de procesamiento de cadenas de texto . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-2 MOVER CADENA: MOV$(664) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-3 CONCATENAR CADENA: +$(656) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-4 OBTENER CADENA DE LA IZQUIERDA.: LEFT$(652) . . . . . . . . . . . . . . . .
3-31-5 OBTENER CADENA DE LA DERECHA: RGHT$(653) . . . . . . . . . . . . . . . . . .
3-31-6 OBTENER CADENA DEL MEDIO: MID$(654) . . . . . . . . . . . . . . . . . . . . . . . .
3-31-7 ENCONTRAR EN CADENA: FIND$(660) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-8 LONGITUD DE CADENA: LEN$(650) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-9 SUSTITUIR EN CADENA: RPLC$(661) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-10 BORRAR CADENA: DEL$(658) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-11 INTERCAMBIAR CADENA: XCHG$(665) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-12 BORRAR CADENA: CLR$(666) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-13 INSERTAR EN CADENA: INS$(657) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-31-14 Instrucciones de comparacin de cadenas (670 675). . . . . . . . . . . . . . . . . . . . . . .
3-32 Instrucciones de control de tareas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-32-1 TAREA ON: TKON(820) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3-32-2 TAREA OFF: TKOF(821) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

114

736
738
740
740
745
748
750
754
757
761
764
767
770
774
774
775
777
780
782
784
786
788
790
792
795
796
798
800
806
806
809

Descripciones de notacin y disposicin de instrucciones

3-1

Seccin

3-1

Descripciones de notacin y disposicin de instrucciones


Las instrucciones se describen en grupos segn su funcin. Consulte la 2-3
Lista alfabtica de instrucciones por mnemnico para ver una lista de las instrucciones ordenadas por su cdigo mnemnico con el nmero de pgina de
esta seccin en la que aparece cada instruccin.
La descripcin de cada instruccin se organiza tal y como se describe en la tabla
siguiente.
Elemento

Contenido

Nombre y mnemnico

El encabezado de cada seccin consta del nombre de la instruccin seguido del


mnemnico con el cdigo de funcin entre parntesis. Ejemplo: MOVE BIT:
MOVB(082)

Funcin

La funcin principal de la instruccin aparece descrita tras el encabezado.

Smbolo de diagrama de rels y


nombres de operandos

Muestra el smbolo de diagrama de rels que se utiliza para representar la


instruccin en el CX-Programmer, tal y como se muestra en el siguiente ejemplo
con la instruccin MOVE BIT. Con el smbolo de diagrama de rels tambin
aparece el nombre de cada operando.
MOVB(082)

Variacio-- nes

Variacio-- nes

S: Canal o datos fuente

C: Canal de control

D: Canal de destino

Las variaciones que se pueden utilizar para controlar la ejecucin de la instruccin


en condiciones especiales aparecen en forma mnemnica. Cualquier variacin que
no sea compatible con ninguna instruccin aparecer como No soportado.
S Ejecutado cada ciclo para condicin ON: La instruccin se ejecuta siempre y
cuando reciba una condicin de ejecucin ON.
S Ejecutado una vez para diferencial ascendente La instruccin se ejecuta durante
el siguiente ciclo slo despus de que la condicin de ejecucin cambie de OFF a
ON.
S Ejecutado una vez para diferencial descendente: La instruccin se ejecuta
durante el siguiente ciclo slo despus de que la condicin de ejecucin cambie
de ON a OFF.
S Siempre ejecutada: La instruccin no necesita una condicin de ejecucin y se
ejecuta en cada ciclo.
S Crea condicin ON...: La instruccin se ejecuta en cada ciclo para crear una
condicin de ejecucin para la instruccin siguiente.

Variacio-- nes

Variacio-- nes

Especificacin
de refresco
inmediato

Variacio-nes

Ejecutado cada ciclo para condicin ON

MOVB(082)

Ejecutado una vez para diferencial


ascendente

@MOVB(082)

Ejecutado una vez para diferencial


descendente

No soportado.

En algunas instrucciones se puede especificar el refresco inmediato para refrescar


la E/S cuando se ejecuta la instruccin. Si soporta el refresco inmediato, la
especificacin aparece en forma mnemnica. Si la instruccin no soporta el
refresco inmediato, aparecer No soportado
Especificacin de refresco inmediato

reas de programa aplicables

No soportado.

Se especifican las reas de programa en las que se puede utilizar la instruccin.


OK indica las reas en las que se puede utilizar la instruccin.
reas de programa
de bloques
OK

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

115

Descripciones de notacin y disposicin de instrucciones


Elemento
Operandos

Seccin

3-1

Contenido
Aparecer el significado de los canales y bits utilizados en operandos especficos
(tales como canales de control) donde sea necesario.
15

8 7

n
Bit fuente: 00 a 0F
(0 a 15 decimal)
Bit destino: 00 a 0F
(0 a 15 decimal)

Especificaciones de operandos

Las direcciones de reas de memoria que se pueden utilizar con cada operando
aparecen en una tabla como la siguiente. Las letras que se utilizan en los
encabezados de columna de la izquierda son los mismos que los que se utilizan en
el smbolo de diagrama de rels. --- se utiliza para indicar que no se puede
especificar un rea concreta para un operando.
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

A448 a A959

Descripcin

Se describen la funcin de la instruccin y los operandos que se utilizan en la


instruccin.

Indicadores

La tabla de indicadores muestra el estado de los indicadores de condicin


inmediatamente despus de la ejecucin de la instruccin. La instruccin no afecta
a los indicadores que no aparezcan en la lista. OFF indica que un indicador se
pone en OFF inmediatamente despus de la ejecucin de la instruccin,
independientemente de los resultados que se obtengan en dicha ejecucin.
Nombre

Etiqueta

Operacin

Indicador de error

ER

ON si los datos de control se encuentran entre


rangos.

Indicador de igual

OFF

Indicador de negativo

OFF

OFF en todos los dems casos.

Precauciones

Se incluyen precauciones especiales necesarias para utilizar la instruccin. Lea


cuidadosamente y siga estas precauciones.

Ejemplo

Tambin se incluye un ejemplo del uso de la instruccin con operandos especficos


para explicar con ms detalle la funcin de la instruccin.

Constantes

116

Las constantes para operandos aparecen en la siguiente lista.


Descripcin de operandos y especificaciones de operandos
Operandos que especifican cadenas de bits (introducidas normalmente en
hexadecimal):
Slo aparece la forma hexadecimal para los operandos que especifican cadenas de bits, p. ej., slo se especifica #0000 a #FFFF como el operando S
para la instruccin MOV(021). Sin embargo, en el CX Programmer se pueden
introducir cadenas de bits en forma decimal utilizando el prefijo &.
Operandos que especifican valores numricos (introducidos normalmente
como decimales, incluyendo nmeros de salto):
Tanto las formas decimal como hexadecimal aparecen para los operandos
que especifican valores numricos, p. ej.; #0000 a #FFFF y &0 a &65535
aparecen para el operando N de la instruccin XFER(070).
Operandos que indican nmeros de control (excepto nmeros de salto):
Los nmeros de control aparecen en forma decimal, p. ej., 0 a 1023 aparece
para el operando N de la instruccin SBS(091).

Descripciones de notacin y disposicin de instrucciones

Seccin

3-1

Ejemplos
En los ejemplos las constantes aparecen con la notacin de CX Programmer, p.
ej., los operandos que especifican valores numricos aparecen en forma decimal con el prefijo &, tal y como se ve en el ejemplo siguiente.
XFER
&10
D00100
D00200

Los mtodos de entrada para constantes de los dispositivos de programacin


aparecen en la tabla siguiente.
Operando

CX-Programmer

Consola de programacin

Operandos que
especifican cadenas de
bits (introducidos
normalmente como
hexadecimales)

Introducido
como decimal
con el prefijo &
o como
hexadecimal
con ell prefijo
fij #.
#
(Ver nota.)

Pulse la tecla Cont/# si desea que


todos los valores hexadecimales se
introduzcan por defecto con el prefijo
#. Pulse la tecla CHG si desea
alternar entre hexadecimal (con
el
(
prefijo
fij #),
#) decimal
d i l con signo
i
(con
(
+/--)
/ )
y decimal sin signo (con el prefijo &).

Introducidos
como
decimales con
el prefijo #. (Ver
nota.)

Introducidos directamente en forma


decimal.

Operandos que
especifican valores
numricos (introducidos
normalmente como
decimales)
Operandos que
especifican nmeros de
control (exceptuando
nmeros de salto)

Si el prefijo & aparece


automticamente, se puede utilizar la
tecla CHG para alternar entre
decimales sin signo (con el prefijo &),
hexadecimales (con el prefijo #) y
decimales con signo (con +/--).
Si no aparece ningn prefijo debe
introducirse el valor en forma decimal.

Nota Al introducir operandos en el CX Programmer aparecern los rangos de entrada


junto con los prefijos correspondientes.
Indicadores de condicin

En esta seccin se utilizan las etiquetas de la consola de programacin como


indicadores de condicin. Con el CX Programmer, los indicadores de condicin
se registran previamente como smbolos globales con una P_ delante del
nombre del smbolo.
Indicador

Etiqueta de la consola de
programacin

Etiqueta del
CX-Programmer

Indicador de error

ER

P_ER

Indicador de error
de acceso

AER

P_AER

Indicador de
acarreo

CY

P_CY

Indicador de
mayor que

>

P_GT

Indicador de igual

P_EQ

Indicador de
menor que

<

P_LT

Indicador de
negativo

P_N

Indicador de
overflow

OF

P_OF

Indicador de
underflow

UF

P_UF

Indicador de
mayor o igual que

>=

P_GE

117

Descripciones de notacin y disposicin de instrucciones


Indicador

118

Seccin

Etiqueta de la consola de
programacin

Etiqueta del
CX-Programmer

Indicador de
distinto

<>

P_NE

Indicador de
menor o igual que

<=

P_LE

Indicador de
siempre en ON

ON

P_On

Indicador de
siempre en OFF

OFF

P_Off

3-1

Actualizacin de instrucciones para las CPU de la versin 1 de la serie CS1

3-2

Seccin

3-2

Actualizacin de instrucciones para las CPU de la versin


1 de la serie CS1
Se han actualizado las siguientes instrucciones para las CPU de la versin 1.
Consulte el nmero de pgina correspondiente para ms informacin.
Las funciones que soportan las CPU de la versin 1 aparecen indicadas por
(slo -EV1).
Nombre

Mnemnico

Cdigo
de
funcin

Funcin

READ DATA FILE

FREAD

700

Ahora son soportados los


formatos de datos CSV y
texto (.txt).

WRITE DATA FILE

FWRIT

701

(Anteriormente slo
eran
soportados los datos
binarios).

DELIVER COMMAND

CMND

490

Ahora la CPU puede


mandarse a s misma
comandos FINS.

Actualizacin

Se han cambiado los


contenidos de los datos de
control aadiendo formato
de datos,
datos retornos de carro
y especificaciones de la
posicin del retorno de
carro.

Se ha aadido la
capacidad de enviar
comandos FINS a la CPU
(Antes esto no era posible). ejecutando CMND(490).

Pgin
a
681

688

672

119

Instrucciones de entrada de secuencia

3-3
3-3-1

Seccin

Instrucciones de entrada de secuencia


LOAD: LD

Funcin

Indica el inicio de un bloque lgico y crea una condicin de ejecucin ON/OFF


basada en el estado ON/OFF del bit de operando especificado.

Smbolo de diagrama de
rels

Variacio-- nes

Punto de inicio de bloque

Barra de bus

Variacio-nes

Reinicia el bloque lgico y crea una condicin


LD
ON en cada ciclo que el bit de operando est en
ON
Reinicia el bloque lgico y crea una condicin
ON una vez para diferencial ascendente

@LD

Reinicia el bloque lgico y crea una condicin


ON una vez para diferencial descendente

%LD

Especificacin de refresco inmediato


Variacio-Refresca el bit de entrada, reinicia el circuito
nes
lgico y crea una condicin ON una vez para
combina-diferencial ascendente
d
das
Refresca el bit de entrada, reinicia el circuito
lgico y crea una condicin ON una vez para
diferencial descendente

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

120

3-3

reas de programa
de pasos
OK

rea

Subrutinas
OK

!LD
!@LD

!%LD

Tareas de
interrupcin
OK

Bit de operando LD

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A00000 a A95915

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea de indicador de
tarea

TK0000 a TK0031

Indicadores de
condicin

ER, CY, N, OF, UF, >, =, <, >=, <>, <=, A1, A0

Pulsos de reloj

0,0 2s, 0,1 s, 0,2 s, 1 s, 1 min.

rea TR

TR0 a TR15

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Instrucciones de entrada de secuencia

Seccin

rea

3-3

Bit de operando LD

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

LD se utiliza para el primer bit normalmente abierto desde la barra de bus o para
el primer bit normalmente abierto de un bloque lgico. Si no existe una especificacin de refresco inmediato se leer el bit especificado en la memoria de E/S.
Si existe una especificacin de refresco inmediato se leer y utilizar el estado
del terminal de entrada de la unidad de entrada bsica.
En las siguientes circunstancias se utilizar LD como una instruccin para indicar un inicio lgico.
Cuando se est conectando directamente con la barra de bus.
Cuando los bloques lgicos estn conectados por AND LD o OR LD, es decir,
al principio de un bloque lgico.
Las instrucciones AND LOAD y OR LOAD se utilizan para conectar en serie o en
bloques lgicos paralelos que empiezan por LD o LD NOT.
Se necesita por lo menos una instruccin LOAD o LOAD NOT para ejecutar la
condicin cuando las instrucciones de salida no pueden conectarse directamente con la barra de bus. Si no existe ninguna instruccin LOAD o LOAD NOT
tendr lugar un error de programacin en la comprobacin de programa que hacen los dispositivos perifricos.
Cuando se conectan bloques lgicos con las instrucciones AND LOAD o OR
LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coincidir
con el nmero total de instrucciones LOAD/LOAD NOT menos una. Si no coinciden tendr lugar un error de programacin. Para ms detalles consulte3-3-7
AND LD y 3-3-8 OR LD.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se pueden especificar FLANCO ASCENDENTE (@) o FLANCO DESCENDENTE (%) para LD. Si se especifica la primera, la condicin de ejecucin se
pone en ON durante un ciclo slo despus de que el estado del bit de operando
cambie de OFF a ON. Si se especifica la segunda, la condicin de ejecucin se
pone en ON durante un ciclo slo despus de que el estado del bit de operando
cambie de ON a OFF.
Se puede especificar el refresco inmediato (!) para LD. Una instruccin de refresco inmediato refresca el estado del bit de entrada justo antes de que se ejecute la instruccin para unidades de entrada bsicas (pero no para unidades de
entrada bsicas de bastidores esclavos o para unidades de entrada multipunto
de grupo 2 de C200H).
Es posible combinar el refresco inmediato y el diferencial ascendente o descendente (!@ o !%) en LD. Si se especifica cualquiera de ellas, la entrada se refresca desde la unidad de entrada bsica justo antes de que se ejecute la instruccin, y la condicin de ejecucin se pone en ON durante un ciclo slo despus de que el estado cambie de OFF a ON o viceversa.

121

Instrucciones de entrada de secuencia

Seccin

3-3

Ejemplo

Instruccin

3-3-2

Operando

LD

000000

LD

000001

LD

000002

AND

000003

OR LD

---

AND LD

---

LD NOT

000004

AND

000005

OR LD

---

OUT

000100

OR LD

LOAD NOT: LD NOT

Funcin

Indica un inicio lgico y crea una condicin de ejecucin ON/OFF basada en la


inversin del estado ON/OFF del bit de operando especificado.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables
Especificaciones de
operandos

Punto de inicio de bloque

Barra de bus

Variacio-nes

Reinicia el bloque lgico y crea una condicin


LD NOT
ON en cada ciclo que el bit de operando est en
OFF
Reinicia el bloque lgico y crea una condicin
en ON una vez para diferencial ascendente

No soportado.

Reinicia el bloque lgico y crea una condicin


ON una vez para diferencial descendente

No soportado.

Especificacin de refresco inmediato

!LD NOT

Variacio-nes
combina-d
das

No soportado.

Refresca el bit de entrada, reinicia el circuito


No soportado.
lgico y crea una condicin en ON una vez para
diferencial ascendente
Refresca el bit de entrada, reinicia el circuito
lgico y crea una condicin ON una vez para
diferencial descendente

reas de programa
de bloques
OK

122

AND LD

OR LD

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit LD NOT

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A00000 a A95915

Instrucciones de entrada de secuencia

Seccin

rea

3-3

Operando de bit LD NOT

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea de indicador de
tarea

TK0000 a TK0031

Indicadores de
condicin

ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER

Impulsos de reloj

0.0 2s, 0.1 s, 0.2 s, 1 s, 1 min.

rea TR

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

LD NOT se utiliza para el primer bit normalmente cerrado desde la barra de bus
o para el primer bit normalmente cerrado de un bloque lgico. Si no existe una
especificacin de refresco inmediato se leer e invertir el bit especificado en la
memoria de E/S. Si existe una especificacin de refresco inmediato se leer,
invertir y utilizar el estado del terminal de entrada de la unidad de entrada bsica.
En las siguientes circunstancias se utilizar LD NOT como una instruccin para
indicar un inicio lgico.
Cuando se est conectando directamente a la barra de bus.
Cuando los bloques lgicos estn conectados por AND LD o OR LD (utilizados
al principio de un bloque lgico).
Las instrucciones AND LOAD y OR LOAD se utilizan para conectar en series o
en bloques lgicos paralelos que empiezan por LD o LD NOT.
Se necesita por lo menos una instruccin LOAD o LOAD NOT para ejecutar la
condicin cuando las instrucciones de salida no pueden conectarse directamente a la barra de bus. Si no existe ninguna instruccin LOAD o LOAD NOT
tendr lugar un error de programa en la comprobacin de programa que hacen
los dispositivos perifricos.
Cuando se conectan bloques lgicos con las instrucciones AND LOAD o OR
LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coincidir
con el nmero total de instrucciones LOAD/LOAD NOT menos una. Si no coinciden tendr lugar un error de programacin.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se puede especificar el refresco inmediato (!) para LD NOT. Una instruccin de


refresco inmediato refresca el estado del bit de entrada justo antes de que se
ejecute la instruccin para unidades de entrada bsicas (pero no para unidades
de entrada bsicas de bastidores esclavos o para unidades de entrada multipunto de grupo 2 de C200H).

123

Instrucciones de entrada de secuencia

Seccin

3-3

Ejemplo

Instruccin

3-3-3

Operando

LD

000000

LD

000001

LD

000002

AND

000003

OR LD

---

AND LD

---

LD NOT

000004

AND

000005

OR LD

---

OUT

000100

AND LD

OR LD

OR LD

AND: AND

Funcin

Realiza la operacin lgica AND del estado del bit de operando especificado y la
condicin de ejecucin actual.

Smbolo de diagrama de
rels
Variacio-- nes

Variacio-nes

Crea una condicin ON en cada ciclo cuando el


resultado de AND es ON

AND

Crea una condicin ON una vez para diferencial @AND


ascendente
Crea una condicin ON una vez para diferencial %AND
descendente

reas de programa
aplicables

Especificacin de refresco inmediato

!AND

Variacio-nes
combina-bi
das

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial ascendente

!@AND

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial descendente

!%AND

reas de programa
de bloques
OK

Especificaciones de
operandos

124

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit AND

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A00000 a A95915

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea de indicador de
tarea

TK0000 a TK0031

Indicadores de
condicin

ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER

Instrucciones de entrada de secuencia

Seccin

rea

3-3

Operando de bit AND

Pulsos de reloj

0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

rea TR

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Se utiliza AND para un bit normalmente abierto conectado en serie. AND no se


puede conectar directamente a la barra de bus, y no se puede utilizar al principio
de un bloque lgico. Si no existe una especificacin de refresco inmediato se
leer el bit especificado en la memoria de E/S. Si existe una especificacin de
refresco inmediato se leer el estado del terminal de entrada de la unidad de
entrada bsica.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se pueden especificar FLANCO ASCENDENTE (@) o FLANCO DESCENDENTE (%) para AND. Si se especifica la primera, la condicin de ejecucin se
pone en ON durante un ciclo slo despus de que el estado del bit de operando
cambie de OFF a ON. Si se especifica la segunda, la condicin de ejecucin se
pone en ON durante un ciclo slo despus de que el estado del bit de operando
cambie de ON a OFF.
Se puede especificar el refresco inmediato (!) para AND. Una instruccin de refresco inmediato refresca el estado del bit de entrada justo antes de que se ejecute la instruccin desde la unidad de entrada bsica (pero no desde unidades
de entrada bsicas de bastidores esclavos o para unidades de entrada multipunto de grupo 2 de C200H).
Es posible combinar el refresco inmediato y el diferencial ascendente o descendente (!@ o !%) en AND. Si se especifica cualquiera de ellas, la entrada se refresca desde la unidad de entrada bsica justo antes de que se ejecute la instruccin, y la condicin de ejecucin se pone en ON durante un ciclo slo despus de que el estado cambie de OFF a ON o viceversa.

Ejemplo

125

Instrucciones de entrada de secuencia

Seccin

Instruccin

3-3-4

3-3

Operando

LD

000000

AND

000001

LD

000002

AND

000003

LD

000004

AND NOT

000005

OR LD

---

AND LD

---

OUT

000006

AND NOT: AND NOT

Funcin

Invierte el estado del bit de operando especificado y realiza una operacin lgica AND con la condicin de ejecucin actual.

Smbolo de diagrama de
rels
Variacio-- nes

Variacio-nes

Crea una condicin ON en cada ciclo que el


resultado de AND NOT es ON

AND NOT

Crea una condicin ON una vez para diferencial No soportado.


ascendente
Crea una condicin ON una vez para diferencial No soportado.
descendente

reas de programa
aplicables

Especificacin de refresco inmediato

!AND NOT

Variacio-nes
combina-bi
das

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial ascendente

No soportado.

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial descendente

No soportado.

reas de programa
de bloques
OK

Especificaciones de
operandos

126

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit AND NOT

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea de indicador de
tarea
Indicadores de
condicin
Pulsos de reloj

TK0000 a TK0031

rea TR

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

A00000 a A95915

ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER
0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

Instrucciones de entrada de secuencia

Seccin

rea

3-3

Operando de bit AND NOT

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Se utiliza AND NOT para un bit normalmente cerrado conectado en serie. AND
NOT no se puede conectar directamente a la barra de bus, y no se puede utilizar
al principio de un bloque lgico. Si no existe una especificacin de refresco inmediato se leer el bit especificado en la memoria de E/S. Si existe una especificacin de refresco inmediato se leer el estado de los terminales de entrada de
la unidad de entrada bsica.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se puede especificar el refresco inmediato (!) para AND NOT. Una instruccin
de actualizacin inmediata refresca el estado del bit de entrada justo antes de
que se ejecute la instruccin desde unidades de entrada bsicas (pero no para
unidades de entrada bsicas de bastidores esclavos o para unidades de entrada multipunto de grupo 2 de C200H).

Ejemplo

Instruccin

3-3-5

Operando

LD

000000

AND

000001

LD

000002

AND

000003

LD

000004

AND NOT

000005

OR LD

---

AND LD

---

OUT

000006

OR: OR

Funcin

Smbolo de diagrama de
rels

Realiza la operacin lgica OR del estado ON/OFF del bit de operando especificado y la condicin de ejecucin actual.
Barra de bus

127

Instrucciones de entrada de secuencia


Variacio-- nes

Variacio-nes

Seccin
Crea una condicin ON en cada ciclo que el
resultado de OR es ON

3-3

OR

Crea una condicin ON una vez para diferencial @OR


ascendente
Crea una condicin ON una vez para diferencial %OR
descendente

reas de programa
aplicables

Especificacin de refresco inmediato

!OR

Variacio-nes
combina-bi
das

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial ascendente

!@OR

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial descendente

!%OR

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit OR

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea de indicador de
tarea

TK0000 a TK0031

Indicadores de
condicin

ER, CY, N, OF, UF, >, =, <, >=, <>, <=, ON, OFF, AER

Impulsos de reloj

0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

A00000 a A95915

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Se utiliza OR para un bit normalmente abierto conectado en paralelo. Un bit normalmente abierto est configurado para formar una OR lgica con un bloque
lgico que empiece con una instruccin LOAD o LOAD NOT (conectado a la barra de bus o al principio de un bloque lgico). Si no existe una especificacin de
refresco inmediato se leer el bit especificado en la memoria de E/S. Si existe
una especificacin de refresco inmediato se leer el estado del terminal de entrada de la unidad de entrada bsica.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se pueden especificar FLANCO ASCENDENTE (@) o FLANCO DESCENDENTE (%) para OR. Si se especifica la primera, la condicin de ejecucin se
pone en ON durante un ciclo slo despus de que el estado del bit de operando
cambie de OFF a ON. Si se especifica la segunda, la condicin de ejecucin se
pone en ON durante un ciclo slo despus de que el estado del bit de operando
cambie de ON a OFF.

128

Instrucciones de entrada de secuencia

Seccin

3-3

Se puede especificar el refresco inmediato (!) para OR. Una instruccin de refresco inmediato refresca el estado del bit de entrada justo antes de que se ejecute la instruccin desde la unidad de entrada bsica (pero no para unidades de
entrada bsicas de bastidores esclavos o para unidades de entrada multipunto
de grupo 2 de C200H).
Es posible combinar el refresco inmediato y DIFFERENTIATION UP/DOWN
(!@ or !%) en OR. Si se especifica cualquiera de ellas, la entrada se refresca
desde la unidad de entrada bsica justo antes de que se ejecute la instruccin, y
la condicin de ejecucin se pone en ON durante un ciclo slo despus de que
el estado del bit de operando cambie de OFF a ON o viceversa.
Ejemplo

Instruccin

3-3-6

Operando

LD

000000

AND

000001

AND

000002

OR

000003

AND

000004

LD

000005

AND

000006

OR NOT

000007

AND LD

---

OUT

000008

OR NOT: OR NOT

Funcin

Invierte el estado del bit especificado y realiza una operacin lgica OR con la
condicin de ejecucin actual.

Smbolo de diagrama de
rels

Variacio-- nes

Barra de bus

Variacio-nes

Crea una condicin ON en cada ciclo que el


resultado de OR NOT es ON

OR NOT

Crea una condicin ON una vez para diferencial No soportado.


ascendente
Crea una condicin ON una vez para diferencial No soportado.
descendente

reas de programa
aplicables

Especificacin de refresco inmediato

!OR NOT

Variacio-nes
combina-bi
das

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial ascendente

No soportado.

Refresca el bit de entrada y crea una condicin


ON una vez para diferencial descendente

No soportado.

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit OR NOT

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

129

Instrucciones de entrada de secuencia

Seccin

rea

3-3

Operando de bit OR NOT

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea de indicador de
tarea
Indicadores de
condicin
Pulsos de reloj

TK0000 a TK0031

rea TR

---

rea DM

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

A00000 a A95915

ER, CY, N, OF, UF, >, =, <, >=, <>, <=, A1, A0
0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Se utiliza OR NOT para un bit normalmente cerrado conectado en paralelo. Un


bit normalmente cerrado est configurado para formar una OR lgica con un
bloque lgico que empiece con una instruccin LOAD o LOAD NOT (conectado
a la barra de bus o al principio de un bloque lgico). Si no existe una especificacin de refresco inmediato se leer el bit especificado en la memoria de E/S. Si
existe una especificacin de refresco inmediato se leer el estado del terminal
de entrada de la unidad de entrada bsica.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se puede especificar el refresco inmediato (!) para OR NOT. Una instruccin de


refresco inmediato refresca el estado del bit de entrada justo antes de que se
ejecute la instruccin desde una unidad de entrada bsica (pero no desde unidades de entrada bsicas de bastidores esclavos o para unidades de entrada
multipunto de grupo 2 de C200H).

Ejemplo

130

Instrucciones de entrada de secuencia

Seccin

Instruccin

3-3-7

3-3

Operando

LD

000000

AND

000001

AND

000002

OR

000003

AND

000004

LD

000005

AND

000006

OR NOT

000007

AND LD

---

OUT

000008

AND LOAD: AND LD

Funcin

Realiza la operacin lgica AND entre bloques lgicos.

Smbolo de diagrama de
rels
Variacio-- nes

Bloque lgico

Variacio-nes

Bloque lgico

Crea una condicin ON en cada ciclo cuando el


resultado de AND es ON

No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Descripcin

reas de programa
de pasos
OK

AND LD

Subrutinas
OK

Tareas de
interrupcin
OK

AND LD conecta en serie el bloque lgico inmediatamente anterior a esta instruccin con otro bloque lgico.
LD
a

Bloque lgico A

LD
a

AND LD

Bloque lgico B

Conexin en serie entre el bloque lgico A y el bloque


lgico B.

El bloque lgico est formado por todas las instrucciones desde una instruccin
LOAD o LOAD NOT hasta justo antes de la siguiente instruccin LOAD o LOAD
NOT del mismo escaln.
En el siguiente diagrama se indican los bloques lgicos con lneas de puntos. En
este ejemplo vemos que se producir una condicin de ejecucin ON cada vez
que cualquiera de las condiciones de ejecucin del bloque lgico de la izquierda
son ON (es decir, cuando CIO 000000 o CIO 000001 estn en ON) y cualquiera
de las condiciones de ejecucin del bloque lgico de la derecha son ON (es decir, cuando CIO 000002 est en ON o CIO 000003 estn en OFF).

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se pueden conectar en serie tres o ms bloques lgicos utilizando esta instruccin para conectar primero dos de los bloques lgicos y conectar despus los

131

Instrucciones de entrada de secuencia

Seccin

3-3

bloques subsiguientes en orden. Tambin es posible colocar esta instruccin


despus de tres o ms bloques lgicos y conectarlos todos juntos en serie.
Cuando se conectan un bloque lgico con las instrucciones AND LOAD o OR
LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coincidir
con el nmero total de instrucciones LOAD/LOAD NOT menos una. Si no coinciden tendr lugar un error de programa.
Ejemplo

Ejemplo de codificacin (1)


Instruccin

Operando

LD

000000

OR NOT

000001

LD NOT

000002

OR

000003

AND LD

---

LD

000004

OR

000005

AND LD

---

.
.

.
.

OUT

000500

Ejemplo de codificacin (2)


Instruccin

Operando

LD

000000

OR NOT

000001

LD NOT

000002

OR

000003

LD

000004

OR

000005

.
.

.
.

AND LD

---

AND LD

---

.
.

.
.

OUT

000500

La instruccin AND LOAD se puede utilizar de forma repetida. Sin embargo, en


el mtodo de programacin (2) mencionado anteriormente el nmero de instrucciones AND LOAD es uno menos que el nmero de instrucciones LOAD y
LOAD NOT que haba antes.
En el mtodo (2) asegrese de que el nmero total de instrucciones LOAD y
LOAD NOT anteriores a AND LOAD no es mayor que ocho. Si desea utilizar
nueve o ms, programe con el mtodo (1). Si existen nueve o ms con el mtodo (2) tendr lugar un error de programa durante la comprobacin de programa que realizan los dispositivos perifricos.

132

Instrucciones de entrada de secuencia

Seccin

3-3

Codificacin
Direccin

Instruccin

Operando

000000

LD

000000

000001

OR

000001

000002

LD

000002

000003

OR NOT

000003

000004

AND LD

---

000005

OUT

000500

Segundo LD: Se utiliza para el primer bit del bloque siguiente conectado en serie al bloque anterior.

3-3-8

OR LOAD: OR LD

Funcin

Realiza la operacin lgica OR entre bloques lgicos.

Smbolo de diagrama de
rels

Bloque lgico

Bloque lgico

Variacio-- nes

Variacio-nes

Crea una condicin ON en cada ciclo cuando el


resultado de AND es ON

No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Descripcin

reas de programa
de pasos
OK

OR LD

Subrutinas
OK

Tareas de
interrupcin
OK

AND LD conecta en paralelo el bloque lgico inmediatamente anterior a esta


instruccin con otro bloque lgico.
LD
a

Bloque lgico A

LD
a

OR LD

Bloque lgico B
Conexin en paralelo entre el bloque lgico A y el bloque
lgico B.

El bloque lgico est formado por todas las instrucciones desde una instruccin
LOAD o LOAD NOT hasta justo antes de la siguiente instruccin LOAD o LOAD
NOT del mismo escaln.
El siguiente diagrama necesita una instruccin OR LOAD entre el bloque lgico
superior y el inferior. Se producir una condicin de ejecucin ON bien cuando
CIO 000000 est en ON y CIO 000001 en OFF o bien cuando tanto CIO 000002
como CIO 000003 estn en ON. La operacin de un cdigo mnemnico para la
instruccin OR LOAD es exactamente la misma que la de la instruccin AND
LOAD, con la excepcin de que la condicin de ejecucin est sumada lgicamente a la ltima condicin de ejecucin no utilizada.

Indicadores

Esta instruccin no afecta a ningn indicador.

133

Instrucciones de entrada de secuencia


Precauciones

Seccin

3-3

Se pueden conectar en paralelo tres o ms bloques lgicos utilizando esta instruccin para conectar primero dos de los bloques lgicos y conectar despus
los bloques subsiguientes en orden. Tambin es posible colocar esta instruccin despus de tres o ms bloques lgicos y conectarlos todos juntos en paralelo.
Cuando se conectan un bloque lgico con las instrucciones AND LOAD o OR
LOAD, el nmero total de instrucciones AND LOAD/OR LOAD debe coincidir
con el nmero total de instrucciones LOAD/LOAD NOT menos una. Si no coinciden tendr lugar un error de programacin.

Ejemplo

Ejemplo de codificacin (1)


Instruccin

Operando

LD

000000

AND NOT

000001

LD NOT

000002

AND NOT

000003

OR LD

---

LD

000004

AND

000005

OR LD

---

.
.

.
.

OUT

000501

Ejemplo de codificacin (2)


Instruccin

Operando

LD

000000

AND NOT

000001

LD NOT

000002

AND NOT

000003

LD

000004

AND

000005

.
.
OR LD

.
.
---

OR LD

---

.
.
OUT

.
.
000501

La instruccin OR LOAD se puede utilizar de forma reiterada. Sin embargo, en


el mtodo de programacin (2) mencionado anteriormente el nmero de instrucciones OR LOAD es menor en uno que el nmero de instrucciones LOAD y
LOAD NOT que haba antes.
En el mtodo (2) asegrese de que el nmero total de instrucciones LOAD y
LOAD NOT anteriores a OR LOAD no es mayor que ocho. Si desea utilizar
nueve o ms, programe con el mtodo (1). Si existen nueve o ms con el mtodo (2) tendr lugar un error de programa durante la comprobacin de programa que hacen los dispositivos perifricos.

134

Instrucciones de entrada de secuencia

Seccin

3-3

Codificacin
Direccin

Instruccin

Operando

000100

LD

000000

000101

AND NOT

000001

000102

LD

000002

000103

AND

000003

000104

OR LD

---

000105

OUT

000501

Segundo LD: Se utiliza para el primer bit del bloque siguiente conectado en serie con el bloque anterior.

3-3-9

Instrucciones de refresco diferenciado e inmediato


Las instrucciones LOAD, AND y OR tienen, adems de sus formas normales,
variaciones de refresco inmediato y de diferencial, y hay otras dos combinaciones disponibles.
Las instrucciones LOAD NOT, AND NOT, OR NOT, OUT y OUT NOT tienen variaciones de refresco inmediata adems de sus formas normales.
El tiempo de E/S para datos manejados por las instrucciones es distinto para
instrucciones de diferencial y normales, instrucciones de refresco inmediato e
instrucciones de diferencial de refresco inmediato.
Las instrucciones de diferencial y normales se ejecutan utilizando entradas de
datos realizadas por procesos de refresco de E/S previos, y los resultados son
salidas con el siguiente proceso de E/S. Aqu, refresco de E/S hace referencia
a los datos intercambiados entre la memoria interna de la CPU y la unidad de
E/S.
Adems del refresco de E/S mencionado, una instruccin de refresco inmediato
intercambia datos con la unidad de E/S en aquellos canales a los que accede la
instruccin. Una instruccin de refresco inmediato actualiza ocho bits de forma
simultnea (los ocho bits de la izquierda o derecha) adems del bit especificado.
No se pueden utilizar las instrucciones de refresco inmediato para unidades de
bastidores esclavos.

135

Instrucciones de entrada de secuencia


Variacin de
instruccin
Normal

Mnemnico
LD, AND, OR, LD NOT,
AND NOT, OR NOT

OUT, OUT NOT

Diferencial
ascendente

@LD, @AND, @OR

Diferencial
descendente

%LD, %AND, %OR

Refresco inmediato

!LD, !AND, !OR, !LD NOT,


!AND NOT, !OR NOT

Seccin
Funcin
La CPU toma nota mediante un
refresco cclico del estado ON/OFF del
bit especificado y lo refleja en la
ejecucin de la siguiente instruccin.
Una vez se ha ejecutado la instruccin,
el estado ON/OFF del bit especificado
sale con el refresco cclico siguiente.
La instruccin se ejecuta una vez,
cuando el bit especificado pasa de
OFF a ON y se mantiene el estado en
ON durante un ciclo.
La instruccin se ejecuta una vez,
cuando el bit especificado pasa de ON
a OFF y se mantiene el estado en ON
durante un ciclo.
La CPU toma la introduccin de datos
para el bit especificado y se ejecuta la
instruccin.

3-3

Refresco de E/S
Refresco cclico

Antes de la ejecucin de
la instruccin

!OUT, !OUT NOT

Una vez se ha ejecuta la instruccin


Tras la ejecucin de la
salen los datos para el bit especificado. instruccin

Diferencial
ascendente /
refresco inmediato

!@LD, !@AND, !@OR

La CPU refresca la introduccin de


datos para el bit especificado, y la
instruccin se ejecuta una vez, cuando
el bit pasa de OFF a ON y se mantiene
el estado en ON durante un ciclo.

Diferencial
descendente /
refresco inmediato

!%LD, !%AND, !%OR

La CPU refresca la introduccin de


datos para el bit especificado, y la
instruccin se ejecuta una vez, cuando
el bit pasa de ON a OFF y se mantiene
el estado en ON durante un ciclo.

136

Antes de la ejecucin de
la instruccin

Instrucciones de entrada de secuencia

3-3-10

Seccin

3-3

Diagrama de tiempo de operacin para Instrucciones de E/S


El grfico siguiente muestra las diferencias en los tiempos de operaciones de
instruccin para un programa configurado desde LD y OUT.
Entrada
recibida

Entrada
recibida
Entrada
recibida

Entrada
recibida

Entrada
recibida

Entrada
Entrada recibida
recibida

Entrada
recibida

!
!

Entrada
recibida

Entrada
recibida

Entrada
recibida

Entrada
recibida

Proceso de
la CPU
Ejecucin de instruccin

3-3-11

Refresco de E/S

Bits TR
Los bits TR se utilizan para retener de forma temporal el estado ON/OFF de las
condiciones de ejecucin en un programa cuando se est programando en cdigo mnemnico. No se utilizan para programar directamente en forma de programa de diagrama de rels porque el procesamiento lo ejecutan automticamente los dispositivos perifricos. El diagrama siguiente muestra una aplicacin sencilla utilizando dos bits TR.

137

Instrucciones de entrada de secuencia

Seccin

3-3

Direccin Instruccin Operandos


000000
000001
000002
000003
000004
000005
000006
000007
000008
000009
000010
000011
000012
000013
000014

Utilizacin de TR0 a TR15

LD
OUT
AND
OUT
AND
OUT
LD
AND
OUT
LD
AND
OUT
LD
AND NOT
OUT

000000
TR0
000001
TR1
000002
000500
TR1
000003
000501
TR0
000004
000502
TR0
000005
000503

De TR0 a TR15 se utilizan slo con las instrucciones LOAD y OUTPUT. No hay
restricciones en cuanto a orden en que se utilicen las direcciones de bit.
En algunas ocasiones es posible simplificar un programa escribindolo de
nuevo de tal forma que no se necesiten bits TR. El diagrama siguiente muestra
un caso en el que no se necesita un bit TR y otro en el que se necesita.

(1)

(2)

En el bloque de instrucciones (1) el estado ON/OFF en el punto A es el mismo


que el de la salida CIO 00200, as que se pueden codificar AND 000001 y OUT
000201 sin necesidad de un bit TR. En el bloque de instrucciones (2) el estado
del punto de la bifurcacin y el de la salida CIO 000202 no tienen por qu ser el
mismo, por lo que es necesario utilizar un bit TR. En este caso, se puede reducir
el nmero de pasos en el programa utilizando el bloque de instrucciones (1) en
lugar del bloque de instrucciones (2).
Consideraciones de TR0 a
TR15

Los bits TR slo se utilizan para mantener (OUT TR0 a TR15) y restaurar (LD
TR0 a TR15) el estado ON/OFF de los puntos de bifurcacin en programas con
muchas bifurcaciones de salida. Son, por tanto, distintos de los bits generales, y
no se pueden utilizar con las instrucciones AND u OR, o con instrucciones que
incluyan NOT.

Duplicacin de salidas
de TR0 a TR15

No se puede repetir una direccin de bit TR dentro del mismo bloque en un programa con muchas bifurcaciones de salida, tal y como se muestra en el dia-

138

Instrucciones de entrada de secuencia

Seccin

3-3

grama siguiente. Sin embargo, s puede utilizarse de nuevo en un bloque distinto.

3-3-12 NOT: NOT(520)


Funcin

Invierte la condicin de ejecucin.

Smbolo de diagrama de
rels
Variacio-- nes

NOT(520)

Variacio-nes

Invierte la condicin de ejecucin en cada ciclo

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

NOT(520)

Subrutinas
OK

Tareas de
interrupcin
OK

Descripcin

NOT(520) se coloca entre una condicin de ejecucin y otra instruccin para


invertir la condicin de ejecucin.

Indicadores

NOT(520) no afecta a ningn indicador.

Precauciones

NOT(520) es una instruccin intermedia, es decir, no se puede utilizar como una


instruccin de derecha. Asegrese de programar una instruccin de derecha
despus de NOT(520).

Ejemplo

NOT(520) invierte la condicin de ejecucin en el ejemplo siguiente.

La siguiente tabla muestra la operacin de esta seccin del programa.

139

Instrucciones de entrada de secuencia

Seccin
Estado del bit de entrada

CIO 000000

CIO 000001

3-3

Estado del bit de


salida
CIO 000002

CIO 000003

3-3-13 CONDICIN ON/OFF: UP(521) y DOWN(522)


Funcin

UP(521) pone en ON la condicin de ejecucin para la instruccin siguiente durante un ciclo cuando la condicin de ejecucin pasa de OFF a ON. DOWN(522)
pone en ON la condicin de ejecucin para la instruccin siguiente durante un
ciclo cuando la condicin de ejecucin pasa de ON a OFF.

Smbolos de diagrama de
rels

UP(521)
DOWN(522)

Variacio-- nes

Variacio-nes

Crea una condicin ON una vez para diferencial UP(521)


ascendente
No soportado

Especificacin de refresco inmediato


Variacio-nes

Crea una condicin ON una vez para diferencial DOWN(522)


descendente
No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Descripcin

UP(521) se coloca entre una condicin de ejecucin y otra instruccin para


cambiar la condicin de ejecucin a una condicin diferencial ascendente.
UP(521) hace que la instruccin de conexin se ejecute slo una vez cuando la
condicin de ejecucin pasa de OFF a ON.
DOWN(522) se coloca entre una condicin de ejecucin y otra instruccin para
cambiar la condicin de ejecucin a una condicin diferencial descendente.
DOWN(522) hace que la instruccin de conexin se ejecute slo una vez
cuando la condicin de ejecucin pasa de ON a OFF.
Las instrucciones DIFU(013) y DIFD(014) tambin se pueden utilizar para la
misma funcin, pero necesitan bits de trabajo. UP(521) y DOWN(522) simplifican la programacin reduciendo el nmero de bits de trabajo y direcciones de
programa necesarios.

Indicadores

UP(521) y DOWN(522) no afectan a ningn indicador.

Precauciones

UP(521) y DOWN(522) son instrucciones intermedias, es decir, no se pueden


utilizar como instrucciones de derecha. Asegrese de programar una instruccin de derecha despus de UP(521) o DOWN(522).
La operacin de UP(521) y DOWN(522) depende de la condicin de ejecucin
de la instruccin, as como de la condicin de ejecucin para la seccin del programa (en aquellos casos en los que se programe en una seccin de programa
enclavada, una seccin de programa saltada o en una subrutina). Para ms detalles consulte 3-5-3 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003),
3-5-4 JUMP y JUMP END: JMP(004) y JME(005), e 3-19 Instrucciones de control de interrupcin.

140

Instrucciones de entrada de secuencia


Ejemplos

Seccin

3-3

Cuando, en el siguiente ejemplo, CIO 000000 cambia de OFF a ON,


CIO 000001 se pone en ON slo durante un ciclo.

Tiempo
de ciclo

Tiempo
de ciclo

3-3-14 TEST DE BITS: TST(350) y TSTN(351)


Funcin

LD TST(350), AND TST(350), y OR TST(350) se utilizan en el programa como


LD, AND, y OR; la condicin de ejecucin es ON cuando el bit especificado del
canal especificado est en ON, y OFF cuando el bit est en OFF.
LD TSTN(351), AND TSTN(351), y OR TST(351) se utilizan en el programa
como LD, NOT, AND NOT, y OR NOT; la condicin de ejecucin es OFF cuando
el bit especificado del canal especificado est en ON, y ON cuando el bit est en
OFF.

Smbolos de diagrama de
rels

TST(350)
S

S: Canal fuente

N: Nmero de bit

TSTN(351)

Variacio-- nes

Variacio-nes

S: Canal fuente

N: Nmero de bit
TST(350)

Ejecutado en cada ciclo

Especificacin de refresco inmediato

No soportado

Variacio-nes

TSTN(351)

Ejecutado en cada ciclo

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

N: Nmero de bit
El nmero de bit debe estar entre 0000 y 000F en formato hexadecimal o entre
&0000 y &0015 en decimal. Slo el bit de la derecha (0 a F hexadecimal) de los
contenidos del canal es vlido cuando se especifica la direccin de un canal.

141

Instrucciones de entrada de secuencia


Especificaciones de
operandos

Seccin

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-3

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #000F (binario) o


&0 a &15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

LD TST(350), AND TST(350), y OR TST(350) se pueden utilizan en el programa


como LD, AND, y OR; la condicin de ejecucin es ON cuando el bit especificado del canal especificado est en ON, y OFF cuando el bit est en OFF. A
diferencia de LD, AND y OR, los bits de las reas DM y EM se pueden utilizar
como operandos en TST(350).
LD TSTN(351), AND TSTN(351), y OR TST(351) se pueden utilizan en el programa como LD, NOT, AND NOT, y OR NOT; la condicin de ejecucin es OFF
cuando el bit especificado del canal especificado est en ON, y ON cuando el bit
est en OFF. A diferencia de LD NOT, AND NOT y OR NOT, los bits de las reas
DM y EM se pueden utilizar como operandos en TSTN(351).

Indicadores

Precauciones

142

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

OFF

Indicador de
negativo

OFF

TST(350) y TSTN(351) son instrucciones intermedias, es decir, no se pueden


utilizar como instrucciones de derecha. Asegrese de programar una instruccin de derecha despus de TST(350) o TSTN(351).

Instrucciones de entrada de secuencia


Ejemplo

Seccin

3-3

LD TST(350) y LD TSTN(351)
En el ejemplo siguiente, CIO 000001 se pone a ON cuando el bit 3 de D00010
est en ON.

&3

En el ejemplo siguiente, CIO 000001 se pone a ON cuando el bit 3 de D00010


est en OFF.

&3

AND TST(350) y AND TSTN(351)


En el ejemplo siguiente, CIO 000001 se pone a ON cuando tanto CIO 000000
como el bit 3 de D00010 estn en ON.

&3

En el ejemplo siguiente, CIO 000001 se pone a ON cuando CIO 000000 est en


ON y el bit 5 de D00010 est en OFF.

&5

OR TST(350) y OR TSTN(351)
En el ejemplo siguiente, CIO 000001 se pone a ON cuando o bien CIO 000000 o
bien el bit 3 de D00010 estn en ON.

&3

En el ejemplo siguiente, CIO 000001 se pone a ON cuando CIO 000000 est en


ON o cuando el bit 3 de D00010 est en OFF.

&3

143

Instrucciones de salida de secuencia

3-4

Seccin

3-4

Instrucciones de salida de secuencia

3-4-1

SALIDA: OUT

Funcin

Enva el resultado (condicin de ejecucin) del procesamiento lgico al bit especificado.

Smbolo de diagrama de
rels

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

OUT

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
!OUT

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit OUT

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115

rea de temporizador

---

rea de contador

---

rea TR

TR0 a TR15

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

A44800 a A95915

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a ,IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Si no existe ninguna especificacin de refresco inmediato, se escribe el estado


de la condicin de ejecucin en el bit especificado de la memoria de E/S. Si
existe la especificacin de refresco inmediato, el estado de la condicin de ejecucin se escribe tambin en el terminal de salida de la unidad de salida bsica,
adems de en el bit de salida de la memoria de E/S.

Indicadores

Esta instruccin no afecta a ningn indicador.

Precauciones

Se puede especificar el refresco inmediato (!) para OUT y OUT NOT. Una instruccin de refresco inmediato refresca el estado del terminal de salida justo
despus de que se ejecute la instruccin para la unidad de salida bsica (pero
no para unidades de salida bsica de bastidores esclavos o para unidades de
entrada multipunto de grupo 2 de C200H), al mismo tiempo que escribe el estado de la condicin de ejecucin en el bit de salida especificado de la memoria
de E/S.

144

Instrucciones de salida de secuencia

Seccin

3-4

Ejemplo

Instruccin

3-4-2

Operando

LD

000000

OUT

000001

OUT NOT

000002

SALIDA NEGADA: OUT NOT

Funcin

Invierte el resultado (condicin de ejecucin) del procesamiento lgico y lo enva al bit especificado.

Smbolo de diagrama de
rels

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

OUT NOT

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
!OUT NOT

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Operando de bit OUT

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115

rea de temporizador

---

rea de contador

---

rea TR

TR0 a TR15

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

A44800 a A95915

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a ,IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Si no existe ninguna especificacin de refresco inmediato, se escribe e invierte


el estado de la condicin de ejecucin en el bit especificado de la memoria de

145

Instrucciones de salida de secuencia

Seccin

3-4

E/S. Si existe la especificacin de refresco inmediato, el estado de la condicin


de ejecucin se invierte y se escribe tambin en el terminal de salida de la unidad de salida bsica, adems de en el bit de salida de la memoria de E/S.
Indicadores

Esta instruccin no afecta a ningn indicador.

Ejemplo

Instruccin

Operando

LD

000000

OUT

000001

OUT NOT

000002

3-4-3 REL DE ENCLAVAMIENTO: KEEP(011)


Funcin
Smbolo de diagrama de
rels

Funciona como rel de enclavamiento.


S (Set)

KEEP(011)
B

B: Bit

R (Reset)

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

KEEP(011)

Ejecutado una vez para diferencial ascendente

No soportado

Ejecutado una vez para diferencial


descendente

No soportado
!KEEP(011)

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Especificaciones de
operandos

146

reas de programa
de pasos
OK

Subrutinas
OK

rea

OK
B

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A44800 a A95915

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Tareas de
interrupcin

Instrucciones de salida de secuencia

Seccin
rea

3-4

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Cuando S se pone en ON, el bit designado se pondr en ON y permanecer en


ese estado hasta su restablecimiento, independientemente de si S se queda en
ON o pasa a OFF. Cuando R se pone en ON, el bit designado pasar a OFF. La
relacin entra las condiciones de ejecucin y el estado del bit KEEP(011) aparece a continuacin.
Set

Reset

ON

Condicin de ejecucin de S

OFF

Condicin de ejecucin de R

OFF

Estado de C

OFF

ON
ON

SI S y R estn en ON a la vez, tiene preferencia la entrada de reset.


Set
Reset

Estado de
C

No se puede recibir la entrada de set (S) cuando R est en ON.


Set
Reset

Estado de
C

KEEP (011) tiene una variacin de refresco inmediato (!KEEP(011)). Cuando se


ha especificado un bit de salida externo para B en una instruccin !KEEP(011),
se refrescar cualquier cambio en B cada vez que se ejecute !KEEP(011) y se
reflejar inmediatamente en el bit de salida. El cambio no se reflejar inmediatamente si el bit est asignado a una unidad de E/S de alta densidad de grupo 2,
una unidad de E/S especial de alta densidad o una unidad montada en un bastidor esclavo de E/S remota SYSMAC BUS.

147

Instrucciones de salida de secuencia

Seccin

3-4

KEEP(011) funciona como el bit de autorretencin, pero un bit de autorretencin


programado con KEEP(011) necesita una instruccin menos.

Los bits de autorretencin programados con KEEP(011), a diferencia de aquellos programados sin KEEP(011), mantendrn el estado incluso en una seccin
enclavada del programa.

El bit de salida C conservar


su estado anterior en un enclavamiento.

El bit de salida C se pondr en OFF en un enclavamiento.

Se puede utilizar KEEP(011) para crear biestables, tal y como se muestra a continuacin.

Si se utiliza un bit de retencin para B, el estado del bit se mantendr incluso en


caso de corte de alimentacin. Por tanto, KEEP(011) se puede utilizar para programar bits que mantendrn su estado una vez reiniciada la mquina tras un
corte de alimentacin. A continuacin aparece un ejemplo que puede utilizarse

148

Instrucciones de salida de secuencia

Seccin

3-4

para crear la visualizacin de una advertencia cada vez que se caiga el sistema
debido a una emergencia.

Indica situacin de
emergencia

Entrada de reset

Activa la
visualizacin
de la advertencia

Se puede mantener el estado de los bits del rea de E/S en caso de que haya un
corte de alimentacin poniendo en ON el bit de retencin IOM y seleccionando
el estado del bit de retencin IOM en la configuracin del PLC En este caso, y al
igual que los bits de retencin, los bits del rea de E/S utilizados en KEEP(011)
conservarn su estado una vez reiniciada la mquina tras un corte de alimentacin. Asegrese de reiniciar el PLC tras cambiar la configuracin del mismo, de
lo contrario no se utilizarn las nuevas configuraciones.
Indicadores

KEEP(011) no afecta a ningn indicador.

Precauciones

No utilice un bit de entrada en una condicin normalmente cerrada en el restablecimiento (R) para KEEP(011) cuando el dispositivo de entrada utilice una
fuente de alimentacin de c.a. El retardo al cerrar la fuente de alimentacin de
c.c. del PLC (relativo a la fuente de alimentacin de c.a. del dispositivo de entrada) puede originar que se restablezca el bit de operando de KEEP(011). A
continuacin se reproduce esta situacin.
Unidad de entrada
A

KEEP
120000

NUNCA

Los operandos de KEEP(011) se introducen en un orden diferente en los diagramas de rels y en el cdigo mnemnico.
Orden del diagrama de rels:
Entrada de set KEEP(011) Entrada de
reset
Orden del cdigo mnemnico: Entrada de set Entrada de reset
KEEP(011)
Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 pasa a ON, CIO 00500 se pone
en ON. CIO 00500 permanece en ON hasta que CIO 000001 pasa a ON.

149

Instrucciones de salida de secuencia

Seccin

3-4

Cuando, en el siguiente ejemplo, CIO 000002 pasa a ON y CIO 000003 pasa a


OFF, CIO 00100 se pone en ON. CIO 00100 permanece en ON hasta que
CIO 000004 o CIO 000005 pasan a ON.

Codificacin
Direccin

Instruccin

Operando

000100

LD

000000

000101

LD

000001

000102

KEEP (011)

000500

000103

LD

000002

000104

AND NOT

000003

000105

LD

000004

000106

OR

000005

000107

KEEP (011)

000100

Nota KEEP(011) se introduce con distintos rdenes en forma de diagrama de rels y


en forma mnemnica. En forma de diagrama de rels se introduce la entrada de
set, KEEP(011), y luego la entrada de reset. En forma mnemnica se introduce
la entrada de set, la entrada de reset y luego KEEP(011).

3-4-4 FLANCO ASCENDENTE/DESCENDENTE: DIFU(013) y DIFD(014)


Funcin

DIFU(013) pone el bit designado en ON durante un ciclo cuando la condicin de


ejecucin pasa de OFF a ON (flanco ascendente).
DIFD(014) pone el bit designado en ON durante un ciclo cuando la condicin de
ejecucin pasa de ON a OFF (flanco descendente).

Smbolos de diagrama de
rels

DIFU(013)
B

B: Bit

DIFD(014)
B

Variacio-- nes

Variacio-nes

B: Bit

Ejecutado cada ciclo para condicin ON

No soportado

Ejecutado una vez para diferencial ascendente

DIFU(013)

Ejecutado una vez para diferencial


descendente

No soportado

Especificacin de refresco inmediato

150

!DIFU(013)

Instrucciones de salida de secuencia

Seccin

Variacio-nes

Ejecutado cada ciclo para condicin ON

No soportado

Ejecutado una vez para diferencial ascendente

DIFD(014)

Ejecutado una vez para diferencial


descendente

No soportado
!DIFD(014)

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Especificaciones de
operandos

3-4

reas de programa
de pasos
OK

Subrutinas
OK

rea

Tareas de
interrupcin
OK

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A44800 a A95915

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --) IR0 a ,15--(-- --) IR

Descripcin

Cuando la condicin de ejecucin pasa de OFF a ON, DIFU(013) pone B en ON.


Cuando se alcanza DIFU(013) en el ciclo siguiente, B se pone en OFF.
Condicin de ejecucin
Estado de B
Un ciclo

Cuando la condicin de ejecucin pasa de ON a OFF, DIFD(014) pone B en ON.


Cuando se alcanza DIFD(014) en el ciclo siguiente, B se pone en OFF.
Condicin de ejecucin

Estado de B

Un ciclo

DIFU(013) y DIFD(014) tienen variaciones de refresco inmediato (!DIFU(013) y


!DIFD(014)). Cuando se ha especificado un bit de salida externo para B en una
de estas instrucciones, se refrescar cualquier cambio en B cada vez que se
ejecute la instruccin y se reflejar inmediatamente en el bit de salida. El cambio
no se reflejar inmediatamente si el bit est asignado a una unidad de E/S de
alta densidad de grupo 2, una unidad de E/S especial de alta densidad o una
unidad montada en un bastidor esclavo de E/S remota SYSMAC BUS.

151

Instrucciones de salida de secuencia

Seccin

3-4

Se pueden utilizar UP(521) y DOWN(522) para ejecutar una instruccin slo en


un ciclo cuando la condicin de ejecucin pasa de OFF ON o de ON OFF.
Para ms detalles consulte 3-3-13CONDITION ON/OFF: UP(521) y
DOWN(522).
Indicadores

DIFU(013) y DIFD(014) no afectan a ningn indicador.

Precauciones

La operacin de DIFU(013) y DIFD(014) depende de la condicin de ejecucin


de la instruccin, as como de la condicin de ejecucin de la seccin del programa (en aquellos casos en los que se programe en una seccin de programa
enclavada, una seccin de programa saltada o en una subrutina). Para ms detalles consulte 3-5-3 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003),
3-5-4 JUMP y JUMP END: JMP(004) y JME(005), e 3-19 Instrucciones de control de interrupcin.

Ejemplos

Funcionamiento de DIFU(013)
Cuando, en el siguiente ejemplo, CIO 000000 cambia de OFF a ON,
CIO 001000 se pone en ON slo durante un ciclo.

1 ciclo

1 ciclo

Funcionamiento de DIFD(014)
Cuando, en el siguiente ejemplo, CIO 000000 cambia de ON a OFF,
CIO 001000 se pone en ON slo durante un ciclo.

1 ciclo

1 ciclo

3-4-5 SET y RESET: SET y RSET


Funcin

SET pone el bit de operando en ON cuando la condicin de ejecucin es ON.


RSET pone el bit de operando en OFF cuando la condicin de ejecucin es ON.

Smbolos de diagrama de
rels

SET
B

B: Bit

RSET
B

Variacio-- nes

152

Variacio-nes

B: Bit

Ejecutado cada ciclo para condicin ON

SET

Ejecutado una vez para diferencial ascendente

@SET

Ejecutado una vez para diferencial


descendente

%SET

Especificacin de refresco inmediato

!SET

Variacio-nes
combina-bi
das

Refresco inmediato sencillo para diferencial


ascendente

!@SET

Refresco inmediato sencillo para diferencial


descendente

!%SET

Instrucciones de salida de secuencia

Seccin

Variacio-nes

reas de programa
aplicables

Ejecutado cada ciclo para condicin ON

RSET

Ejecutado una vez para diferencial ascendente

@RSET

Ejecutado una vez para diferencial


descendente

%RSET

Especificacin de refresco inmediato

!RSET

Variacio-nes
combina-bi
das

Refresco inmediato sencillo para diferencial


ascendente

!@RSET

Refresco inmediato una sola vez para


diferencial descendente

!%RSET

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

Subrutinas
OK

rea

3-4

Tareas de
interrupcin
OK

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A44800 a A95915

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SET pone en ON el bit de operando cuando la condicin de ejecucin es ON, y


no afecta al estado del bit de operando cuando la condicin de ejecucin es
OFF. Utilice RSET para poner en OFF un bit que fue previamente puesto en ON
con SET.
Condicin de ejecucin de SET
Estado de B

RSET pone en OFF el bit de operando cuando la condicin de ejecucin es ON,


y no afecta al estado del bit de operando cuando la condicin de ejecucin es
OFF. Utilice SET para poner en ON un bit que fue previamente puesto en OFF
con RSET.
Condicin de ejecucin de RSET
Estado de B

SET y RSET tienen variaciones de refresco inmediato (!SET y !RSET). Cuando


se ha especificado un bit de salida externo para B en una de estas instrucciones,

153

Instrucciones de salida de secuencia

Seccin

3-4

se refrescar cualquier cambio en B cada vez que se ejecute la instruccin y se


reflejar inmediatamente en el bit de salida. (El cambio no se reflejar inmediatamente si el bit est asignado a una unidad de E/S de alta densidad de grupo 2,
una unidad de E/S especial de alta densidad o una unidad montada en un bastidor esclavo de E/S remota SYSMAC BUS.)
Las entradas de set y reset de una instruccin KEEP(011) deben programarse
con la instruccin, pero las instrucciones SET y RSET se pueden programar de
forma completamente independiente. Adems, se puede utilizar el mismo bit
como operando en cualquier nmero de instrucciones SET o RSET.
Indicadores

SET y RSET no afectan a ningn indicador.

Precauciones

No se pueden utilizar SET y RSET para seleccionar y restablecer temporizadores y contadores.


Cuando SET o RSET se programen entre IL(002) e ILC(003) o entre JMP(004) y
JME(005) no cambiar el estado del bit especificado si la seccin del programa
est enclavada o saltada.

Ejemplo

Diferencias entre OUT/OUT NOT y SET/RSET


El funcionamiento de SET es distinto del de OUT porque la instruccin OUT
pone el bit operando en OFF cuando la condicin de ejecucin es OFF. De la
misma forma, RSET es distinta de OUT NOT porque sta ltima pone el bit de
operando en ON cuando su condicin de ejecucin es OFF.
000000

CIO 010000 se pone en ON/OFF


cuando CIO 000000 se pone en
ON/OFF.

000001

CIO 010000 se pone en ON


cuando CIO 000001 pasa a ON;
permanece en ON hasta que
CIO 000002 se pone en ON.

000002

3-4-6 MULTIPLE BIT SET/RESET: SETA(530)/RSTA(531)


Funcin

SETA(530) pone en ON el nmero de bits consecutivos especificado.


RSTA(531) pone en OFF el nmero de bits consecutivos especificado.

Smbolos de diagrama de
rels

SETA(530)
D

D: Canal de comienzo

N1

N1: Bit de comienzo

N2

N2: Nmero de bits

RSTA(531)

Variacio-- nes

Variacio-nes

D: Canal de comienzo

N1

N1: Bit de comienzo

N2

N2: Nmero de bits

Ejecutado cada ciclo para condicin ON

SETA(530)

Ejecutado una vez para diferencial ascendente

@SETA(530)

Ejecutado una vez para diferencial


descendente

No soportado

Especificacin de refresco inmediato

154

No soportado

Instrucciones de salida de secuencia

Seccin

Variacio-nes

Ejecutado cada ciclo para condicin ON

RSTA(531)

Ejecutado una vez para diferencial ascendente

@RSTA(531)

Ejecutado una vez para diferencial


descendente

No soportado
No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

3-4

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

D: Canal de comienzo
Especifica el primer canal en el que se ponen bits en ON o en OFF.
N1: Bit de comienzo
Especifica el primer bit que se pone en ON o en OFF. N1 debe ser #0000 a
#000F (&0 a &15).
N2: Nmero de bits
Especifica el nmero de bits que se pondr en ON o en OFF. N2 debe ser #0000
a #FFFF (&0 a &65535).
Nota Los bits que se ponen en ON o en OFF deben estar en la misma rea de datos.
El rango de canales es, aproximadamente, D a D+N216.
D
a
D: 256 canales mx.

Especificaciones de
operandos

rea

N1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

N2

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

#0000 a #000F
(binario) o &0 a
&15

Registros de datos

---

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #FFFF
(binario) o &0 a
&65535

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

155

Instrucciones de salida de secuencia


Descripcin

Seccin

3-4

Las operaciones de SETA(530) y RSTA(531) se describen por separado a continuacin.


Operacin de SETA(530)
SETA(530) pone en ON los bits N2, empezando por el bit N1 de D, y continuando hacia la izquierda (bits ms significativos). Todos los dems bits quedan
sin cambios. No se realizar ningn cambio si N2 est en 0.
Los bits que SETA(530) pone en ON se pueden poner en OFF con cualquier otra
instruccin, no slo con RSTA(531).

Los bits N2 se establecen en 1 (ON).

Se puede utilizar SETA(530) para poner en ON bits de las reas de datos a las
que normalmente slo se accede a travs de canales, tales como las reas DM
y EM.
Funcionamiento de RSTA(531)
RSTA(531) pone en OFF los bits N2, empezando por el bit N1 de D, y continuando hacia la izquierda (bits ms significativos). Todos los dems bits quedan
sin cambios. No se realizar ningn cambio si N2 est en 0.
Los bits que RSTA(531) pone en OFF se pueden poner en ON con cualquier
otra instruccin, no slo con SETA(530).

Los bits N2 se restablecen en 0 (OFF).

Se puede utilizar RSTA(531) para poner en OFF bits de las reas de datos a las
que normalmente slo se accede a travs de canales, tales como las reas DM
y EM.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N1 no est dentro del rango especificado de 0000
a 000F.
OFF en todos los dems casos.

Ejemplos

Ejemplo de SETA(530)
Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, los 20 bits (0014
hexadecimal) que comienzan con el bit 5 de CIO 0100 se ponen en ON.

N1: Bit 5

&5
&20

156

N2: 20 bits

Instrucciones de control de secuencia

Seccin

3-5

Ejemplo de RSTA(531)
Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, los 20 bits (0014
hexadecimal) que comienzan con el bit 3 de CIO 0100 se ponen en OFF.

N1: Bit 3

N2: 20 bits

&3
&20

3-5

Instrucciones de control de secuencia

3-5-1 END: END(001)


Funcin

Indica el final de un programa.

Smbolo de diagrama de
rels
Variacio-- nes

END(001)
Variacio-nes

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Descripcin

reas de programa
de pasos
No se admite

END(001)

Subrutinas
No se admite

Tareas de
interrupcin
OK

END(001) completa la ejecucin de un programa durante ese ciclo. No se ejecutarn instrucciones que se hayan escrito despus de END(001).
La ejecucin pasa al programa con el siguiente nmero de tarea. Cuando el programa que se est ejecutando tiene el nmero de tarea ms alto del programa,
END(001) marca el final del programa principal global.

Tarea 1

Programa A

Al siguiente nmero de tarea

Tarea 2

Programa B

Al siguiente nmero de tarea

Tarea n

Programa Z

Final del programa principal

Refresco de E/S

157

Instrucciones de control de secuencia


Precauciones

Seccin

3-5

Coloque siempre una instruccin END(001) al final de cada programa. Tendr


lugar un error de programacin si no hay una instruccin END(001) en el programa.

3-5-2 NO OPERATION: NOP(000)


Funcin

Esta instruccin no tiene funcin. (No se procesa NOP(000)).

Smbolo de diagrama de
rels

No hay ningn diagrama de rels asociado a NOP(000).

Variaciones

Variacio-nes

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

NOP(000)

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Descripcin

NOP(000) no realiza ningn procesamiento, pero se puede utilizar para reservar lneas (donde ms tarde se insertarn instrucciones) en el programa.
Cuando se inserten las instrucciones ms adelante no habr ningn cambio en
las direcciones del programa.

Indicadores

NOP(000) no afecta a ningn indicador.

Precauciones

NOP(000) slo puede utilizarse en visualizaciones mnemnicas, y no con programas de diagramas de rels.

3-5-3 INTERLOCK e INTERLOCK CLEAR: IL(002) e ILC(003)


Funcin

Enclava todas las salidas entre IL(002) e ILC(003) cuando la condicin de ejecucin para IL(002) es OFF. IL(002) e ILC(003) se suelen utilizar en parejas.

Smbolos de diagrama de
rels

IL(002)
ILC(003)

Variacio-- nes

Variacio-nes

IL(002)

Enclava en OFF/No enclava en ON

Especificacin de refresco inmediato

No soportado

Variacio-nes

ILC(003)

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Descripcin

reas de programa
de pasos
No se admite

OK

Tareas de
interrupcin
OK

Cuando la condicin de ejecucin para IL(002) es OFF, las salidas para todas
las instrucciones entre IL(002) e ILC(003) estn enclavadas. Cuando la condicin de ejecucin para IL(002) es ON, las salidas para todas las instrucciones
entre IL(002) e ILC(003) se ejecutan normalmente.
Condicin de
ejecucin

Condicin de Condicin de
ejecucin ON ejecucin OFF

Seccin enclavada
del programa

158

Subrutinas

Ejecucin
normal

Salidas
enclavadas.

Instrucciones de control de secuencia

Seccin

3-5

La tabla siguiente muestra el tratamiento de varias salidas en una seccin enclavada entre IL(002) e ILC(003).
Instruccin

Tratamiento

Bits especificados en OUT y OUT NOT

OFF

TIM, TIMH(015), TMHH(540), Indicador de


y TIML(542)
(
)
finalizacin

OFF (reset)

PV

Tiempo seleccionado (reset)

Bits/canales especificados en todas las dems


instrucciones*

Mantener el estado anterior.

Nota Los bits y canales de todas las dems instrucciones, incluyendo TTIM(087),
MTIM(543), SET, RSET, CNT, CNTR(012), SFT, y KEEP(011), mantienen su estado anterior.
Si desea que algunos bits permanezcan en ON en una seccin de programa
enclavada, ponga estos bits en ON con SET justo antes de IL(002).
A menudo es ms eficiente enlazar una seccin de programa con IL(002) e
ILC(003). Cuando se controlan varios procesos con la misma condicin de ejecucin se necesitan unos cuantos pasos de programa para ubicar estos procesos entre IL(002) e ILC(003).

La tabla siguiente muestra las diferencias entre IL(002)/ILC(003) y


JMP(004)/JME(005).
Elemento

Tratamiento en
IL(002)/ILC(003)

Tratamiento en
JMP(004)/JME(005)

Ejecucin de instruccin

No se ejecutan instrucciones de
temporizador ni instrucciones que no
sean OUT y OUT NOT.

No se ejecuta ninguna instruccin.

Estado de salida en instrucciones

Todas las salidas, excepto las salidas


en OUT, OUT NOT e instrucciones de
temporizador, conservan su estado
anterior.

Todas las salidas conservan su estado


anterior.

Bits en OUT/OUT NOT

OFF

Todas las salidas conservan su estado


anterior.

Estado de instrucciones de
temporizador
(excepto (TTIM(087) y MTIM(543))

Reset

Los temporizadores de operacin (slo


TIM, TIMH, TMHH) continan
funcionando porque se actualizan los
PV incluso cuando no se est
ejecutando la instruccin de
temporizador.

Indicadores

Precauciones

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

OFF

Indicador de
negativo

OFF

No se acorta el tiempo de ciclo cuando una seccin del programa est enclavada debido a que las instrucciones de enclavamiento se ejecutan de forma interna.

159

Instrucciones de control de secuencia

Seccin

3-5

La operacin de DIFU(013), DIFD(014) y las instrucciones de diferencial no dependen nicamente del estado de la condicin de ejecucin cuando estn programadas entre IL(002) e ILC(003). No se guardan los cambios en la condicin
de ejecucin de DIFU(013), DIFD(014) ni una instruccin de diferencial si
DIFU(013) o DIFD(014) estn en una seccin enclavada y la condicin de ejecucin para IL(002) es OFF.
En general, IL(002) e ILC(003) se utilizan en parejas, aunque es posible utilizar
ms de un IL(002) con un solo ILC(003), tal y como aparece en el diagrama siguiente. Si IL(002) e ILC(003) no estn emparejados aparecer un mensaje de
error cuando se lleve a cabo la comprobacin del programa, pero el programa
se ejecutar correctamente.

Condicin de
ejecucin
a

Seccin de programa
A

OFF

ON

Enclavada

Enclavada

OFF

OFF

Enclavada

Enclavada

ON

OFF

Sin enclavar

Enclavada

ON

ON

Sin enclavar

Sin enclavar

No se pueden anidar IL(002) e ILC(003), tal y como aparece en el diagrama siguiente.

Ejemplos

160

Cuando, en el siguiente ejemplo, CIO 000000 est en OFF, todas las salidas
entre IL(002) e ILC(003) estn enclavadas. Cuando, en el siguiente ejemplo,

Instrucciones de control de secuencia

Seccin

3-5

CIO 000000 est en ON, todas las instrucciones entre IL(002) e ILC(003) se
ejecutan normalmente.

CIO 000000 CIO 000000


ON
OFF

OFF

OFF
Ejecucin
normal
Reset

Salidas
enclavadas.

Mantenida

Mantenida

3-5-4 SALTO Y FIN DE SALTO: JMP(004) y JME(005)


Funcin

Si la condicin de ejecucin de JMP(004) es OFF, la ejecucin del programa


salta directamente a la primera JME(005) del programa con el mismo nmero
de salto. JMP(004) y JME(005) se utilizan en parejas.

Smbolos de diagrama de
rels

JMP(004)
N

N: Nmero de salto

JME(005)
N

Variacio-- nes

Variacio-nes

N: Nmero de salto
JMP(004)

Salta en OFF/No salta en ON

Especificacin de refresco inmediato

No soportado

Variacio-nes

JME(005)

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
No se admite

Subrutinas
OK

Tareas de
interrupcin
OK

N: Nmero de salto
El nmero de salto debe ser 0000 a 03FF (0 a 1.023 decimal).

161

Instrucciones de control de secuencia


Especificaciones de
operandos

Seccin

3-5

rea
JMP(004)

JME(005)

rea CIO

CIO 0000 a CIO 6143

---

rea de trabajo

W000 a W511

---

rea de bits de
retencin

H000 a H511

---

rea de bits auxiliares

A000 a A959

---

rea de temporizador

T0000 a T4095

---

rea de contador

C0000 a C4095

---

rea DM

D00000 a D32767

---

rea EM sin banco

E00000 a E32767

---

rea EM con banco

En_00000 a En_32767

---

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767

---

@ E00000 a @ E32767
@ En_00000 a
@ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

#0000 a #03FF (binario) o


&0 a &1023

#0000 a #03FF (binario) o


&0 a &1023

Registros de datos

DR0 a DR15

---

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a
--2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

Descripcin

Cuando la condicin de ejecucin para JMP(004) es ON no se realiza ningn


salto y el programa se ejecuta de forma consecutiva como est escrito.
Si la condicin de ejecucin de JMP(004) es OFF, la ejecucin del programa
salta directamente a la primera JME(005) del programa con el mismo nmero
de salto. Las instrucciones entre JMP(004) y JME(005) no se ejecutan, de tal
forma que se conserva el estado de las salidas entre JMP(004) y JME(005). En
los programas de bloques, se evitan las instrucciones entre JMP(004) y
JME(005), independientemente del estado de la condicin de ejecucin.
Condicin de ejecucin
Instrucciones
saltadas

Instrucciones
ejecutadas

Las instrucciones de esta seccin no


se ejecutan y se mantiene el estado de
salida. Se elimina el tiempo de ejecucin de instruccin para estas instrucciones.

Debido a que se evitan todas las instrucciones entre JMP(004) y JME(005)


cuando la condicin de ejecucin para JMP(004) es OFF, el tiempo de ciclo se
reduce en el equivalente al tiempo de ejecucin total de las instrucciones que no
se han ejecutado. En contraposicin, se lleva a cabo el procesamiento de
NOP(000) para las instrucciones entre JMP0(515) y JME0(516), de tal forma
que el tiempo de ciclo no se reduce tanto con estas instrucciones de salto.
La tabla siguiente compara las distintas instrucciones de salto.

162

Instrucciones de control de secuencia


Elemento

Seccin

JMP(004)
JME(005)

CJP(510)
JME(005)

OFF

Nmero permitido

1.024 total

Sin lmite

Procesamiento de instruccin con


salto

No ejecutado

Procesamiento de
NOP(000)

Tiempo de ejecucin de instruccin


con salto

Ninguno

Igual que
instrucciones
NOP(000)

Estado de salidas (bits y canales)


con salto

Los bits y canales conservan su estado anterior.

Estado de temporizadores de
operacin con salto

Los temporizadores de operacin siguen en marcha.

Procesamiento en programas de
bloques

Saltar siempre
Nombre
Indicador de
error

OFF

JMP0(515)
JME0(516)

Condicin de ejecucin para salto

Indicadores (JMP)

ON

CJPN(511)
JME(005)

Saltar en ON
Etique
ta

ER

3-5

OFF

Saltar en OFF

No se admite

Operacin
ON si N no est dentro del rango especificado de 0000
a 03FF.
ON si hay una JMP(004) en el programa sin una
JME(005) con el mismo nmero de salto.
ON si hay una JMP(004) en la tarea sin una JME(005)
con el mismo nmero de salto en la tarea.
OFF en todos los dems casos.

Precauciones

Todas las salidas (bits y canales) en las instrucciones de salto conservan su estado anterior. Los temporizadores de operacin (TIM, TIMH(015), y
TMHH(540)) siguen en marcha porque los PV se actualizan incluso aunque la
instruccin del temporizador no se est ejecutando.
Cuando hay dos o ms instrucciones JME(005) con el mismo nmero de salto,
slo es vlida la instruccin con la direccin ms baja. Se ignorar la instruccin
JME(005) con la direccin de programa mayor.
Cuando JME(005) precede a JMP(004) en el programa, las instrucciones entre
ambas se ejecutarn de forma repetida tanto tiempo como la condicin de ejecucin de JMP(004) est en OFF. Tendr lugar un error de tiempo de ciclo demasiado largo si la condicin de ejecucin no se pone en ON o si no se ejecuta
END(001) dentro del tiempo de ciclo mximo.

La seccin de programa A se
ejecuta de forma repetida
tanto tiempo como la condicin de ejecucin a est en
OFF.

En los programas de bloques se evitan las instrucciones entre JMP(004) y


JME(005), independientemente del estado de la condicin de ejecucin de
JMP(004)

Seccin de programa de bloques


JMP &1
a
JME &1

163

Instrucciones de control de secuencia

Seccin

3-5

Las parejas de JMP(004) y JME(005) deben estar en la misma tarea, dado que
no se permiten saltos entre tareas. Tendr lugar un error si una instruccin
JME(005) no est programada en la misma tarea que su instruccin JMP(004)
correspondiente.
El funcionamiento de DIFU(013), DIFD(014) e instrucciones de diferencial no
depende nicamente del estado de la condicin de ejecucin cuando estn programadas entre JMP(004) y JME(005). Cuando se ejecuta DIFU(013),
DIFD(014) o una instruccin de diferencial en una seccin saltada inmediatamente despus de que la condicin de ejecucin de JMP(004) se haya puesto
en ON, entonces la condicin de ejecucin para DIFU(013), DIFD(014) o la instruccin de diferencial se comparar con la condicin de ejecucin que exista
antes de que el salto se hiciera efectivo (es decir, antes de que la condicin de
ejecucin de JMP(004) se pusiera en OFF).
Ejemplos

Funcionamiento bsico
Cuando, en el siguiente ejemplo, CIO 000000 est en OFF, no se ejecutan las
instrucciones entre JMP(004) y JME(005) y las salidas conservan su estado anterior.
Cuando, en el siguiente ejemplo, CIO 000000 est en ON, las instrucciones entre JMP(004) y JME(005) se ejecutan normalmente.

&1

CIO 000000 CIO 000000


OFF
ON

Ejecucin
normal

No se ejecutan las instrucciones.


(No se alteran las salidas).

&1

3-5-5 SALTO CONDICIONAL: CJP(510)/CJPN(511)


Funcin

La operacin de CJP(510) es bsicamente la opuesta a la de JMP(004). Si la


condicin de ejecucin de CJP(510) es ON, la ejecucin del programa salta directamente a la primera JME(005) del programa con el mismo nmero de salto.
CJP(510) y JME(005) se utilizan en parejas.
La operacin de CJPN(511) es casi idntica a la de JMP(004). Si la condicin de
ejecucin de CJP(510) es OFF, la ejecucin del programa salta directamente a

164

Instrucciones de control de secuencia

Seccin

3-5

la primera JME(005) del programa con el mismo nmero de salto. CJPN(511) y


JME(005) se utilizan en parejas.
Smbolos de diagrama de
rels

CJP(510)
N

N: Nmero de salto

CJPN(511)
N

Variacio-- nes

Variacio-nes

N: Nmero de salto

CJP(510)

Salta en ON/No salta en OFF

Especificacin de refresco inmediato

No soportado

Variacio-nes

CJPN(511)

Salta en OFF/No salta en ON

Especificacin de refresco inmediato

No soportado

Variacio-nes

JME(005)

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos

Subrutinas

No se admite

OK

Tareas de
interrupcin
OK

N: Nmero de salto
El nmero de salto debe ser 0000 a 03FF (0 a 1.023 decimal).

Especificaciones de
operandos

rea
CJP(510)

CJPN(511)

JME(005)

rea CIO

CIO 0000 a CIO 6143

---

rea de trabajo

W000 a W511

---

rea de bits de
retencin

H000 a H511

---

rea de bits auxiliares

A000 a A959

---

rea de temporizador

T0000 a T4095

---

rea de contador

C0000 a C4095

---

rea DM

D00000 a D32767

---

rea EM sin banco

E00000 a E32767

---

rea EM con banco

En_00000 a En_32767

---

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767

---

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

#0000 a #03FF (binario) o &0 a


&1023

#0000 a #03FF
(binario) o &0 a
&1023

Registros de datos

DR0 a DR15

---

165

Instrucciones de control de secuencia

Seccin
rea

3-5

N
CJP(510)

CJPN(511)

JME(005)

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a


+2047,IR15
DR0 a DR15, IR0 a IR15

Descripcin

Las operaciones de CJP(510) y CJPN(511) slo se diferencian en la condicin


de ejecucin. CJP(510) salta a la primera instruccin JME(005) cuando la condicin de ejecucin es ON, y CJPN(511) salta a la primera JME(005) cuando la
condicin de ejecucin es OFF.
Debido a que no se ejecutan las instrucciones saltadas, el tiempo de ciclo se
reduce en el equivalente al tiempo total de ejecucin de las instrucciones saltadas.
Operacin de CJP(510)
Cuando la condicin de ejecucin para CJP(510) es OFF no se realiza ningn
salto y el programa se ejecuta de forma consecutiva como escrito.
Si la condicin de ejecucin de CJP(510) es ON, la ejecucin del programa salta
directamente a la primera JME(005) del programa con el mismo nmero de
salto.
Condicin
Condicin
de ejecucin de ejecucin
ON
OFF

Instrucciones
ejecutadas

Instrucciones
saltadas
Las instrucciones de esta seccin no
se ejecutan y se mantiene el estado de
salida. Se elimina el tiempo de ejecucin de instruccin para estas instrucciones.

Funcionamiento de CJPN(511)
Cuando la condicin de ejecucin para CJPN(511) es ON no se realiza ningn
salto y el programa se ejecuta de forma consecutiva como escrito.
Si la condicin de ejecucin de CJPN(511) es OFF, la ejecucin del programa
salta directamente a la primera JME(005) del programa con el mismo nmero
de salto.
Condicin
de ejecucin
ON

Instrucciones
ejecutadas

Indicadores

166

Condicin
de ejecucin
OFF
Instrucciones
saltadas
Las instrucciones de esta seccin no
se ejecutan y se mantiene el estado de
salida. Se elimina el tiempo de ejecucin de instruccin para estas instrucciones.

La tabla siguiente muestra los indicadores afectados por CJP(510) y


CJPN(511).

Instrucciones de control de secuencia


Nombre
Indicador de
error

Seccin
Etique
ta
ER

3-5

Operacin
ON si no hay una JME(005) con el mismo nmero de
salto que CJP(510) o CJPN(511).
ON si N no est dentro del rango especificado de 0000
a 03FF.
ON si hay una instruccin CJP(510) o CJPN(511) en
una tarea sin una JME(005) con el mismo nmero de
salto.
OFF en todos los dems casos.

Precauciones

Todas las salidas (bits y canales) en las instrucciones de salto conservan su estado anterior. Los temporizadores de operacin (TIM, TIMH(015), y
TMHH(540)) siguen en marcha porque los PV se actualizan incluso aunque la
instruccin del temporizador no se est ejecutando.
Cuando haya dos o ms instrucciones JME(005) con el mismo nmero de salto,
slo ser vlida la instruccin con la direccin ms baja. Se ignorar la instruccin JME(005) con la direccin de programa mayor.
Cuando JME(005) preceda en el programa a la instruccin CJP(510) o
CJPN(511), se ejecutarn de forma repetida las instrucciones situadas entre
ambas durante todo el tiempo que la condicin de ejecucin sea OFF
(CJP(510)) u ON (CJPN(511)). Tendr lugar un error de tiempo de ciclo demasiado largo si no se completa el salto cambiando la condicin de ejecucin y ejecutando END(001) dentro del tiempo de ciclo mximo.
Las instrucciones CJP(510) o CJPN(511) funcionarn normalmente en programas de bloques.
Cuando la condicin de ejecucin de CJP(510) sea ON o la condicin de ejecucin de CJPN(511) sea OFF, la ejecucin del programa saltar directamente a la
instruccin JME sin ejecutar las instrucciones entre CJP(510)/CJPN(511) y
JME. No ser necesario tiempo de ejecucin para estas instrucciones, por lo
que se reducir el tiempo de ciclo.
Cuando la condicin de ejecucin de JMP0 sea OFF se ejecutar el procesamiento de NOP entre JMP0 y JME0, operacin que necesita un tiempo de ejecucin. Por lo tanto, no se reducir el tiempo de ciclo.
Cuando se programe una instruccin CJP(510) o CJPN(511) en una tarea,
debe haber una JME(005) con el mismo nmero de salto, pues no estn permitidos los saltos entre tareas. Tendr lugar un error si una instruccin JME(005)
correspondiente no est programada en la misma tarea.
La operacin de DIFU(013), DIFD(014) e instrucciones diferenciadas no depende nicamente del estado de la condicin de ejecucin cuando estn programadas en una seccin de programa saltada. Cuando se ejecute DIFU(013),
DIFD(014) o una instruccin de diferencial en una seccin saltada inmediatamente despus de que la condicin de ejecucin de CJP(510) se haya puesto
en OFF (ON para CJPN(511)), entonces la condicin de ejecucin para
DIFU(013), DIFD(014) o la instruccin de diferencial se comparar con la condicin de ejecucin que exista antes de que el salto se hiciera efectivo.

Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, no se ejecutan las


instrucciones entre CJP(510) y JME(005) y las salidas conservan su estado anterior.

167

Instrucciones de control de secuencia

Seccin

3-5

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, las instrucciones entre CJP(510) y JME(005) se ejecutan normalmente.

&1

CIO 000000 CIO 000000


ON
OFF

No se ejecutan las
instrucciones.
(No se alteran las salidas).

Ejecucin
normal

&1

Nota Se invertira el estado de ON/OFF de CIO 000000 para CJPN(511).

3-5-6 SALTO MLTIPLE Y FIN DE SALTO MLTIPLE: JMP0(515) y


JME9(516)
Funcin

Si la condicin de ejecucin para JMP0(515) es OFF, todas las instrucciones


desde JMP0(515) hasta el siguiente JME0(516) del programa se procesan
como NOP(000). Utilice JMP0(515) y JME0(516) en parejas. No existe lmite
para el nmero de parejas que se pueden utilizar en el programa.

Smbolos de diagrama de
rels

JMP0(515)

JME0(516)

Variacio-- nes

Variacio-nes

JMP0(515)

Salta en OFF/No salta en ON

Especificacin de refresco inmediato

No soportado

Variacio-nes

JME0(516)

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Descripcin

168

reas de programa
de pasos
No se admite

Subrutinas
OK

Tareas de
interrupcin
OK

Cuando la condicin de ejecucin para JMP0(515) es ON no se realiza ningn


salto y el programa se ejecuta de forma consecutiva como escrito.

Instrucciones de control de secuencia

Seccin

3-5

Si la condicin de ejecucin para JMP0(515) es OFF, todas las instrucciones


desde JMP0(515) hasta el siguiente JME0(516) del programa se procesan
como NOP(000). A diferencia de JMP(004), CJP(510) y CJPN(511), JMP0(515)
no utiliza nmeros de salto, as que se pueden colocar estas instrucciones en
cualquier parte del programa.
Condicin
Condicin
de ejecucin a) de ejecucin a)
OFF InstruccioON
nes
saltadas
Instrucciones
ejecutadas

Las instrucciones saltadas se proceCondicin


Condicin
san como NOP(000). Los tiempos de
de ejecucin b) de ejecucin b) ejecucin de instruccin son los misOFF
ON
mos que NOP(000).
Instrucciones
ejecutadas
Instrucciones
saltadas

A diferencia de JMP(004), CJP(510) y CJPN(511), que saltan directamente a la


primera instruccin JME(005) del programa, todas las instrucciones entre
JMP0(515) y JME0(516) se ejecutan como NOP(000). El tiempo de ejecucin
de las instrucciones saltadas se reducir, pero no se eliminar. Las instrucciones saltadas no se ejecutan y sus salidas (bits y canales) conservan su estado
anterior.
Precauciones

Se pueden utilizar en el programa las parejas mltiples de instrucciones


JMP0(515) y JME0(516), pero no se pueden anidar.
Cuando JME0(516) precede a JMP0(515) en el programa, las instrucciones entre ambas se ejecutarn de forma repetida tanto tiempo como la condicin de
ejecucin de JMP0(515) sea OFF. Tendr lugar un error de tiempo de ciclo demasiado largo si la condicin de ejecucin no se pone en ON o si no se ejecuta
END(001) dentro del tiempo de ciclo mximo.
No se pueden utilizar JMP0(515) y JME0(516) en programas de bloques.
Cuando la condicin de ejecucin de JMP0 sea OFF se ejecutar el procesamiento de NOP entre JMP0 y JME0, operacin que necesita un tiempo de ejecucin. Por lo tanto, no se reducir el tiempo de ciclo.
Las parejas de JMP0(515) y JME0(516) deben estar en las mismas tareas,
dado que no se permiten saltos entre tareas.
La operaciones de DIFU(013), DIFD(014) e instrucciones de diferencial no dependen nicamente del estado de la condicin de ejecucin cuando estn programadas entre JMP0(515) y JME0(516). Cuando se ejecuta DIFU(013),
DIFD(014) o una instruccin de diferencial en una seccin saltada inmediatamente despus de que la condicin de ejecucin de JMP0(515) se haya puesto
en ON, entonces la condicin de ejecucin para DIFU(013), DIFD(014) o la instruccin de diferencial se comparar con la condicin de ejecucin que exista
antes de que el salto se hiciera efectivo (es decir, antes de que la condicin de
ejecucin de JMP0(515) se pusiera en OFF).

Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 est en OFF, las instrucciones


entre JMP0(515) y JME0(516) se ejecutan como NOP(000), y las salidas conservan su estado anterior.

169

Instrucciones de control de secuencia

Seccin

3-5

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, las instrucciones entre JMP0(515) y JME0(516) se ejecutan normalmente.

CIO 000000 CIO 000000


ON
OFF

Ejecucin
normal

Instrucciones procesadas
como
NOP(000)
(no se alteran las salidas).

3-5-7 BUCLES FOR-NEXT: FOR(512)/NEXT(513)


Funcin

Las instrucciones entre FOR(512) y NEXT(513) se repiten un nmero concreto


de veces. FOR(512) y NEXT(513) se utilizan en parejas.

Smbolos de diagrama de
rels

FOR(512)
N

N: Nmero de lazos

NEXT(513)

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

FOR(512)

Ejecutado cada ciclo para condicin ON

NEXT(513)
No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos
Especificaciones de
operandos

170

reas de programa
de pasos
No se admite

Subrutinas
OK

Tareas de
interrupcin
OK

N: Nmero de lazos
El nmero de lazos debe ser 0000 a FFFF (0 a 65.535 decimal).
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

Instrucciones de control de secuencia

Seccin
rea

3-5

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

#0000 a #FFFF (binario) o &0 a &65,535

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Las instrucciones entre FOR(512) y NEXT(513) se ejecutan N veces y despus


la ejecucin del programa contina con la instruccin que est despus de
NEXT(513). Se puede utilizar la instruccin BREAK(514) para cancelar el lazo.
Si N est seleccionado a 0, las instrucciones entre FOR(512) y NEXT(513) se
procesan como NOP(000).
Se pueden utilizar lazos para procesar tablas de datos con una cantidad mnima
de programacin.
Repetido N veces

Seccin de programa repetida

171

Instrucciones de control de secuencia

Seccin

3-5

Se pueden anidar los lazos FOR-NEXT hasta 15 niveles. En el ejemplo siguiente se ejecutan las secciones de programa A, B y C de la siguiente forma:
A B B C, A B B C, y A B B C

&3

&2

Utilice BREAK(514) para salir de un lazo FOR-NEXT. Se necesitan varias instrucciones BREAK(514) (el nmero de niveles anidados) para salir de los lazos
anidados. Las instrucciones restantes del lazo siguiente a BREAK(514) se procesan como instrucciones NOP(000).

&3

&3

Sale del lazo


cuando la condicin a) es ON.
Las instrucciones restantes
se procesan
1 2
como
NOP(000).

&2

Rompe el lazo FOR-NEXT


2.

Rompe el lazo FOR-NEXT


1.

Mtodos de enlace alternativos


Hay dos formas de repetir una seccin de programa hasta que se introduce una
condicin de ejecucin dada.
1, 2, 3...

172

1. Lazo FOR-NEXT con BREAK


Establezca un lazo FOR-NEXT con un mximo de N repeticiones. Programe una instruccin BREAK(514) dentro del lazo con la condicin de ejecucin deseada. El lazo terminar antes de N repeticiones si se introduce la
condicin de ejecucin.
2. Lazo JME(005)-JMP(004)
Programe un lazo con JME(005) antes de JMP(004). Se ejecutarn de
forma reiterada las instrucciones entre JME(005) y JMP(004) durante tanto
tiempo como la condicin de ejecucin de JMP(004) sea OFF. Tendr lugar
un error de tiempo de ciclo demasiado largo si la condicin de ejecucin no
se pone en ON o si no se ejecuta END(001) dentro del tiempo de ciclo mximo.

Instrucciones de control de secuencia


Indicadores

Nombre

Seccin
Etique
ta

3-5

Operacin

Indicador de
error

ER

ON si hay ms de 15 lazos anidados.

Indicador de
igual

OFF

Indicador de
negativo

OFF

OFF en todos los dems casos.

Programe FOR(512) y NEXT(513) en la misma tarea. No se repetir la ejecucin si estas instrucciones no estn en la misma tarea.

Precauciones

Se puede ejecutar una instruccin de salto, como JMP(004), en un lazo FORNEXT, pero no la programe para ir ms all del lazo FOR-NEXT.
No se pueden utilizar las siguientes instrucciones en lazos FOR-NEXT:
Instrucciones de programacin de bloques
MULTIPLE JUMP y MULTIPLE JUMP END: JMP(515) y JME(516)
STEP DEFINE y STEP START: STEP(008)/SNXT(009)
En el ejemplo siguiente, la seccin de programa enlazada transfiere el contenido de D00100 a la direccin indicada en D00200, y luego aumenta el contenido de D00200 en una unidad.

Ejemplo

&3

Repetido 3 veces.

D00100
@D00200

D00200

#0000

3-5-8 ROMPER BUCLE: BREAK(514)


Funcin

Programado en un lazo FOR-NEXT para cancelar la ejecucin del lazo en una


condicin de ejecucin dada. Las instrucciones restantes del lazo se procesan
como instrucciones NOP(000).

Smbolo de diagrama de
rels
Variacio-- nes

BREAK(514)

Variacio-nes

Ejecutado cada ciclo para condicin ON

BREAK(514)

Ejecutado una vez para diferencial ascendente

No soportado

Ejecutado una vez para diferencial


descendente

No soportado
No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

173

Instrucciones de temporizador y contador


Descripcin

Seccin

3-6

Programe BREAK(514) entre FOR(512) y NEXT(513) para cancelar el lazo


FOR-NEXT cuando se ejecute BREAK(514). Cuando se ejecuta BREAK(514),
el resto de las instrucciones hasta NEXT(513) se procesan como NOP(000).
N repeticiones

Condicin a) ON

Repeticiones
forzadas a finalizar.
Procesado como NOP(000).

Indicadores

Precauciones

3-6

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

OFF

Indicador de
negativo

OFF

Una instruccin BREAK(514) cancela slo un lazo, as que se necesitan varias


instrucciones BREAK(514) (el nmero de niveles anidados) para deshacer los
lazos anidados.
BREAK(514) slo se puede utilizar en un lazo FOR-NEXT.

Instrucciones de temporizador y contador


Esta seccin describe las instrucciones que se utilizan para definir y manejar
temporizadores y contadores.
Instruccin

174

Mnemnico

Cdigo de
funcin

Pgina

TIMER

TIM

---

175

HIGH-SPEED TIMER

TIMH

015

179

ONE-MS TIMER

TMHH

540

183

ACCUMULATIVE TIMER

TTIM

087

185

LONG TIMER

TIML

542

189

MULTI-OUTPUT TIMER

MTIM

543

191

COUNTER

CNT

---

196

REVERSIBLE COUNTER

CNTR

012

199

RESET TIMER/ COUNTER

CNR

545

202

Instrucciones de temporizador y contador

Seccin

3-6

La tabla siguiente muestra las especificaciones bsicas de los temporizadores.


Elemento

TIM

TIMH(015)

TMHH(540)

TTIM(087)

TIML(542)

Mtodo de
temporizacin

Decremental

Decremental

Decremental

Incremental

Decremental

Incremental

Unidades de tiempo

0,1 s

0,01 s

0,001 s

0,1 s

0,1 s

0,1 s

SV mx.

999,9 s

99,99 s

9,999 s

999,9 s

9999999,9 s

999,9 s

Salidas/instruccin

Nmeros de
temporizador

Utilizado

Utilizado

Utilizado

Utilizado

No utilizado

No utilizado

Refresco del ind. de


finalizacin

En la
ejecucin

En la
ejecucin

Con
En la
interrupciones ejecucin
cada 1 ms

En la
ejecucin

En la
ejecucin

Refresco del PV del


temporizador

Ver nota 1.

Ver nota 2.

Cada 1 ms

En la
ejecucin

En la
ejecucin

En la
ejecucin

Valor
tras
restable
cer

Ind. de
finalizacin

OFF

OFF

OFF

OFF

OFF

OFF

PV

SV

SV

SV

SV

Note

Elemento

MTIM(543)

1. Los PV del TIM se refrescan en la ejecucin, al final de cada ciclo de la ejecucin del programa o cada 80 ms por interrupcin si el tiempo de ciclo excede los 80 ms.
2. Los PV del TIMH(015) se refrescan en la ejecucin, al final de cada ciclo de
la ejecucin del programa y cada 10 ms por interrupcin.
La tabla siguiente muestra los efectos de las condiciones de operacin y programacin en la operacin de los temporizadores.

TIM

TIMH(015)

TMHH(540)

TTIM(087)

TIML(542)

MTIM(543)

Cambio en el modo de
funcionamiento

PV = 0
Indicador de finalizacin = OFF

---

---

Interrupcin/restablecimi
ento de la alimentacin

PV = 0
Indicador de finalizacin = OFF

---

---

Ejecucin de CNR(545)

PV = FFFF o 9999
Indicador de finalizacin = OFF

No aplicable

No aplicable

Funcionamiento en
seccin de programa
saltada
(JMP(004)--JME(005))

Los temporizadores de operacin siguen en Se mantiene el estado del temporizador.


marcha.

Operacin en seccin de PV = SV
programa enclavada
Indicador de finalizacin = OFF
(IL(002)--ILC(003))
Set
forzado
Reset
forzado

Estado del
temporizador
mantenido.

PV = SV
Ind. de
finalizacin =
OFF

Estado del
temporizador
mantenido.

Ind. de
finalizacin

ON

---

---

PV

Seleccionado a 0.

---

---

Ind. de
finalizacin

OFF

---

---

PV

Restablecido a SV

---

---

Seleccionad
o a 0.

3-6-1 TEMPORIZADOR: TIM


Funcin

Smbolo de diagrama de
rels

TIM opera como un temporizador decremental en unidades de 0,1-s. El rango


para el valor seleccionado (SV) es de 0 a 999,9 s. La precisin del temporizador
es de 0 a 0,01 s.
TIM
N

N: Nmero de temporizador

S: Valor seleccionado

175

Instrucciones de temporizador y contador


Variacio-- nes

Variacio-nes

Seccin
Ejecutado cada ciclo para condicin ON

TIM

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

3-6

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
No se admite

N: Nmero de temporizador
El nmero de temporizador debe estar entre 0 y 4.095.
S: Valor seleccionado
El valor seleccionado debe estar entre 0000 y 9999.

Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A959

rea de temporizador

T0000 a 4095

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_032767
(n = 0 a C)

Descripcin

Constantes

---

0000 a 9999

Registros de datos

---

DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

Cuando la entrada del temporizador est en OFF, se restablece el temporizador


especificado por N, es decir, el PV del temporizador se restablece al SV y su
indicador de finalizacin se pone en OFF:
Cuando la entrada del temporizador pasa de OFF a ON, TIM empieza a disminuir el PV. El PV continuar disminuyendo tanto tiempo como la entrada del
temporizador est en ON, y el indicador de finalizacin del temporizador se pondr en ON cuando el PV alcance 0000.
El estado del PV del temporizador y el indicador de finalizacin se conservarn
despus de que termine el temporizador. Para reiniciar el temporizador, debe

176

Instrucciones de temporizador y contador

Seccin

3-6

poner la entrada del temporizador en OFF y luego de nuevo en ON, o cambiar el


PV del temporizador a un valor no cero (con MOV(021), por ejemplo).
Entrada del temporizador
PV del temporizador

SV

Indicador de
finalizacin

El siguiente cronograma muestra el comportamiento del PV del temporizador y


del indicador de finalizacin cuando la entrada del temporizador se pone en
OFF antes de que termine el temporizador.
Entrada del temporizador
PV del temporizador

SV

Indicador de
finalizacin

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un temporizador.
ON si S no contiene datos de BCD.
OFF en todos los dems casos.

Precauciones

Indicador de
igual

OFF

Indicador de
negativo

OFF

Las instrucciones TIM, TIMH(015), TMHH(540), TTIM(087), TIMW(813), y


TMHW(815) comparten nmeros de temporizador. Si dos temporizadores comparten el mismo nmero de temporizador pero no se usan a la vez se producir
un error de duplicado cuando se compruebe el programa, pero los temporizadores funcionarn normalmente. Los temporizadores que compartan el mismo nmero de temporizador no funcionarn correctamente si se usan a la vez.
Los temporizadores creados con nmeros de temporizador de 2048 a 4095 no
funcionarn correctamente cuando el tiempo de ciclo de la CPU supere los 80
ms. Utilice nmeros de temporizador entre 0000 y 2047 cuando el tiempo de
ciclo sea superior a 80 ms.
Se actualizar el valor actual de los temporizadores programados con nmeros
de temporizador entre 0000 y 2047 incluso cuando el temporizador est en
standby. Se mantendr el valor actual de los temporizadores programados con
nmeros de temporizador entre 2048 y 4095 cuando el temporizador est en
standby.
Se restablecern o pondrn en pausa los temporizadores en los casos siguientes. (Cuando se restablece un temporizador, se restablece su PV al SV y se
pone en OFF su indicador de finalizacin).
Condicin

PV

Indicador de
finalizacin

Modo de operacin cambiado de modo


RUN o MONITOR a modo PROGRAM o
viceversa.1

0000

OFF

Fuente de alimentacin interrumpida y


restablecida2

0000

OFF

Ejecucin de CNR(545), la instruccin


RESET TIMER/COUNTER

9999 3

OFF

177

Instrucciones de temporizador y contador

Seccin
Condicin

Note

PV

3-6

Indicador de
finalizacin

Funcionamiento en seccin de programa


enclavada
(IL(002)--ILC(003))

Restablecido a SV.

OFF

Funcionamiento en seccin de programa


saltada
(JMP(004)--JME(005))

PV sigue
disminuyendo

Mantiene el
estado anterior.

1. Si se ha puesto en ON el bit de retencin IOM (A50012), el estado de los


indicadores de finalizacin y los PV del temporizador se conservarn
cuando se cambie el modo de operacin.
2. Si se ha puesto en ON el bit de retencin IOM (A50012) y el estado del propio bit de retencin IOM est protegido en la configuracin del PLC, se conservar el estado de los indicadores de finalizacin y los PV del temporizador incluso cuando se corte la alimentacin.
3. Se establecer el PV al SV cuando se ejecute TIM.
Cuando TIM se encuentre en una seccin de programa entre IL(002) e ILC(003)
y la seccin de programa est enclavada, se restablecer el PV al SV y se pondr en OFF el indicador de finalizacin.
Cuando un temporizador TIM en funcionamiento creado con un nmero de temporizador entre 0000 y 2047 est en una seccin de programa saltada
(JMP(004), CJMP(510), CJPN(511), JME(005)), el PV del temporizador seguir
funcionado. No se ejecutar la instruccin TIM saltada, pero se refrescar el PV
cada ciclo una vez se hayan ejecutado todas las tareas.
Cuando un temporizador TIM est en set forzado, su indicador de finalizacin
se pondr en ON y su PV pasar a 0000. Cuando un temporizador TIM est en
reset forzado, su indicador de finalizacin se pondr en OFF y se restablecer
su PV al SV.
El indicador de finalizacin del temporizador slo se refresca cuando se ejecuta
TIM, de tal forma que se puede necesitar un retardo de hasta un ciclo para que el
indicador de finalizacin se ponga en ON una vez el temporizador ha terminado.
Asegrese de restablecer el indicador de finalizacin si utiliza la edicin online
para convertir un temporizador en otro tipo de temporizador con el mismo nmero de temporizador (como TIM TIMH(015) o TIM TMHH(540)). El temporizador no funcionar correctamente hasta que se restablezca el indicador de
finalizacin.
Dependiendo del nmero de temporizador utilizado se pueden refrescar los PV
e indicador de finalizacin de una instruccin TIM de las formas siguientes.
Temporizadores creados con nmeros de temporizador de 0000 a 2047
Ejecucin de TIM

El PV se actualiza cada vez que se ejecuta el TIM.


El indicador de finalizacin se pone en ON si el PV es
0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.

Una vez ejecutadas todas El PV tambin se actualiza en cada ciclo al final de la


las tareas
ejecucin del programa.
Refresco de un intervalo
de 80 ms

Si el tiempo de ciclo supera los 80 ms, se actualizar el


PV del temporizador cada 80 ms.

Temporizadores creados con nmeros de temporizador de 2048 a 4095


Ejecucin de TIM

El PV se actualiza cada vez que se ejecuta el TIM.


El indicador de finalizacin se pone en ON si el PV es
0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.

Los temporizadores se restablecen (PV = SV, indicador de finalizacin OFF) a


partir de cortes de alimentacin, a no ser que el bit de retencin IOM (A50012)
est en ON y est protegido en la configuracin del PLC. Tambin es posible

178

Instrucciones de temporizador y contador

Seccin

3-6

utilizar un bit de pulso de reloj y CNT para programar un temporizador que conservar su PV en caso de corte de alimentacin, tal y como aparece en el diagrama siguiente.
Condicin de
ejecucin

Bit de pulso
de reloj de 1s

Entrada de
contaje
Entrada de
reset

Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 de la entrada del temporizador


pasa de OFF a ON, el PV del temporizador empieza a funcionar desde SV. El
indicador de finalizacin T0000 del temporizador se pone en ON cuando el PV
llega a 0000.
Cuando CIO 000000 se pone en OFF, el PV del temporizador se restablece al
SV y el indicador de finalizacin se pone en OFF.

Entrada del temporizador


CIO 000000
PV del temporizador
T0000
Indicador de finalizacin del
temporizador
T0000

3-6-2 TEMPORIZADOR DE ALTA VELOCIDAD: TIMH(015)


Funcin

TIMH (015) opera como un temporizador decremental en unidades de 10-ms. El


rango de seleccin para el valor seleccionado (SV) es de 0 a 99,99 s. La precisin del temporizador es de 0 a 0,01 s.

Smbolo de diagrama de
rels

Variacio-- nes

TIMH(015)

Variacio-nes

N: Nmero de temporizador

S: Valor seleccionado

Ejecutado cada ciclo para condicin ON

TIMH(015)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

Especificaciones de
operandos

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
No se admite

N: Nmero de temporizador
El nmero de temporizador debe estar entre 0 y 4095.
S: Valor seleccionado
El valor seleccionado debe estar entre 0000 y 9999 en modo BCD.
rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

179

Instrucciones de temporizador y contador

Seccin

rea

3-6

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A959

rea de temporizador

T0000 a 4095

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Descripcin

Constantes

---

0000 a 9999

Registros de datos

---

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

Cuando la entrada del temporizador est en OFF, se restablece el temporizador


especificado por N, es decir, el PV del temporizador se restablece al SV y su
indicador de finalizacin se pone en OFF:
Cuando la entrada del temporizador pasa de OFF a ON, TIMH(015) empieza a
disminuir el PV. El PV continuar disminuyendo tanto tiempo como la entrada
del temporizador est en ON, y el indicador de finalizacin del temporizador se
pondr en ON cuando el PV alcance 0000.
El estado del PV del temporizador y el indicador de finalizacin se conservarn
despus de que termine el temporizador. Para reiniciar el temporizador, debe
poner la entrada del temporizador en OFF y luego de nuevo en ON, o cambiar el
PV del temporizador a un valor no cero (con MOV(021), por ejemplo).
Entrada del temporizador
PV del temporizador

SV

Indicador de finalizacin

El siguiente cronograma muestra el comportamiento del PV del temporizador y


del indicador de finalizacin cuando la entrada del temporizador se pone en
OFF antes de que termine el temporizador.
Entrada del temporizador
PV del temporizador
Indicador de finalizacin

180

SV

Instrucciones de temporizador y contador


Indicadores

Nombre
Indicador de
error

Seccin
Etique
ta
ER

3-6

Operacin
ON si N se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un temporizador.
ON si S no contiene datos de BCD.
OFF en todos los dems casos.

Indicador de
igual

OFF

Indicador de
negativo

OFF

Las instrucciones TIM, TIMH(015), TMHH(540), TTIM(087), TIMW(813), y


TMHW(815) comparten nmeros de temporizador. Si dos temporizadores comparten el mismo nmero de temporizador pero no se usan a la vez se producir
un error de duplicado cuando se compruebe el programa, pero los temporizadores funcionarn normalmente. Los temporizadores que compartan el mismo nmero de temporizador no funcionarn correctamente si se usan a la vez.
Los temporizadores creados con nmeros de temporizador de 2048 a 4095 no
funcionarn correctamente cuando el tiempo de ciclo de la CPU supere los 80
ms. Utilice nmeros de temporizador entre 0000 y 2047 cuando el tiempo de
ciclo sea superior a 80 ms.
Los temporizadores TIMH(015) creados con nmeros de temporizador de 0000
a 0255 se refrescan cada 10 ms. Utilice estos nmeros de temporizador cuando
se est utilizando el PV como referencia en el programa del usuario.
Se actualizar el valor actual de los temporizadores programados con nmeros
de temporizador entre 0000 y 2047 incluso cuando el temporizador est en
standby. Se mantendr el valor actual de los temporizadores programados con
nmeros de temporizador entre 2048 y 4095 cuando el temporizador est en
standby.
Los indicadores de finalizacin para los temporizadores TIMH(015) se actualizarn cuando se ejecute la instruccin. (Esta operacin es distinta de la de los
PCL de la serie CV).
Se restablecern o pondrn en pausa los temporizadores en los casos siguientes. (Cuando se restablece un temporizador, se restablece su PV al SV y se
pone en OFF su indicador de finalizacin).

Precauciones

Condicin

Note

PV

Indicador de
finalizacin

Modo de operacin cambiado de modo


RUN o MONITOR a modo PROGRAM o
viceversa.1

0000

OFF

Fuente de alimentacin interrumpida y


restablecida2

0000

OFF

Ejecucin de CNR(545), la instruccin


RESET TIMER/COUNTER

9999 3

OFF

Operacin en seccin de programa


enclavada
(IL(002)--ILC(003))

Restablecido a SV.

OFF

Operacin en seccin de programa


saltada
(JMP(004)--JME(005))

PV sigue
disminuyendo

Mantiene el
estado anterior.

1. Si se ha puesto en ON el bit de retencin IOM (A50012), el estado de los


indicadores de finalizacin y los PV del temporizador se conservarn
cuando se cambie el modo de operacin.
2. Si se ha puesto en ON el bit de retencin IOM (A50012) y el estado del propio bit de retencin IOM est protegido en la configuracin del PLC, se conservar el estado de los indicadores de finalizacin y PV del temporizador
incluso cuando se corte la alimentacin.
3. Se establecer el PV al SV cuando se ejecute TIMH(015).

181

Instrucciones de temporizador y contador

Seccin

3-6

Cuando un temporizador TIMH(015) en funcionamiento creado con un nmero


de temporizador entre 0000 y 2047 est en una seccin de programa saltada
(JMP(004), CJMP(510), CJPN(511), JME(005)), el PV del temporizador seguir
funcionado. No se ejecutar la instruccin TIMH(015) saltada, pero se refrescar el PV cada 10 ms y cada ciclo una vez se hayan ejecutado todas las tareas.
Cuando TIMH(015) se encuentre en una seccin de programa entre IL(002) e
ILC(003) y la seccin de programa est enclavada, se restablecer el PV al SV y
se pondr en OFF el indicador de finalizacin.
Cuando un temporizador TIMH(015) est en set forzado, su indicador de finalizacin se pondr en ON y su PV pasar a 0000. Cuando un temporizador
TIMH(015) est en reset forzado, su indicador de finalizacin se pondr en OFF
y se restablecer su PV al SV.
El indicador de finalizacin del temporizador slo se refresca cuando se ejecuta
TIMH(015), de tal forma que se puede necesitar un retardo de hasta un ciclo
para que el indicador de finalizacin se ponga en ON una vez el temporizador ha
terminado.
Asegrese de restablecer el indicador de finalizacin si utiliza la edicin online
para convertir un temporizador en otro tipo de temporizador con el mismo nmero de temporizador (como TIMH(015) TIM o TIMH(015) TMHH(540)).
El temporizador no funcionar correctamente hasta que se restablezca el indicador de finalizacin.
Dependiendo del nmero de temporizador utilizado, se pueden refrescar los PV
e indicador de finalizacin de una instruccin TIMH(015) de las formas siguientes.
Temporizadores creados con nmeros de temporizador de 0000 a 0255
Ejecucin de TIMH(015)

El indicador de finalizacin se pone en ON si el PV es


0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.

Refresco de un intervalo
de 10 ms

Se actualiza el PV del temporizador cada 10 ms.

Temporizadores creados con nmeros de temporizador de 0256 a 2047


Ejecucin de TIMH(015)

El PV se actualiza cada vez que se ejecuta el


TIMH(015).

El indicador de finalizacin se pone en ON si el PV es


0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.
Una vez ejecutadas todas El PV tambin se actualiza en cada ciclo al final de la
las tareas
ejecucin del programa.
Refresco de un intervalo
de 80 ms

Si el tiempo de ciclo supera los 80 ms, se actualizar el


PV del temporizador cada 80 ms.

Temporizadores creados con nmeros de temporizador de 2048 a 4095


Ejecucin de TIMH(015)

El PV se actualiza cada vez que se ejecuta el


TIMH(015).
El indicador de finalizacin se pone en ON si el PV es
0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.

Ejemplo

182

Cuando, en el siguiente ejemplo, el CIO 000000 de la entrada del temporizador


pasa de OFF a ON, el PV del temporizador empieza a funcionar desde SV
(#0064 = 100 = 1,00 s). El indicador de finalizacin T0000 del temporizador se
pone en ON cuando el PV llega a 0000.

Instrucciones de temporizador y contador

Seccin

3-6

Cuando CIO 000000 se pone en OFF, el PV del temporizador se restablece al


SV y el indicador de finalizacin se pone en OFF.
Entrada del temporizador
CIO 000000
PV del tempori#0100
zador
(1,00 s)
T0000
Indicador de finalizacin del temporizador
T0000

3-6-3 TEMPORIZADOR DE MUY ALTA VELOCIDAD: TMHH(540)


Funcin

TMHH (540) opera como un temporizador decremental en unidades de 1-ms. El


rango para el valor seleccionado (SV) es de 0 a 9,999 s. La precisin del temporizador es de 0 a 0,001 s.

Smbolo de diagrama de
rels

Variacio-- nes

TMHH(540)

Variacio-nes

N: Nmero de temporizador

S: Valor seleccionado

Ejecutado cada ciclo para condicin ON

TMHH(540)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

Especificaciones de
operandos

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
No se admite

N: Nmero de temporizador
El nmero de temporizador debe estar entre 0 y 4.095.
S: Valor seleccionado
El valor seleccionado debe estar entre 0000 y 9999.
rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A959

rea de temporizador

T0000 a 0015

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

183

Instrucciones de temporizador y contador

Seccin

rea

Descripcin

3-6

Constantes

---

0000 a 9999

Registros de datos

---

DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

Cuando la entrada del temporizador est en OFF, se restablece el temporizador


especificado por N, es decir, el PV del temporizador se restablece al SV y su
indicador de finalizacin se pone en OFF:
Cuando la entrada del temporizador pasa de OFF a ON, TMHH(540) empieza a
disminuir el PV. El PV continuar disminuyendo tanto tiempo como la entrada
del temporizador est en ON, y el indicador de finalizacin del temporizador se
pondr en ON cuando el PV alcance 0000.
El estado del PV del temporizador y el indicador de finalizacin se conservarn
despus de que termine el temporizador. Para reiniciar el temporizador, debe
poner la entrada del temporizador en OFF y luego de nuevo en ON, o cambiar el
PV del temporizador a un valor no cero (con MOV(021), por ejemplo).

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un temporizador.
ON si S no contiene datos de BCD.
OFF en todos los dems casos.

Precauciones

Indicador de
igual

OFF

Indicador de
negativo

OFF

Las instrucciones TIM, TIMH(015), TMHH(540), TTIM(087), TIMW(813), y


TMHW(815) comparten nmeros de temporizador. Si dos temporizadores comparten el mismo nmero de temporizador pero no se usan a la vez se producir
un error de duplicado cuando se compruebe el programa, pero los temporizadores funcionarn normalmente. Los temporizadores que compartan el mismo nmero de temporizador no funcionarn correctamente si se usan a la vez.
El indicador de finalizacin slo se actualiza cuando se ejecuta TMHH(540). Por
tanto, el indicador de finalizacin se puede retrasar hasta el tiempo de un ciclo
desde el valor seleccionado actual.
Se actualizar el valor actual de los temporizadores programados con nmeros
de temporizador entre 0000 y 2047 incluso cuando el temporizador est en
standby. Se mantendr el valor actual de los temporizadores programados con
nmeros de temporizador entre 2048 y 4095 cuando el temporizador est en
standby.
Se restablecern o pondrn en pausa los temporizadores en los casos siguientes. (Cuando se restablece un temporizador, se restablece su PV al SV y se
pone en OFF su indicador de finalizacin).
Condicin

184

PV

Indicador de
finalizacin

Modo de operacin cambiado de modo


RUN o MONITOR a modo PROGRAM o
viceversa.1

0000

OFF

Fuente de alimentacin interrumpida y


restablecida2

0000

OFF

Ejecucin de CNR(545), la instruccin


RESET TIMER/COUNTER

9999 3

OFF

Instrucciones de temporizador y contador

Seccin
Condicin

Note

PV

3-6

Indicador de
finalizacin

Funcionamiento en seccin de programa


enclavada
(IL(002)--ILC(003))

Restablecido a SV.

OFF

Operacin en seccin de programa


saltada
(JMP(004)--JME(005))

PV sigue
disminuyendo

Mantiene el
estado anterior.

1. Si se ha puesto en ON el bit de retencin IOM (A50012), el estado de los


indicadores de finalizacin y los PV del temporizador se conservarn
cuando se cambie el modo de operacin.
2. Si se ha puesto en ON el bit de retencin IOM (A50012) y el estado del propio bit de retencin IOM est protegido en la configuracin del PLC, se conservar el estado de los indicadores de finalizacin y PV del temporizador
incluso cuando se corte la alimentacin.
3. Se establecer el PV al SV cuando se ejecute TMHH(540).
Cuando un temporizador TMHH(540) en funcionamiento se encuentra en una
seccin de programa saltada (JMP(004), CJMP(510), CJPN(511), JME(005)) el
PV del temporizador continuar funcionando. (No se ejecutar la instruccin
TMHH(540) saltada, pero se refrescar el PV cada 1 ms).
Cuando TMHH(540) se encuentre en una seccin de programa entre IL(002) e
ILC(003) y la seccin de programa est enclavada, se restablecer el PV al SV y
se pondr en OFF el indicador de finalizacin.
Cuando un temporizador TMHH(540) est en set forzado, su indicador de finalizacin se pondr en ON y su PV pasar a 0000. Cuando un temporizador
TMHH(540) est en reset forzado, su indicador de finalizacin se pondr en
OFF y se restablecer su PV al SV.
Asegrese de restablecer el indicador de finalizacin si utiliza la edicin online
para convertir un temporizador en otro tipo de temporizador con el mismo nmero de temporizador (como TMHH(540) TIM o TMHH(540) TIMH(015)).
El temporizador no funcionar correctamente hasta que se restablezca el indicador de finalizacin.
El PV y el indicador de finalizacin de una instruccin TMHH(540) se refrescan
tal y como se muestra en la tabla siguiente.
Ejecucin de TMHH(540)

El indicador de finalizacin se pone en ON si el PV es


0000.
El indicador de finalizacin se pone en OFF si el PV no
es 0000.

Refresco de un intervalo
de 1 ms

Se actualiza el PV del temporizador cada 1 ms.

3-6-4 TEMPORIZADOR TOTALIZADOR: TTIM(087)


Funcin

Smbolo de diagrama de
rels

TTIM(087) opera como un temporizador totalizador en unidades de 0,1-s. El


rango de seleccin para el valor seleccionado (SV) es de 0 a 999,9 s. La precisin del temporizador es de 0 a 0,01 s.
Entrada de temporizador

TTIM(087)
N

N: Nmero de temporizador

S: Valor seleccionado

Entrada de reset

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

TTIM(087)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.

Especificacin de refresco inmediato

No soportado.

185

Instrucciones de temporizador y contador


reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

Especificaciones de
operandos

Seccin
reas de programa
de pasos
OK

Subrutinas
OK

3-6

Tareas de
interrupcin
No se admite

N: Nmero de temporizador
El nmero de temporizador debe estar entre &0000 y &4095 decimal.
S: Valor seleccionado
El valor seleccionado debe estar entre 0000 y 9999.
rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A959

rea de temporizador

T0000 a T4095

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767
Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Descripcin

186

Constantes

---

0000 a 9999

Registros de datos

---

DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

Cuando la entrada del temporizador est en ON, TTIM(087) aumenta el PV.


Cuando la entrada del temporizador cambia a OFF, el temporizador dejar de
aumentar el PV, pero este ltimo conservar su valor. El PV volver a funcionar
cuando la entrada del temporizador se ponga de nuevo en ON. El indicador de
finalizacin del temporizador se pondr en ON cuando el PV llegue al SV.
El estado del PV del temporizador y el indicador de finalizacin se conservarn
despus de que termine el temporizador. Hay tres formas de reiniciar el temporizador: se puede cambiar el PV del temporizador a un valor no cero (mediante

Instrucciones de temporizador y contador

Seccin

3-6

MOV(021), por ejemplo), se puede poner en ON la entrada de reset o se puede


ejecutar CNR(545).
Entrada de temporizador
PV del temporizador

SV
Se reanuda la temporizacin.
Se mantiene el PV.

Indicador de
finalizacin
Entrada de reset

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un temporizador.
ON si S no contiene datos de BCD.
OFF en todos los dems casos.

Las instrucciones TIM, TIMH(015), TMHH(540), TTIM(087), TIMW(813), y


TMHW(815) comparten nmeros de temporizador. Si dos temporizadores comparten el mismo nmero de temporizador pero no se usan a la vez se producir
un error de duplicado cuando se compruebe el programa, pero los temporizadores funcionarn normalmente. Los temporizadores que compartan el mismo nmero de temporizador no funcionarn correctamente si se usan a la vez.
Se restablecern o pondrn en pausa los temporizadores en los casos siguientes. (Cuando se restablece un temporizador TTIM(087), se restablece su PV a
0000 y se pone en OFF su indicador de finalizacin).

Precauciones

Condicin

Note

PV

Indicador de
finalizacin

Modo de operacin cambiado de modo


RUN o MONITOR a modo PROGRAM o
viceversa.1

0000

OFF

Fuente de alimentacin interrumpida y


restablecida2

0000

OFF

Ejecucin de CNR(545), la instruccin


RESET TIMER/COUNTER

9999 3

OFF

Operacin en seccin de programa


enclavada
(IL(002)--ILC(003))

Mantiene el estado
anterior.

Mantiene el
estado anterior.

Operacin en seccin de programa


saltada
(JMP(004)--JME(005))

Mantiene el estado
anterior.

Mantiene el
estado anterior.

1. Si se ha puesto en ON el bit de retencin IOM (A50012), el estado de los


indicadores de finalizacin y los PV del temporizador se conservarn
cuando se cambie el modo de operacin.
2. Si se ha puesto en ON el bit de retencin IOM (A50012) y el estado del propio bit de retencin IOM est protegido en la configuracin del PLC, se conservar el estado de los indicadores de finalizacin y PV del temporizador
incluso cuando se corte la alimentacin.
3. Se establecer el PV al SV cuando se ejecute TTIM(087).
Cuando TTIM(087) se encuentra en una seccin de programa entre IL(002) e
ILC(003) y la seccin de programa est enclavada, el PV conservar su valor
anterior (no se restablecer). Asegrese de tener este hecho en cuenta cuando
programe TTIM(087) entre IL(002) e ILC(003).
Cuando un temporizador TTIM(087) en funcionamiento se encuentre en una
seccin de programa entre JMP(004) y JME(005) y la seccin de programa est

187

Instrucciones de temporizador y contador

Seccin

3-6

saltada, el PV conservar su valor anterior. Asegrese de tener este hecho en


cuenta cuando programe TTIM(087) entre JMP(004) y JME(005).
Cuando un temporizador TTIM(087) est en set forzado, su indicador de finalizacin se pondr en ON y se restablecer su PV a 0000. Cuando un temporizador TTIM(087) est en reset forzado, su indicador de finalizacin se pondr en
OFF y se restablecer a 0000. Las operaciones de set y reset forzados tienen
prioridad sobre el estado de las entradas de temporizador y de reset.
El PV slo se refresca cuando se ejecuta TTIM(087), de tal forma que el temporizador no funcionar correctamente cuando el tiempo de ciclo supere los 100
ms porque el temporizador aumenta en unidades de 100 ms.
El indicador de finalizacin del temporizador slo se refresca cuando se ejecuta
TTIM(087), de tal forma que se puede necesitar un retardo de hasta un ciclo
para que el indicador de finalizacin se ponga en ON una vez el temporizador ha
terminado.
Temporizadores tpicos como TIM son contadores de disminucin, y el PV
muestra el tiempo que queda hasta que termine el temporizador. El PV de
TTIM(087) muestra el tiempo transcurrido, por lo que se puede utilizar el PV sin
cambiar en muchos clculos y salidas de display.
Ejemplo

Cuando, en el siguiente ejemplo, el CIO 000000 de la entrada del temporizador


se pone en ON, el PV del temporizador empieza a contar desde 0. El indicador
de finalizacin T0001 del temporizador se pondr en ON cuando el PV llegue al
SV.
Si la entrada de reset se pone en ON, el PV del temporizador se restablece a
0000 y el indicador de finalizacin (T0001) se pone en OFF. (Normalmente se
pone en ON la entrada de reset para restablecer el contador y luego se pone en
ON la entrada del contador para iniciar la temporizacin).
Si la entrada del temporizador se pone en OFF antes de llegar al SV, el temporizador dejar de contar pero se conservar el PV. El temporizador volver a su
PV anterior cuando el temporizador se ponga de nuevo en ON.

Entrada del temporizador


CIO 000000
PV del temporizador
T0001
Indicador de finalizacin del temporizador
T0001
Entrada de reset
CIO 000001

188

Se reanuda la
temporizacin.
Se mantiene el
PV.

Instrucciones de temporizador y contador

Seccin

3-6

3-6-5 TEMPORIZADOR LARGO: TIML(542)


Funcin

TIML(542) opera como un temporizador decremental en unidades de 1 s que


pueden alcanzar hasta 115 das (0 a 9.999.999,9 s). La precisin del temporizador es de 0 a 0,01 s.

Smbolo de diagrama de
rels

Variacio-- nes

TIML(542)

Variacio-nes

D1

D1: Indicador de finalizacin

D2

D2: Canal de PV

S: Canal de SV

Ejecutado cada ciclo para condicin ON

TIML(542)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

reas de programa
de pasos

Subrutinas

OK

OK

Tareas de
interrupcin
No se admite

D1: Indicador de finalizacin


El bit 0 de D1 funciona como indicador de finalizacin para TIML(542).
D1

15

Indicador de finalizacin

D2: Canal de PV
D2+1 y D2 contienen el PV de 8 dgitos en binario o en BCD. D2 y D2+1 deben
estar en la misma rea de datos. El PV puede variar de 0000 0000 a 9999 9999.
D2+1

D2

D2

S: Canal de SV
S+1 y S contienen el SV de 8 dgitos en binario o en BCD. (S y S+1 deben estar
en la misma rea de datos). El SV debe estar entre 0000 0000 y 9999 9999 en el
modo BCD.
S+1

Especificaciones de
operandos

rea

D1

D2

rea CIO

CIO 0000 a
CIO 6143

CIO 0000 a CIO 6142

rea de trabajo

W000 a W511

W000 a W510

rea de bits de
retencin

H000 a H511

H000 a H510

rea de bits auxiliares

A448 a A959

A448 a A958

A000 a A958

rea de temporizador

---

---

T0000 a T4094

rea de contador

---

---

C0000 a C4094

rea DM

D00000 a
D32767

D00000 a D32766

rea EM sin banco

E00000 a
E32767

E00000 a E32766

rea EM con banco

En_00000 a
En_32767

En_00000 a En_32766

(n = 0 a C)

(n = 0 a C)

189

Instrucciones de temporizador y contador

Seccin

rea

D1

Direcciones de DM/EM
indirectas en binario

D2

3-6

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Descripcin

Constantes

---

de 00000000
99999999

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

TIML(543) es un temporizador descendente de retardo de ON con unidades de


0,1 s. Dado que TIML(542) utiliza un SV de 8 dgitos y un PV de 8 dgitos, puede
contar hasta 9.999.999,9 s (115 das aprox.) en modo BCD.
Cuando la entrada del temporizador est en OFF se restablece el temporizador,
es decir, el PV del temporizador se restablece al SV y su indicador de finalizacin se pone en OFF:
Cuando la entrada del temporizador pasa de OFF a ON, TIML(542) empieza a
disminuir el PV en D2+1 y en D2.. El PV continuar disminuyendo tanto tiempo
como la entrada del temporizador est en ON, y el indicador de finalizacin del
temporizador se pondr en ON cuando el PV alcance 0000 0000.
El estado del PV del temporizador y el indicador de finalizacin se conservarn
despus de que termine el temporizador. Para reiniciar el temporizador, debe
poner la entrada del temporizador en OFF y luego de nuevo en ON, o cambiar el
PV del temporizador a un valor no cero (con MOV(021), por ejemplo).
Entrada del temporizador
SV

PV del
temporizador
Indicador de finalizacin (Bit
00 de D1)

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si el PV de D2+1 y D2 no es BCD.
ON si el SV de S+1 y S no es BCD.
OFF en todos los dems casos.

Precauciones

190

A diferencia de la mayora de los temporizadores, TIML(542) no utiliza un nmero de temporizador. (El refresco del PV del rea del temporizador no se lleva
a cabo en TIML(542)).
Dado que el indicador de finalizacin de TIML(542) est en un rea de datos
puede estar en set forzado o reset forzado como otros bits, pero el PV no cambiar.
El PV slo se refresca cuando se ejecuta TIML(542), de tal forma que el temporizador no funcionar correctamente cuando el tiempo de ciclo supere los 100 ms
porque el temporizador aumenta en unidades de 100 ms.
El indicador de finalizacin del temporizador slo se refresca cuando se ejecuta
TIML(542), de tal forma que se puede necesitar un retardo de hasta un ciclo

Instrucciones de temporizador y contador

Seccin

3-6

para que el indicador de finalizacin se ponga en ON una vez el temporizador ha


terminado.
Cuando TIML(542) se encuentra en una seccin de programa entre IL(002) e
ILC(003) y la seccin de programa est enclavada, se restablecer el PV al SV y
se pondr en OFF el indicador de finalizacin.
Cuando un temporizador TIML(542) en funcionamiento se encuentra en una
seccin de programa entre JMP(004) y JME(005) y la seccin de programa est
saltada, el PV conservar su valor anterior. Tenga esto en cuenta cuando programe TIML(542) entre JMP(004) y JME(005).
Asegrese de que los canales especificados para el indicador de finalizacin y
el PV (D1, D2, y D2+1) no se utilizan en otras instrucciones. Si hay otras instrucciones que afecten a estos canales, el temporizador podra no funcionar correctamente.
Ejemplo

Cuando, en el siguiente ejemplo, el CIO 000000 de la entrada del temporizador


est en ON, el PV del temporizador (en D00101 y D00100) se establece al SV
(en D00101 y D00100) y el PV empieza a contar. El indicador de finalizacin del
temporizador (CIO 020000) se pone en ON cuando el PV llega a 0000 0000.
Cuando CIO 000000 se pone en OFF, el PV del temporizador se restablece al
SV y el indicador de finalizacin se pone en OFF.

Entrada del temporizador


CIO 000000
PV del temporizador
(D00101 y D00100)
PV del temporizador
(D00201 y D00200)

Indicador de finalizacin del temporizador


(CIO 020000)
D1: 00200
Indicador de finalizacin del temporizador
(CIO 020000)
D2: D00100

PV del temporizador (LSB)


PV del temporizador (MSB)

D00101

S: D00200

D00201

SV del temporizador:
(100.000 decimal = 10.000 s)

3-6-6 TEMPORIZADOR MULTI--SALIDA: MTIM(543)


Funcin

Smbolo de diagrama de
rels

MTIM(543) opera como un temporizador incremental 0,1 s con 8 SV (0 a 999,9


s) independientes e indicadores de finalizacin. La precisin del temporizador
es de 0 a 0,01 s.
MTIM(543)
D1

D1: Indicadores de finalizacin

D2

D2: Canal de PV

S: Primer canal de SV

191

Instrucciones de temporizador y contador


Variacio-- nes

Variacio-nes

Seccin
Ejecutado cada ciclo para condicin ON

MTIM(543)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

3-6

reas de programa
de pasos

Subrutinas

OK

OK

Tareas de
interrupcin
No se admite

D1: Indicadores de finalizacin


D1 contiene los ocho indicadores de finalizacin, as como los bits de pausa y de
reset.
15

87 65 4 3 2

1 0

D1

Indicadores de finalizacin
Bit de reset
Bit de pausa

D2: Canal de PV
D2 contiene el PV de 4 dgitos en binario o en BCD.
El PV puede ir de 0000 a 9999 en modo BCD.
S: Primer canal de SV
S mediante S+7 contiene los ocho SV independientes.
Cada SV debe estar entre 0000 y 9999.
Bit correspondiente
(Indicador de finalizacin) en D1

Nota S mediante S+7 deben estar en la misma rea de datos.


Especificaciones de
operandos

rea

D1

D2

CIO 0000 a CIO 6143

CIO 0000 a
CIO 6136

rea de trabajo

W000 a W511

W000 a W504

rea de bits de
retencin

H000 a H511

H000 a H504

rea de bits auxiliares

A448 a A959

A000 a A952

rea de temporizador

T0000 a T4095

T0000 a T4088

rea de contador

C0000 a C4095

C0000 a C4088

rea DM

D00000 a D32767

D00000 a
D32760

rea EM sin banco

E00000 a E32767

E00000 a
E32760

rea EM con banco

En_00000 a En_32767

En_00000 a
En_32760

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

192

rea CIO

(n = 0 a C)

Instrucciones de temporizador y contador

Seccin

rea

D1

Direcciones de DM/EM
indirectas en BCD

D2

3-6

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

DR0 a DR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Cuando la condicin de ejecucin de MTIM(543) es ON y los bits de temporizador y reset estn en OFF, MTIM(543) aumenta el PV en D2. Si el bit de pausa se
pone en ON, el temporizador dejar de aumentar el PV, pero este ltimo conservar su valor. MTIM(543) seguir contando cuando el bit de pausa se ponga en
OFF de nuevo.
El PV (contenido de D2) se compara con los ocho SV en S a S+7 cada vez que
se ejecuta MTIM(543), y si alguno de los SV es menor o igual que el PV, entonces el indicador de finalizacin correspondiente (bits de D1 de 00 a 07) se pone
en ON.
Cuando el PV llega a 9999 se restablece a 0000 y todos los indicadores de finalizacin se ponen en OFF. Si el bit de reset se pone en ON mientras el temporizador est funcionando o en pausa, se restablece el PV a 0000 y se ponen en OFF
todos los indicadores de finalizacin.

PV del temporizador

SV del temporizador
0

Entrada del temporizador

SV 7
SV 2
PV del temporizador (D2) SV 1
SV 0
0
Bit 7
Indicadores
de finalizacin (D1)

Bit 2
Bit 1
Bit 0

193

Instrucciones de temporizador y contador

Seccin

3-6

La tabla siguiente muestra el funcionamiento de MTIM(543) en las cuatro combinaciones posibles de los bits de pausa y de restablecimiento.
Bit de
reset (bit
08)
OFF

ON

Bit de
pausa
(bit 09)

Operacin

OFF

Se actualizar el PV y se pondr en ON el indicador de


finalizacin correspondiente cuando SV PV.

ON

No se actualizar el PV y se tratar a MTIM(543) como


NOP(000).

OFF

Se restablecer el PV a 0000 y se pondrn


p
en OFF los
i di d
indicadores
de
d finalizacin.
fi li
i No
N se actualizar
li ell PV.
PV

ON

Los bits de pausa y de reset slo son efectivos cuando la condicin de ejecucin
para MTIM(543) es ON.
Indicadores

Nombre
Indicador de
error

Precauciones

Etique
ta
ER

Operacin
ON si el PV de D2 no es BCD.
OFF en todos los dems casos.

A diferencia de la mayora de los temporizadores, MTIM(543) no utiliza un nmero de temporizador. (El refresco del PV del rea del temporizador no se lleva
a cabo para MTIM(543)).
Cuando el PV llegue a 9999 se restablecer a 0000 y todos los indicadores de
finalizacin se pondrn en OFF.
Si un SV de S a S+7 no contiene datos BCD, se ignorar ese SV. No ocurrir
ningn error ni se pondr en ON el indicador de error.
Dado que el indicador de finalizacin de MTIM(543) est en un rea de datos
puede estar en set forzado o reset forzado como otros bits, pero el PV no cambiar.
Cuando se necesiten ocho o menos SV, establezca el canal posterior al ltimo
SV en 0000. MTIM(543) ignorar el SV que est en 0000 y todos los dems SV.

a
Se ignoran
estos SV.

El PV slo se refresca cuando se ejecuta MTIM(543), de tal forma que el temporizador no funcionar correctamente cuando el tiempo de ciclo supere los 100
ms porque el temporizador aumenta en unidades de 100 ms. Para garantizar
una temporizacin precisa y prevenir problemas originados por tiempos de ciclo
largos, introduzca la misma instruccin MTIM(543) en varios puntos del programa.
El indicador de finalizacin del temporizador slo se refresca cuando se ejecuta
MTIM(543), de tal forma que se puede necesitar un retardo de hasta un ciclo
para que el indicador de finalizacin se ponga en ON una vez el temporizador ha
terminado.
Cuando MTIM(543) se encuentre en una seccin de programa entre IL(002) e
ILC(003) y la seccin de programa est enclavada, el PV conservar su valor
anterior (no se restablecer). Asegrese de tener esto en cuenta cuando programe MTIM(543) entre IL(002) e ILC(003).
Cuando un temporizador MTIM(543) en funcionamiento se encuentra en una
seccin de programa entre JMP(004) y JME(005) y la seccin de programa est
saltada, el PV conservar su valor anterior. Asegrese de tener este hecho en
cuenta cuando programe MTIM(543) entre JMP(004) y JME(005).
Asegrese de que los canales especificados para los indicadores de finalizacin y el PV (D1 y D2) no se utilizan en otras instrucciones. Si hay otras instruc-

194

Instrucciones de temporizador y contador

Seccin

3-6

ciones que afecten a estos canales, el temporizador podra no funcionar correctamente.


Si se especifica un canal del rea CIO para D1, se pueden utilizar las instrucciones SET y RESET para controlar los bits de pausa y de reset.
Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 est en ON y el bit de pausa


(CIO 010009) est en OFF, el temporizador empieza a funcionar cuando el bit
de reset (CIO 010009) pasa de ON a OFF. El PV del temporizador empezar a
contar desde 0000.
Los ocho SV de D00200 a D00207 se comparan con el PV y los indicadores de
finalizacin correspondientes (CIO 010000 a CIO 010007) se ponen en ON
cuando SV PV.

D1: 0100CH
Indicadores de finalizacin
Bit de reset
Bit de pausa
PV del temporizador
D2: D00100
SV de temporizador

(Incremental)
Indicador de finalizacin
correspondiente ON
cuando SV PV.

S: D00200
S+1: D00201
S+2: D00202
S+3: D00203
S+4: D00204
S+5: D00205
S+6: D00206
S+7: D00207

195

Instrucciones de temporizador y contador

Seccin

Entrada de
temporizador
CIO 000000

3-6

La entrada del temporizador


debe permanecer en ON
mientras est funcionando
el temporizador.

Bit de reset
CIO 010008
Bit de pausa
CIO 010009

Se reanuda la temporizacin.

PV mx. = 9999
SV de temporizador
SV 7
SV 1

Se mantiene el PV.

SV 0
Indicadores de finalizacin

3-6-7 CONTADOR: CNT


Funcin
Smbolo de diagrama de
rels

CNT opera como un contador descendente. El rango de seleccin es de 0 a


9999.
Entrada de contaje

CNT
N

N: Nmero de contador

S: Valor seleccionado

Entrada de reset

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

CNT

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

Especificaciones de
operandos

196

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

N: Nmero de contador
El nmero de contador debe estar entre 0000 y 4095.
S: Valor seleccionado
El valor seleccionado debe estar entre 0000 y 9999.
rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

C0000 a 4095

C0000 a C4095

Instrucciones de temporizador y contador

Seccin

rea

3-6

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Descripcin

Constantes

---

0000 a 9999

Registros de datos

---

DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

El PV del contador disminuye en 1 cada vez que la entrada de contaje pasa de


OFF a ON. El indicador de finalizacin se pone en ON cuando el PV llega a 0.
Una vez el indicador de finalizacin est en ON, restablezca el contador poniendo la entrada de reset en ON o utilizando la instruccin CNR(545). De lo
contrario no se podr reiniciar el contador.
Cuando la entrada de reset est en ON se restablece el contador y se ignora la
entrada de contaje. (Cuando se restablece un contador, se restablece su PV al
SV y se pone en OFF el indicador de finalizacin).
Entrada de contaje

Entrada de reset
PV del contador

SV

Indicador de
finalizacin

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un contador.
ON si S no contiene datos BCD.
OFF en todos los dems casos.

Precauciones

Las instrucciones CNT, CNTR(012), y CNTW(814) comparten los nmeros de


contador. Si dos contadores comparten el mismo nmero de contador pero no
se usan a la vez se producir un error de duplicado cuando se compruebe el
programa, pero los contadores funcionarn normalmente. Los contadores que
compartan el mismo nmero de contador no funcionarn correctamente si se
usan a la vez.
El PV de un contador se refresca cuando la entrada de contaje pasa de OFF a
ON y el indicador de finalizacin se actualiza cada vez que se ejecuta CNT. El
indicador de finalizacin se pone en ON si el PV es 0 y se pone en OFF si el PV
no es 0.

197

Instrucciones de temporizador y contador

Seccin

3-6

Cuando un contador CNT est en set forzado, su indicador de finalizacin se


pondr en ON y su PV se restablecer a 0000. Cuando un contador CNT est en
reset forzado, su indicador de finalizacin se pondr en OFF y su PV pasar al
SV.
Asegrese de restablecer el contador poniendo la entrada de reset en
OFF ON OFF antes de empezar a contar con la entrada de contaje, tal y
como aparece en el diagrama siguiente. No se recibir la entrada de contaje si la
entrada de reset est en ON.

Entrada de reset
Entrada de contaje
SV
PV del contador

Indicador de
finalizacin
Listo para empezar a contar

La entrada de reset tendr preferencia y se restablecer el contador si la entrada de reset y la entrada de contaje estn en ON a la vez. (Se restablecer el
PV al SV y se pondr en OFF el indicador de finalizacin).

Entrada de reset
Entrada de contaje
SV
PV del contador

Indicador de
finalizacin
Se pueden re- Tiene precibir entradas ferencia la
de contaje.
entrada de
reset.

Se pueden recibir entradas


de contaje.

Se mantienen los PV del contador incluso en una interrupcin de la alimentacin. Si desea reiniciar el recuento desde el SV en lugar de seguir contando
desde el PV mantenido, aada al contador el indicador de primer ciclo (A20011)
como entrada de reset.

Primer indicador de ciclo


(A20011)

198

Instrucciones de temporizador y contador

Seccin

3-6

3-6-8 CONTADOR REVERSIBLE: CNTR(012)


Funcin
Smbolo de diagrama de
rels

CNTR(012) opera un contador reversible.

Entrada de contaje adelante

CNTR(012)
N

N: Nmero de contador

S: Valor seleccionado

Entrada de contaje atrs


Entrada de reset

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

CNTR(012)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

N: Nmero de contador
El nmero de contador debe estar entre 0000 y 4.095.
S: Valor seleccionado
El valor seleccionado debe estar entre 0000 y 9999.

Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

C0000 a 4095

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

0000 a 9999

Registros de datos

---

DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15

199

Instrucciones de temporizador y contador


Descripcin

Seccin

3-6

El PV del contador aumenta en 1 cada vez que la entrada de contaje adelante


pasa de OFF a ON, y disminuye en 1 cada vez que la entrada de contaje atrs
pasa de OFF a ON. El PV puede fluctuar entre 0 y el SV.
Entrada de contaje adelante
Entrada de contaje atrs

PV del contador

Cuando est aumentando, el indicador de finalizacin se pondr en ON cada


vez que el PV pase de SV a 0 de nuevo, y se pondr en OFF otra vez cada vez
que el PV aumente de 0 a 1.
SV

PV del contador

+1
Indicador de finalizacin

Cuando est disminuyendo, el indicador de finalizacin se pondr en ON cada


vez que el PV pase de 0 a SV de nuevo, y se pondr en OFF otra vez cada vez
que el PV disminuya de SV a SV--1.
PV del contador

--1

SV

Indicador de finalizacin

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un contador.
ON si S no contiene datos BCD.
OFF en todos los dems casos.

Precauciones

Las instrucciones CNT, CNTR(012), y CNTW(814) comparten los nmeros de


contador. Si dos contadores comparten el mismo nmero de contador pero no
se usan a la vez se producir un error de duplicado cuando se compruebe el
programa, pero los contadores funcionarn normalmente. Los contadores que
compartan el mismo nmero de contador no funcionarn correctamente si se
usan a la vez.
El PV no cambiar si los bits de aumento y disminucin pasan de OFF a ON a la
vez. Cuando el bit de reset est en ON, el PV se restablecer a 0 y se ignorarn
ambas entradas de contaje.
El indicador de finalizacin slo estar en ON cuando el PV haya aumentado de
SV a 0 o disminuido de 0 a SV; en todos los dems casos estar en OFF.
Cuando introduzca la instruccin CNTR(012) con mnemnicos, introduzca primero la entrada de contaje adelante (II), luego la entrada de contaje atrs (DI),
la entrada de reset (R) y por ltimo la instruccin CNTR(012). Cuando introduzca diagramas de rels, introduzca primero la entrada de contaje adelante
(II), luego la instruccin CNTR(012), la entrada de contaje atrs (DI) y por ltimo
la entrada de reset (R).

Ejemplos

Operacin bsica de CNTR(012)


El PV del contador se restablece a 0 poniendo la entrada de reset (CIO 000002)

200

Instrucciones de temporizador y contador

Seccin

3-6

en ON y OFF. El PV aumenta en 1 cada vez que la entrada de contaje adelante


(CIO 000000) pasa de OFF a ON. Cuando el PV aumenta del SV (3), se restablece automticamente a 0 y se pone el indicador de finalizacin en ON.
De la misma forma, el PV disminuye en 1 cada vez que la entrada de contaje
atrs (CIO 000001) pasa de OFF a ON. Cuando el PV disminuye de 0, se restablece automticamente al SV (3) y se pone el indicador de finalizacin en ON.
Contaje adelante
Contaje
atrs
Entrada reset

Entrada de contaje adelante


CIO 000000
Entrada de contaje atrs
CIO 000001
Entrada de reset
CIO 000002

PV del contador
C0001

SV

Indicador de finalizacin
C0001

Especificacin del SV en un canal


En el siguiente ejemplo el SV para CNTR(012) 0007 est determinado por el
contenido de CIO 0001. Cuando el contenido de CIO 0001 lo controla un conmutador externo, se puede cambiar manualmente el valor seleccionado desde
el conmutador.

SV fijado:
5000

SV:
CIO 0001

Entrada de contaje adelante


Entrada de contaje atrs
Indicador de finalizacin

Bloqueo

Bloqueo

201

Instrucciones de temporizador y contador

Seccin

3-6

3-6-9 RESET DE TEMPORIZADOR/CONTADOR: CNR(545)


Restablece los temporizadores o contadores dentro del rango de nmeros eespecificado.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

CNR(545)

Variacio-nes

N1

N1: Primer nmero del rango

N2

N2: ltimo nmero del rango

Ejecutado cada ciclo para condicin ON

CNR(545)

Ejecutado una vez para diferencial ascendente

@CNR(545)

Ejecutado una vez para diferencial


descendente

No soportado.
No soportado.

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

N1: Primer nmero del rango


N1 debe ser un nmero de temporizador entre T0000 y T4095 o un nmero de
contador entre C0000 y C4095.
N2: ltimo nmero del rango
N2 debe ser un nmero de temporizador entre T0000 y T4095 o un nmero de
contador entre C0000 y C4095.
Nota N1 y N2 deben estar en la misma rea de datos, es decir, N1 y N2 deben ser nmeros de temporizador o nmeros de contador.

Especificaciones de
operandos

rea

N1

N2

rea CIO

---

---

rea de trabajo

---

---

rea de bits de
retencin

---

---

rea de bits auxiliares

---

---

rea de temporizador

C0000 a C4095

C0000 a C4095

rea de contador

T0000 a T4095

T0000 a T4095

rea DM

---

---

rea EM sin banco

---

---

rea EM con banco

---

---

Direcciones de DM/EM
indirectas en binario

---

---

Direcciones de DM/EM
indirectas en BCD

---

---

Constantes

---

---

Registros de datos

---

---

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

202

CNR(545) restablece el indicador de finalizacin de todos los temporizadores o


contadores desde N1 a N2. Al mismo tiempo, se fijarn todos los PV al valor mximo. (El PV se fijar al SV la prxima vez que se ejecute la instruccin de temporizador o contador).

Instrucciones de temporizador y contador

Seccin

3-6

Restablecimiento de temporizadores con CNR(454)


Se restablecern los siguientes temporizadores si su nmero de temporizador
est dentro del rango especificado: TIM, TIMH(015), TMHH(540), TTIM(087),
TIMW(813), y TMHW(815). Cuando se restablece un temporizador, se pone en
OFF su indicador de finalizacin y se establece su PV al valor mximo 9999.
Nota Los temporizadores TIML(542) y MTIM(543) no se pueden restablecer con
CNR(545), pues estos temporizadores no utilizan nmeros de temporizador.
Restablecimiento de contadores con CNR(454)
Se restablecern los siguientes contadores si su nmero de contador est dentro del rango especificado: CNT, CNTR(012), y CNTW(814). Cuando se restablece un contador, su indicador de finalizacin se pone en OFF y su PV se selecciona al valor mximo 9999.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N1 se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un temporizador o contador.
ON si N2 se direcciona indirectamente a travs de un
registro de ndice pero la direccin del registro no es la
direccin de PV de un temporizador o contador.
ON si N1 y N2 no estn en la misma rea de datos.
OFF en todos los dems casos.

Precauciones

CNR(545) no restablece las instrucciones de temporizador/contador por s mismas, sino que restablece los PV e indicadores de finalizacin asignados a esas
instrucciones. En la mayora de los casos, el efecto de CNR(545) es distinto al
de restablecer directamente las instrucciones. Por ejemplo, cuando se restablece directamente una instruccin TIM se selecciona su PV al SV, pero cuando
se restablece ese temporizador con CNR(545) su PV se fija al valor mximo
9999.
Cuando N1 y N2 se especifiquen con N1>N2, slo se restablecer el indicador
de finalizacin del nmero de temporizador/contador.

Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, se ponen en OFF los
indicadores de finalizacin de los temporizadores T0002 a T0005, y los PV de
los temporizadores se seleccionan al valor mximo 9999.
Cuando, en el siguiente ejemplo, CIO 000001 est en ON, se ponen en OFF los
indicadores de finalizacin de los contadores C0003 a C0007, y los PV de los
contadores se seleccionan al valor mximo 9999.

3-6-10 Aplicaciones ejemplo de temporizador y contador


Los siguientes ejemplos muestran varias aplicaciones de instrucciones de temporizador y contador, incluyendo temporizadores a largo plazo, un contador en
dos pasos, retardo ON/OFF, bit de una sola vez y bit de parpadeo.
Ejemplo 1:
Temporizadores de
mayor rango de tiempo

Los siguientes ejemplos de programa muestran tres formas de crear un temporizadores de mayor rango de tiempo con instrucciones TIM y CNT estndar.

203

Instrucciones de temporizador y contador

Seccin

3-6

Dos instrucciones TIM


En este ejemplo se combinan dos instrucciones TIM para crear un temporizador
de 30 minutos.
000000

Direccin Instruccin Operandos

T0001

T0002

000000
000001

LD
TIM

000002
000003

LD
TIM

000004
000005

LD
OUT

000000
0001
#9000
T0001
0002
#9000
T0002
000200

Instrucciones TIM y CNT


En este ejemplo se combinan una instruccin TIM y una instruccin CNT para
crear un temporizador de 500 segundos.
TIM 0001 genera un pulso cada 5 s, y CNT 0002 cuenta estos pulsos. El valor
seleccionado para esta combinacin es el intervalo de tiempoSV del contador.
En este caso, el SV del temporizador sera 5 s 100 = 500 s. Con esta combinacin, el PV del temporizador a largo plazo es en realidad el PV de un contador,
que se mantiene aunque haya cortes de alimentacin.
Direccin Instruccin Operandos

Inicio

Contaje alcanzado

000000
000001
000002

LD
LD
CNT

000003
000004
000005
000006

LD
AND NOT
AND NOT
TIM

000007
000008
000009
000010

LD
OUT
LD
OUT

010000
000001
0002
#0100
000000
010000
C0002
0001
#0050
T0001
010000
C0002
000201

Pulso de reloj e instruccin CNT


En este ejemplo, una instruccin CNT cuenta los pulsos de un reloj de 1 s para
crear un temporizador de 700 segundos.
Si se aade el indicador de primer ciclo (A20011) al contador como entrada de
reset, se restablecer el PV del contador al SV cuando comience la ejecucin
del programa, en lugar de reiniciar el contaje desde el PV anterior.
000000

000001

1 s (reloj de 1 s)

Direccin Instruccin Operandos


000000
000001
000002
000003

LD
AND
LD NOT
CNT

000004
000005

LD
OUT

A20011

C0001

204

000000
1s
000001
0001
#0700
C0001
000202

Instrucciones de temporizador y contador


Ejemplo 2:
Contador de dos pasos

Seccin

3-6

Cuando se necesite un SV mayor que 65.535, se pueden combinar dos contadores, tal y como se muestra en el ejemplo siguiente. En este caso se combinan
dos instrucciones CNT para crear un contador BCD con un SV de 20.000.

Direccin Instruccin Operandos

Ejemplo 3:
Retardo a ON/OFF

000000
000001
000002
000003
000004
000005

LD
AND
LD NOT
OR
OR
CNT

000006
000007
000008

LD
LD NOT
CNT

000009
000010

LD
OUT

000000
000001
000002
C0001
C0002
0001
#0100
C0001
000002
0002
#0200
C0002
000203

En este ejemplo se combinan dos temporizadores TIM con KEEP(011) para


crear un retardo a ON y un retardo a OFF. CIO 000500 se pondr en ON 5 segundos despus de que CIO 000000 se ponga en ON, y se pondr en OFF 3
segundos despus de que CIO 000000 se ponga en OFF.

Direccin Instruccin Operandos


000000
000001

LD
TIM

000002
000003
000004

LD
AND NOT
TIM

000005
000006
000007

LD
LD
KEEP(011)

000000
0001
#0050
000500
000000
0002
#0030
T0001
T0002
000500

CIO 000000

CIO 000500
5,0 s

Ejemplo 4:
Un impulso

3,0 s

Se puede combinar un temporizador TIM con OUT o OUT NOT para controlar
cuanto tiempo est en ON o en OFF un bit concreto. En este ejemplo,

205

Instrucciones de temporizador y contador

Seccin

3-6

CIO 000204 estar en ON durante 1,5 segundos (el SV de T0001) despus de


que CIO 000000 se ponga en ON.
Direccin Instruccin Operandos
000000
000001
000002
000003
000004
000005
000006

LD
LD
AND NOT
OR
OUT
LD
TIM

000007
000008
000009
000010
000011

LD
OUT
LD
AND NOT
OUT

000000
001000
010000
000000
001000
001000
0001
#0015
T0001
010000
001000
010000
000204

CIO 000000

CIO 000204
1,5 s

1,5 s

Los siguientes ejemplos de programa muestran dos formas de crear bits intermitentes. El segundo ejemplo simplemente imita un pulso de reloj.
Dos instrucciones TIM
Se pueden combinar dos temporizadores TIM para hacer que un bit se ponga
en ON y OFF a intervalos regulares de tiempo mientras la condicin de ejecucin es ON. En este ejemplo, CIO 000205 se pondr en OFF durante 1 segundo
y luego en ON durante 1,5 segundos mientras CIO 000000 est en ON.

Ejemplo 4:
Intermitente

Direccin Instruccin Operandos

CIO 000000
CIO 000205
1,0 s

206

1,5 s

1,0 s

1,5 s

000000
000001
000002

LD
AND
TIM

000003
000004

LD
TIM

000005
000006

LD
OUT

000000
T0002
0001
#0010
000205
0002
#0015
T0001
000205

Instrucciones de temporizador y contador

Seccin

3-6

Pulso de reloj
Se puede combinar la condicin de ejecucin deseada con un pulso de reloj
para imitar el pulso de reloj (0,1 s, 0,2 s o 1 s).
Bit de pulsos de reloj de 1s

Direccin Instruccin Operandos


000000
000001
000002

LD
AND
OUT

000000
1s
000206

Bit de
pulsos de
reloj de 1s

3-6-11 Direccionamiento indirecto de los nmeros de


temporizador/contador
Se pueden direccionar indirectamente los nmeros de temporizador y contador
utilizando registros de ndice. Cuando se utilicen registros de ndice para el direccionamiento indirecto use MOVRW(561) (MOVE TIMER/COUNTER PV TO
REGISTER) para seleccionar la direccin de memoria de E/S interna en el PV
del temporizador o contador deseados al registro de ndice deseado.
Se pueden direccionar indirectamente los siguientes nmeros de temporizador
y contador utilizando registros de ndice. TIM, TIMH(015), TTIM(087),
TMHH(540), TIMW(813), TMHW(815), CNT, CNTR(012), y CNTW(814). (Estos
son los temporizadores y contadores que utilizan nmeros de temporizador y
contador).
No se ejecutar la instruccin de temporizador/contador si la direccin de la memoria de E/S interna en el registro de ndice especificado no es la direccin de
un PV de temporizador o contador.
Se puede reducir el tamao del programa y aumentar su flexibilidad utilizando
registros de ndice para direccionar de forma indirecta temporizadores y contadores. Se pueden crear, por ejemplo, subrutinas comunes.
Ejemplo

El ejemplo siguiente muestra una seccin de programa que utiliza el direccionamiento indirecto para definir e iniciar 100 temporizadores con SV localizados en
D00100 a D00199. IR0 contiene la direccin de memoria de E/S interna del PV

207

Instrucciones de temporizador y contador

Seccin

3-6

del temporizador, e IR1 la direccin de memoria de E/S interna del indicador de


finalizacin del temporizador.
Direccin de
DM

Conteni-do

Funcin

D00100

0010

SV para T0000

D00101

0100

SV para T0001

D00102

0050

SV para T0002

D00199

0999

.
SV para T0099

A1

(Indicador de
siempre en
ON)
2

4
#0100

&1

A1
(Indicador de
siempre en
ON)
&1

1, 2, 3...

208

1. MOVRW(561) mueve la direccin de memoria de E/S interna del PV del


temporizador T0000 a IR0. Posteriormente se puede utilizar IR0 en lugar de
un nmero de temporizador.
2. MOVR(560) mueve la direccin de memoria de E/S interna del indicador de
finalizacin del temporizador T0000 a IR1.
3. MOVR(560) mueve la direccin de memoria de E/S interna de CIO 200000
a IR2.
4. MOV(021) mueve #0100 a D00000 para el direccionamiento indirecto de
los SV del temporizador.
5. El contenido de IR0, IR1, IR2 y D0000 aumenta en 1 cada vez que se ejecuta 100 veces este lazo, arrancando los temporizadores T0000 a T0099.
El lazo JMP(004)--JME(005) se repite tanto tiempo como el contenido de
D00000 no sea #0200. Tras 100 repeticiones, D00000 contendr #0200 y
finalizar el lazo.

Instrucciones de temporizador y contador


! Caution

Seccin

3-6

No utilice el nmero de salto 0000 en el tipo de programacin anterior.


En lazo del programa anterior tiene 4 parmetros de entrada, que se utilizan
para arrancar los 100 temporizadores con esta subrutina comn.
IR0
La direccin de memoria de E/S interna del PV del temporizador
IR1
La direccin de memoria de E/S interna del indicador de finalizacin del temporizador
IR2
La direccin de memoria de E/S interna de la condicin de ejecucin del temporizador
D00000 La direccin de DM del canal que contiene el SV del temporizador
Esta subrutina equivale a las 400 instrucciones siguientes.

200000

T0000

200001

T0001

200602

T0099

Direccin Instruccin Operandos


000000
000001

LD NOT
TIM

000002
000003
000004
000005

LD
OUT
LD NOT
TIM

000006
000007
000008
000009

LD
OUT
LD NOT
TIM

000010
000011

LD
OUT

000396
000397

LD NOT
TIM

000398
000399

LD
OUT

200000
0000
D00100
T0000
200000
200001
0001
D00101
T0001
200001
200002
0002
D00102
T0002
200002

200602
0099
D00199
T0000
200602

209

Instrucciones de comparacin

3-7

Seccin

3-7

Instrucciones de comparacin
Esta seccin describe las instrucciones utilizadas para comparar datos de diversas longitudes, de diversas formas.
Instruccin

Nemnico
LD, AND, OR

Cdigo de
funcin
300 a 328

210

COMPARE

=, <>, <, <=, >,


>=, L, S
CMP

020

215

DOUBLE COMPARE

CMPL

060

218

SIGNED BINARY COMPARE

CPS

114

220

DOUBLE SIGNED BINARY


COMPARE

CPSL

115

223

MULTIPLE COMPARE

MCMP

019

226

TABLE COMPARE

TCMP

085

228

COMPARAR BLOQUE

BCMP

068

230

Instrucciones de comparacin
de entrada

Pgina

3-7-1 Instrucciones de comparacin de entrada (300 a 328)


Funcin

Las instrucciones de comparacin de entrada comparan dos valores (constantes y/o el contenido de canales concretos) y crean una condicin de ejecucin
ON si la condicin de comparacin es verdadera. Las instrucciones de comparacin de entrada estn disponibles para comparar datos con o sin signo de un
canal o datos de longitud doble.

Smbolo de diagrama de
rels

Smbolo y opciones
S1: Datos de comparacin 1

S1

S2: Datos de comparacin 2

S2

Variacio-- nes

Variacio-nes

Crea una condicin ON en cada ciclo si la


comparacin es verdadera

Especificacin de actualizacin inmediata

reas de programa
aplicables

Especificaciones de
operandos de
instrucciones para datos
de un canal

reas de programa
de bloques
OK

reas de programa
por pasos
OK

rea

Subrutinas
OK

S1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_ 32767
(n = 0 a C)

210

Instruccin de
comparacin de
entrada
No soportado
Tareas de
interrupcin
OK
S2

Instrucciones de comparacin

Seccin

rea
Direcciones de DM/EM
indirectas en BCD

S1
*D00000 a *D32767

3-7

S2

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Especificaciones de
operandos de
instrucciones para datos
de doble longitud

rea

S1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

S2

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF (binario)

Registros de datos

---

Registros de ndice

IR0 a IR15 (slo para datos sin signo)

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin de comparacin de entrada compara S1 y S2 como valores con o


sin signo y crea un condicin de ejecucin ON si la condicin de comparacin es
verdadera. A diferencia de instrucciones como CMP(020) y CMPL(060), el resultado de una instruccin de comparacin de entrada se refleja directamente
como condicin de ejecucin, es decir, no es necesario acceder al resultado de
la comparacin a travs de un indicador aritmtico, por lo que el programa es
ms sencillo y rpido.

211

Instrucciones de comparacin

Seccin

3-7

Introduccin de instrucciones
Las instrucciones de comparacin de entrada se tratan igual que las instrucciones LD, AND, y OR para controlar la ejecucin de las instrucciones siguientes.
Tipo de
entrada
LD

Operacin
La instruccin se puede conectar directamente a la barra de bus
izquierda.

AND

La instruccin no se puede conectar directamente a la barra de bus


izquierda.

OR

La instruccin se puede conectar directamente a la barra de bus


izquierda.

Conexin LD
<

Condicin de ejecucin ON si el resultado de la


comparacin es verdadero.

Condicin de ejecucin ON si el resultado de la comparacin es verdadero.

Conexin AND
<

Conexin OR

<
Condicin de ejecucin ON si el resultado de la comparacin es verdadero.

Opciones
Las instrucciones de comparacin de entrada pueden comparar datos con o sin
signo y pueden comparar valores de uno o dos canales. Si no se especifican
opciones, la comparacin se realizar para datos sin signo de un canal. Con los
tres tipos de entrada y las dos opciones, existen 72 instrucciones de comparacin de entrada diferentes.
Smbolo
=

(Igual)

<>

(Distinto)

<

(Menor que)

<=

(Menor o igual que)

>

(Mayor que)

>=

(Mayor o igual que)

Opcin (formato de
datos)
Ninguno: Datos sin
signo

Opcin (longitud de
datos)
Ninguno: Datos de un
canal

S: Datos con signo

L: Datos de longitud
doble

Las instrucciones de comparacin de entrada sin signo (es decir, las instrucciones sin la opcin S) pueden manejar datos BCD o binarios sin signo. Las instrucciones de comparacin de entrada con signo (es decir, las instrucciones con la
opcin S) manejan datos binarios con signo.
Resumen de instrucciones de comparacin de entrada
La siguiente tabla muestra los cdigos de funcin, mnemnicos, nombres y funciones de las 72 instrucciones de comparacin de entrada. (Para las compara-

212

Instrucciones de comparacin

Seccin

3-7

ciones de un canal C1=S1 y C2=S2; para las comparaciones de dos canales


C1=S1+1, S1 y C2=S2+1, S2).
Cdi
go

Nemnico

300

LD=

LOAD EQUAL

AND=

AND EQUAL

OR=

OR EQUAL

LD=L

LOAD DOUBLE EQUAL

AND=L

AND DOUBLE EQUAL

OR=L

OR DOUBLE EQUAL

LD=S

LOAD SIGNED EQUAL

AND=S

AND SIGNED EQUAL

OR=S

OR SIGNED EQUAL

LD=SL

LOAD DOUBLE SIGNED EQUAL

AND=SL

AND DOUBLE SIGNED EQUAL

OR=SL

OR DOUBLE SIGNED EQUAL

LD<>

LOAD NOT EQUAL

AND<>

AND NOT EQUAL

OR<>

OR NOT EQUAL

LD<>L

LOAD DOUBLE NOT EQUAL

AND<>L

AND DOUBLE NOT EQUAL

OR<>L

OR DOUBLE NOT EQUAL

LD<>S

LOAD SIGNED NOT EQUAL

AND<>S

AND SIGNED NOT EQUAL

OR<>S

OR SIGNED NOT EQUAL

LD<>SL

LOAD DOUBLE SIGNED NOT EQUAL

AND<>SL

AND DOUBLE SIGNED NOT EQUAL

OR<>SL

OR DOUBLE SIGNED NOT EQUAL

LD<

LOAD LESS THAN

AND<

AND LESS THAN

OR<

OR LESS THAN

LD<L

LOAD DOUBLE LESS THAN

AND<L

AND DOUBLE LESS THAN

OR<L

OR DOUBLE LESS THAN

LD<S

LOAD SIGNED LESS THAN

AND<S

AND SIGNED LESS THAN

OR<S

OR SIGNED LESS THAN

LD<SL

LOAD DOUBLE SIGNED LESS THAN

AND<SL

AND DOUBLE SIGNED LESS THAN

OR<SL

OR DOUBLE SIGNED LESS THAN

LD<=

LOAD LESS THAN OR EQUAL

AND<=

AND LESS THAN OR EQUAL

OR<=

OR LESS THAN OR EQUAL

LD<=L

LOAD DOUBLE LESS THAN OR EQUAL

AND<=L

AND DOUBLE LESS THAN OR EQUAL

OR<=L

OR DOUBLE LESS THAN OR EQUAL

LD<=S

LOAD SIGNED LESS THAN OR EQUAL

AND<=S

AND SIGNED LESS THAN OR EQUAL

OR<=S

OR SIGNED LESS THAN OR EQUAL

LD<=SL
AND<=SL

LOAD DOUBLE SIGNED LESS THAN OR


EQUAL
AND DOUBLE SIGNED LESS THAN OR EQUAL

OR<=SL

OR DOUBLE SIGNED LESS THAN OR EQUAL

301

302

303

305

306

307

308

310

311

312

313

315

316

317

318

Nombre

Funcin
Verdadero

sii
C1 = C2

Verdadero

sii
C1 C2

Verdadero

si
C1 < C2

Verdadero

sii
C1 C2

Verdadero

si
C1 C2

213

Instrucciones de comparacin

Seccin

Cdi
go
320

321

322

323

325

326

327

328

Indicadores

Nemnico

Nombre

LD>

LOAD GREATER THAN

AND>

AND GREATER THAN

OR>

OR GREATER THAN

LD>L

LOAD DOUBLE GREATER THAN

AND>L

AND DOUBLE GREATER THAN

OR>L

OR DOUBLE GREATER THAN

LD>S

LOAD SIGNED GREATER THAN

AND>S

AND SIGNED GREATER THAN

OR>S

OR SIGNED GREATER THAN

LD>SL

LOAD DOUBLE SIGNED GREATER THAN

AND>SL

AND DOUBLE SIGNED GREATER THAN

OR>SL

OR DOUBLE SIGNED GREATER THAN

LD>=

LOAD GREATER THAN OR EQUAL

AND>=

AND GREATER THAN OR EQUAL

OR>=

OR GREATER THAN OR EQUAL

LD>=L

LOAD DOUBLE GREATER THAN OR EQUAL

AND>=L

AND DOUBLE GREATER THAN OR EQUAL

OR>=L

OR DOUBLE GREATER THAN OR EQUAL

LD>=S

LOAD SIGNED GREATER THAN OR EQUAL

AND>=S

AND SIGNED GREATER THAN OR EQUAL

OR>=S

OR SIGNED GREATER THAN OR EQUAL

LD>=SL
AND>=SL

LOAD DBL SIGNED GREATER THAN OR


EQUAL
AND DBL SIGNED GREATER THAN OR EQUAL

OR>=SL

OR DBL SIGNED GREATER THAN OR EQUAL

Nombre
Indicador de
error
Indicador de
mayor que

Etique
ta
ER
OFF
>

3-7

Funcin
Verdadero

sii
C1 > C2

Verdadero

sii
C1 C2

Operacin

ON si S1 > S2 con datos de un canal.


ON si S1+1, S1 > S2+1, S2 con datos de longitud doble.
OFF en todos los dems casos.

Indicador de
mayor o igual
que

>=

ON si S1 S2 con datos de un canal.

Indicador de
igual

ON si S1 = S2 con datos de un canal.


ON si S1+1, S1 = S2+1, S2 con datos de longitud doble.

Indicador de
distinto

ON si S1 S2 con datos de un canal.

ON si S1+1, S1 S2+1, S2 con datos de longitud doble.


OFF en todos los dems casos.

OFF en todos los dems casos.


ON si S1+1, S1 S2+1, S2 con datos de longitud doble.
OFF en todos los dems casos.

Precauciones

214

Indicador de
menor que

<

Indicador de
menor o igual
que

<=

Indicador de
negativo

ON si S1 < S2 con datos de un canal.


ON si S1+1, S1 < S2+1, S2 con datos de longitud doble.
OFF en todos los dems casos.
ON si S1 S2 con datos de un canal.
ON si S1+1, S1 S2+1, S2 con datos de longitud doble.
OFF en todos los dems casos.
OFF

Las instrucciones de comparacin no se pueden utilizar como instrucciones de


derecha, es decir se debe utilizar otra instruccin entre ellas y la barra de bus
derecha.

Instrucciones de comparacin
Ejemplos

Seccin

3-7

AND LESS THAN: AND<(310)


Cuando CIO 000000 est en ON en el siguiente ejemplo, los contenidos de
D00100 y D00200 se comparan como datos binarios sin signo. Si el contenido
de D00100 es menor que el de D00200, CIO 005000 se pone en ON y contina
la ejecucin con la siguiente lnea. Si el contenido de D00100 no es menor que
el de D00200, se salta el resto de la lnea de instruccin y la ejecucin pasa a la
siguiente lnea de instruccin.
005000

000000
<

005001

000001

S1: D00100

Comparacin
LESS THAN
sin signo

S2: D00200

8714

3A1C

Decimal: 34.580

Decimal: 14.876

<S

34.580 > 14.876


(No pasar a la siguiente lnea).

AND SIGNED LESS THAN: AND<S(312)


Cuando CIO 000001 est en ON, en el siguiente ejemplo, los contenidos de
D00110 y D00210 se comparan como datos binarios con signo. Si el contenido
de D00110 es menor que el de D00210, CIO 005001 se pone en ON y contina
la ejecucin con la siguiente lnea. Si el contenido de D00110 no es menor que el
de D00210, se salta el resto de la lnea de instruccin y la ejecucin pasa a la
siguiente lnea de instruccin.

Comparacin
LESS THAN
con signo

S1: D00110

S2: D00210

8714

3A1C

Decimal: -30.956

Decimal: 14.876

-30.956 < 14.876


(Pasar a la siguiente lnea).

3-7-2 COMPARAR: CMP(020)


Funcin

Compara dos valores binarios sin signo (constantes y/o el contenido de canales
concretos) y enva el resultado a los indicadores aritmticos del rea auxiliar.

Smbolo de diagrama de
rels

Variacio-- nes

CMP(020)

Variacio-nes

S1

S1: Datos de comparacin 1

S2

S2: Datos de comparacin 2

Ejecutado cada ciclo para condicin ON

CMP(020)

Ejecutado una vez para diferencial ascendente

No soportado
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK
rea

reas de programa
por pasos
OK
S1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

!CMP(020)
Subrutinas

OK

Tareas de
interrupcin
OK
S2

215

Instrucciones de comparacin

Seccin

rea
rea de bits auxiliares

S1
A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-7

S2

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

CMP(020) compara los datos binarios sin signo en S1 y S2 y enva el resultado a


los indicadores aritmticos (mayor que, mayor o igual que, igual, menor o igual
que, menor que y distinto) del rea auxiliar.

Comparacin binaria sin signo

Indicadores aritmticos
(>, >=, =, <=, <, <>)

Estado del indicador de condicin


La siguiente tabla muestra el estado de los indicadores aritmticos despus de
la ejecucin de CMP(020). (Un estado --- significa que el indicador puede estar en ON o en OFF).
Resultado
de
CMP(020)
S1 > S2
S1 = S2
S1 < S2

Estado del indicador


>

>=

<=

<

<>

ON

ON

OFF

OFF

OFF

ON

OFF

ON

ON

ON

OFF

OFF

OFF

OFF

OFF

ON

ON

ON

Utilizacin de los resultados de CMP(020) en el programa


Cuando se ejecuta CMP(020), el resultado se refleja en los indicadores aritmticos. Controle la salida o la instruccin de derecha deseada con una bifurcacin
desde la misma condicin de entrada que controla CMP(020), tal y como apare-

216

Instrucciones de comparacin

Seccin

3-7

ce en el siguiente diagrama. En este caso, el indicador de igual y la salida A se


pondrn en ON cuando S1 = S2.
Uso de CMP(020) correcto
CMP
S1
S2
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

Utilizacin de los resultados de CMP(020) en el programa


No programe otra instruccin entre CMP(020) y la instruccin controlada por el
indicador aritmtico ya que la instruccin podra cambiar el estado del indicador
aritmtico. En este caso, los resultados de la instruccin B podran cambiar los
resultados de CMP(020).
Uso de CMP(020) incorrecto

CMP
S1
S2

Instruccin
B
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

La variacin de actualizacin inmediata (!CMP(020)) se puede utilizar con canales asignados a entradas externas especificadas en S1 o en S2. Cuando se
ejecuta !CMP(020), se actualizan las entradas para el canal de entrada externo
especificado en S1 o en S2 y se compara dicho valor actualizado. (No se puede
ejecutar la actualizacin inmediata en entradas asignadas a unidades de E/S de
alta densidad del grupo 2 o unidades montadas en bastidores esclavos).
Indicadores

Nombre

Etique
ta

Operacin

Indicador de error

ER

OFF

Indicador de mayor que

>

ON si S1 > S2.
OFF en todos los dems casos.

Indicador de mayor o igual


que

>=

Indicador de igual

ON si S1 S2.
OFF en todos los dems casos.
ON si S1 = S2.
OFF en todos los dems casos.

Indicador de distinto

ON si S1 S2.

Indicador de menor que

<

ON si S1 < S2.

Indicador de menor o igual


que

<=

ON si S1 S2.

Indicador de negativo

OFF en todos los dems casos.


OFF en todos los dems casos.

Precauciones

OFF en todos los dems casos.


OFF

No programe otra instruccin entre CMP(020) y una condicin de entrada que


acceda al resultado de CMP(020), ya que la otra instruccin podra cambiar el
estado de los indicadores aritmticos.

217

Instrucciones de comparacin

Seccin

3-7

3-7-3 COMPARAR DOBLE: CMPL(060)


Funcin

Compara dos valores binarios sin signo dobles (constantes y/o el contenido de
canales concretos) y enva el resultado a los indicadores aritmticos del rea
auxiliar.

Smbolo de diagrama de
rels

Variacio-- nes

CMPL(060)

Variacio-nes

S1

S1: Datos de comparacin 1

S2

S2: Datos de comparacin 2

Ejecutado cada ciclo para condicin ON

CMPL(060)

Ejecutado una vez para diferencial ascendente

No soportado
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

rea

No soportado

Subrutinas
OK

S1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Tareas de
interrupcin
OK

S2

A000 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

Registros de datos

(binario)
---

Registros de ndice

IR0 a IR15

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

218

Instrucciones de comparacin
Descripcin

Seccin

3-7

CMPL(060) compara los datos binarios sin signo en S1 +1, S1 y S2+1, S2 y enva
el resultado a los indicadores aritmticos (mayor que, mayor o igual que, igual,
menor o igual que, menor que y distinto) del rea auxiliar.
Comparacin binaria sin signo
S2+1
Indicadores aritmticos
(>, >=, =, <=, <, <>)

Estado de los indicadores aritmticos


La siguiente tabla muestra el estado de los indicadores aritmticos despus de
la ejecucin de CMPL(060). (Un estado --- significa que el indicador puede estar en ON o en OFF).
Resultado de
CMPL(
CMPL(060)
)

Estado del indicador


>

>=

<=

<

<>

S1 +1, S1 > S2+1, S2

ON

ON

OFF

OFF

OFF

ON

S1+1, S1 = S2+1, S2

OFF

ON

ON

ON

OFF

OFF

S1+1, S1 < S2+1, S2

OFF

OFF

OFF

ON

ON

ON

Utilizacin de los resultados de CMPL(060) en el programa


Cuando se ejecuta CMPL(060), el resultado se refleja en los indicadores aritmticos. Controle la salida o la instruccin de derecha deseada con una bifurcacin
desde la misma condicin de entrada que controla CMPL(060), tal y como aparece en el siguiente diagrama. El indicador de igual y la salida A se pondrn en
ON cuando S1 +1, S1 = S2+1, S2.
Uso de CMPL(060)correcto
CMPL
S1
S2
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

Utilizacin de los resultados de CMPL(060) en el programa


No programe otra instruccin entre CMPL(060) y la instruccin controlada por el
indicador aritmtico ya que la instruccin podra cambiar el estado del indicador
aritmtico. En este caso, los resultados de la instruccin B podran cambiar los
resultados de CMPL(060).
Uso incorrecto de CMPL(060)
CMPL
S1
S2

Instruccin
B
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

219

Instrucciones de comparacin
Indicadores

Seccin
Nombre

Indicador de error

Etique
ta
ER
OFF

Indicador de mayor que

>

3-7

Operacin

ON si S1 +1, S1 > S2+1, S2.


OFF en todos los dems casos.

Indicador de mayor o igual


que

>=

Indicador de igual

ON si S1 +1, S1 S2+1, S2.


OFF en todos los dems casos.
ON si S1 +1, S1 = S2+1, S2.
OFF en todos los dems casos.

Indicador de distinto

<>

ON si S1 +1, S1 S2+1, S2.


OFF en todos los dems casos.

Indicador de menor que

<

ON si S1 +1, S1 < S2+1, S2.


OFF en todos los dems casos.

Indicador de menor o igual


que

<=

Indicador de negativo

ON si S1 +1, S1 S2+1, S2.


OFF en todos los dems casos.
OFF

Precauciones

No programe otra instruccin entre CMPL(060) y una condicin de entrada que


acceda al resultado de CMPL(060), ya que la otra instruccin podra cambiar el
estado de los indicadores aritmticos.

Ejemplo

Cuando CIO 000000 est en ON en el siguiente ejemplo, se comparan los datos


binarios sin signo de 8 dgitos de CIO 0011 y CIO 0010 con los datos del mismo
tipo de CIO 0009 y CIO 0008, y el resultado se enva a los indicadores aritmticos. Los resultados registrados en indicadores de mayor que, igual y menor
que, se guardan inmediatamente en CIO 000200 (mayor que), CIO 000201
(igual), y CIO 000202 (menor que).
Estado del indicador
Comparacin

Resultado

>

(0)

(0)

<

(1)

3-7-4 COMPARACIN BINARIA CON SIGNO: CPS(114)


Funcin

Compara dos valores binarios con signo (constantes y/o el contenido de canales concretos) y enva el resultado a los indicadores aritmticos del rea auxiliar.

Smbolo de diagrama de
rels

Variacio-- nes

CPS(114)

Variacio-nes

S1

S1: Datos de comparacin 1

S2

S2: Datos de comparacin 2

Ejecutado cada ciclo para condicin ON

CPS(114)

Ejecutado una vez para diferencial ascendente

No soportado
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

220

reas de programa
de bloques
OK

reas de programa
por pasos
OK

!CPS(114)
Subrutinas

OK

Tareas de
interrupcin
OK

Instrucciones de comparacin
Especificaciones de
operandos

Seccin
rea

S1

3-7

S2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

CPS(114) compara los datos binarios con signo en S 1 y S2 y enva el resultado a


los indicadores aritmticos (mayor que, mayor o igual que, igual, menor o igual
que, menor que y distinto) del rea auxiliar.
Comparacin binaria con signo

Indicadores aritmticos
(>, >=, =, <=, <, <>)

Nota CPS(114) trata los datos en S1 y S2 como datos binarios con signo con rangos
de 8000 a 7FFF (--32.768 a 32.767 decimal).
Estado de los indicadores aritmticos
La siguiente tabla muestra el estado de los indicadores aritmticos despus de
la ejecucin de CPS(114). (Un estado --- significa que el indicador puede estar
en ON o en OFF).
Estado del indicador

Resultad
o de
CPS(114)
S1 > S2

ON

ON

OFF

OFF

OFF

ON

S1 = S2

OFF

ON

ON

ON

OFF

OFF

S1 < S2

OFF

OFF

OFF

ON

ON

ON

>

>=

<=

<

<>

Utilizacin de los resultados de CPS(114) en el programa


Cuando se ejecuta CPS(114), el resultado se refleja en los indicadores aritmticos. Controle la salida o la instruccin de derecha deseada con una bifurcacin
desde la misma condicin de entrada que controla CPS(114), tal y como apare-

221

Instrucciones de comparacin

Seccin

3-7

ce en el siguiente diagrama. En este caso, el indicador de igual y la salida A se


pondrn en ON cuando S1 = S2.
Uso de CPS(114) correcto
CPS
S1
S2
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

Utilizacin de los resultados de CPS(114) en el programa


No programe otra instruccin entre CPS(114) y la instruccin controlada por el
indicador aritmtico ya que la instruccin podra cambiar el estado del indicador
aritmtico. En este caso, los resultados de la instruccin B podran cambiar los
resultados de CPS(114).
Uso de CPS(114) incorrecto
CPS
S1
S2

Instruccin
B
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

La variacin de actualizacin inmediata (!CPS(114)) se puede utilizar con canales asignados a entradas externas especificadas en S1 o en S2. Cuando se ejecuta !CPS(114), se actualizan las entradas para el canal de entrada externo especificado en S1 o en S2 y se compara dicho valor actualizado. (No se puede
ejecutar la actualizacin inmediata en entradas asignadas a unidades de E/S de
alta densidad del grupo 2 o unidades montadas en bastidores esclavos).
Indicadores

Precauciones

222

Nombre
Indicador de error

Etique
ta
ER
OFF

Operacin

Indicador de mayor que

>

ON si S1 > S2.
OFF en todos los dems casos.

Indicador de mayor o igual


que

>=

ON si S1 S2.
OFF en todos los dems casos.

Indicador de igual

ON si S1 = S2.
OFF en todos los dems casos.

Indicador de distinto

<>

ON si S1 S2.
OFF en todos los dems casos.

Indicador de menor que

<

ON si S1 < S2.
OFF en todos los dems casos.

Indicador de menor o igual


que

<=

ON si S1 S2.
OFF en todos los dems casos.

Indicador de negativo

OFF

No programe otra instruccin entre CPS(114) y una condicin de entrada que


acceda al resultado de CPS(114), ya que la otra instruccin podra cambiar el
estado de los indicadores aritmticos.

Instrucciones de comparacin

Seccin

3-7

3-7-5 DOBLE COMPARACIN BINARIA CON SIGNO: CPSL(115)


Funcin

Compara dos valores binarios con signo dobles (constantes y/o el contenido de
canales concretos) y enva el resultado a los indicadores aritmticos del rea
auxiliar.

Smbolo de diagrama de
rels

Variacio-- nes

CPSL(115)

Variacio-nes

S1

S1: Datos de comparacin 1

S2

S2: Datos de comparacin 2

Ejecutado cada ciclo para condicin ON

CPSL(115)

Ejecutado una vez para diferencial ascendente

No soportado
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

rea

No soportado

Subrutinas
OK

S1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Tareas de
interrupcin
OK

S2

A000 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

Registros de datos

(binario)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

223

Instrucciones de comparacin
Descripcin

Seccin

3-7

CPSL(115) compara los datos binarios con signo dobles en S1 +1, S1 y S2+1, S2
y enva el resultado a los indicadores aritmticos (mayor que, mayor o igual que,
igual, menor o igual que, menor que y distinto) del rea auxiliar.
Comparacin binaria con signo
S2+1
Indicadores aritmticos
(>, >=, =, <=, <, <>)

Nota CPSL(115) trata los datos en S1 y S2 como datos binarios con signo dobles con
rangos de 8000 0000 a 7FFF FFFF (--2.147.483.648 a 2.147.483.647 decimal).
Estado de los indicadores aritmticos
La siguiente tabla muestra el estado de los indicadores aritmticos despus de
la ejecucin de CPSL(115). (Un estado --- significa que el indicador puede estar en ON o en OFF).
Resultado de
CPSL(
CPSL(115)
)

Estado del indicador


>

>=

<=

<

<>

S1 +1, S1 > S2+1, S2

ON

ON

OFF

OFF

OFF

ON

S1+1, S1 = S2+1, S2

OFF

ON

ON

ON

OFF

OFF

S1+1, S1 < S2+1, S2

OFF

OFF

OFF

ON

ON

ON

Utilizacin de los resultados de CPSL(115) en el programa


Cuando se ejecuta CPSL(115), el resultado se refleja en los indicadores aritmticos. Controle la salida o la instruccin de derecha deseada con una bifurcacin
desde la misma condicin de entrada que controla CPSL(115), tal y como aparece en el siguiente diagrama. El indicador de igual y la salida A se pondrn en
ON cuando S1 +1, S1 = S2+1, S2.
Uso de CPSL(115) correcto
CPSL
S1
S2
Indicador aritmtico
(Ejemplo: Indicador de
A
igual)

Utilizacin de los resultados de CPSL(115) en el programa


No programe otra instruccin entre CPSL(115) y la instruccin controlada por el
indicador aritmtico ya que la instruccin podra cambiar el estado del indicador
aritmtico. En este caso, los resultados de la instruccin B podran cambiar los
resultados de CPSL(115).
Uso de CPSL(115) incorrecto
CPSL
S1
S2

Instruccin
B
Indicador aritmtico
(Ejemplo: Indicador de
igual)
A

224

Instrucciones de comparacin
Indicadores

Seccin
Nombre

Etique
ta

3-7

Operacin

Indicador de error

ER

OFF

Indicador de mayor que

>

ON si S1 +1, S1 > S2+1, S2.


OFF en todos los dems casos.

Indicador de mayor o igual


que

>=

ON si S1 +1, S1 S2+1, S2.

Indicador de igual

ON si S1 +1, S1 = S2+1, S2.


OFF en todos los dems casos.

Indicador de distinto

ON si S1 +1, S1 S2+1, S2.

OFF en todos los dems casos.

OFF en todos los dems casos.


Indicador de menor que

<

ON si S1 +1, S1 < S2+1, S2.


OFF en todos los dems casos.

Indicador de menor o igual


que

<=

ON si S1 +1, S1 S2+1, S2.

Indicador de negativo

OFF en todos los dems casos.


OFF

Precauciones

No programe otra instruccin entre CPSL(115) y una condicin de entrada que


acceda al resultado de CPSL(115), ya que la otra instruccin podra cambiar el
estado de los indicadores aritmticos.

Ejemplo

Cuando CIO 000000 est en ON en el siguiente ejemplo, se comparan los datos


binarios con signo de 8 dgitos de D00002 y D00001 con los datos del mismo
tipo de en D00006 y D00005, y el resultado se enva a los indicadores aritmticos.
Si el contenido de D00002 y D00001 es mayor que el de D00006 y D00005, el
indicador de mayor que se pondr en ON, de forma que CIO 002000 se pondr tambin en ON.
Si el contenido de D00002 y D00001 es igual que el de D00006 y D00005, el
indicador de igual se pondr en ON, de forma que CIO 002001 se pondr tambin en ON.
Si el contenido de D00002 y D00001 es menor que el de D00006 y D00005, el
indicador de menor que se pondr en ON, de forma que CIO 002002 se pondr tambin en ON.

Estado del indicador


1234
D0001

5678

Comparacin

D0005
ABCD

>
=

(1)
(0)

<

(0)

EF12

225

Instrucciones de comparacin

Seccin

3-7

3-7-6 COMPARACIN MLTIPLE: MCMP(019)


Funcin

Compara 16 canales consecutivos con otros 16 canales consecutivos y pone en


ON el bit correspondiente del canal de resultado si los contenidos de los canales
no son iguales.

Smbolo de diagrama de
rels

Variacio-- nes

MCMP(019)

Variacio-nes

S1

S1: Primer canal del rango 1

S2

S2: Primer canal del rango 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

MCMP(019)

Ejecutado una vez para diferencial ascendente

@MCMP(019)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Primer canal del rango 1


Especifica el comienzo del primer rango de 16 canales. S1 y S1+15 deben estar
en la misma rea de datos.
S2: Primer canal del rango 2
Especifica el comienzo del segundo rango de 16 canales. S2 y S2+15 deben estar en la misma rea de datos.
R: Canal de resultado
Cada bit de R contiene el resultado de una comparacin entre dos canales de
los juegos de 16 canales. El bit n de R (n = 00 a 15) contiene el resultado de la
comparacin entre los canales S1+n y S2+n.
R

15

14

Resultado de la comparacin de S1 y S2
Resultado de la comparacin de S1+1 y S2+1
Resultado de la comparacin de S1+14 y S2+14
Resultado de la comparacin de S1+15 y S2+15

Especificaciones de
operandos

rea

S1

S2

CIO 0000 a CIO 6128

rea de trabajo

W000 a W496

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H496

H000 a H511

A000 a A944

A448 a A959

rea de temporizador

T0000 a T4080

T0000 a T4095

rea de contador

C0000 a C4080

C0000 a C4095

rea DM

D00000 a D32752

rea EM sin banco

E00000 a E32752

rea EM con banco

En_00000 a 32752

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

226

rea CIO

(n = 0 a C)

Instrucciones de comparacin

Seccin

rea
Direcciones de DM/EM
indirectas en BCD

S1
*D00000 a *D32767

S2

3-7

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MCMP(019) compara los contenidos de los 16 canales S1 a S1+15 con los contenidos de los 16 canales S2 a S2+15, y pone en ON el bit correspondiente del
canal R cuando los contenidos no son iguales.
El contenido de S1 se compara con el contenido de S2, el contenido de S1+1 con
el de S2+1, ..., y el contenido de S1+15 con el de S2+15. El bit n de R se pone en
OFF si el contenido de S1+n es igual que el de S2+n; el bit n de R se pone en ON
si los contenidos son distintos. Si los contenidos de los 16 pares de canales son
iguales, el indicador de igual se pondr en ON despus de ejecutar la instruccin.
Comparacin

R
0: Canales iguales.
1: Canales distintos.

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta

Operacin

ER

OFF

ON si el canal de resultado es 0000.


(Los dos juegos de 16 canales contienen los mismos
datos).
OFF en todos los dems casos.

227

Instrucciones de comparacin
Ejemplo

Seccin

3-7

Cuando CIO 000000 est en ON, en el siguiente ejemplo, MCMP(019) compara


los canales D00100 a D00115 en orden con los canales D00200 a D00215 y
pone en ON los bits correspondientes de D00300 si los canales no son iguales.

R: D00300
S1:

S2:

3-7-7 COMPARAR TABLA: TCMP(085)


Funcin

Compara los datos fuente con los contenidos de 16 canales consecutivos y pone en ON el bit correspondiente del canal de resultado si los contenidos de los
canales son iguales.

Smbolo de diagrama de
rels

Variacio-- nes

TCMP(085)

Variacio-nes

S: Datos fuente

T: Primer canal de la tabla

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

TCMP(085)

Ejecutado una vez para diferencial ascendente

@TCMP(085)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

T: Primer canal de la tabla


Especifica el comienzo de la tabla de 16 canales. T y T+15 deben estar en la
misma rea de datos.
R: Canal de resultado
Cada bit de R contiene el resultado de una comparacin entre S y una canal de

228

Instrucciones de comparacin

Seccin

3-7

la tabla de 16 canales. El bit n de R (n = 00 a 15) contiene el resultado de la comparacin entre S y T+n.


Datos de comparacin 0
Datos de comparacin 1
a

a
Datos de comparacin 15

15

14

Resultado de la comparacin de S y T
Resultado de la comparacin de S y T+1
Resultado de la comparacin de S y T+14
Resultado de la comparacin de S y T+15

Especificaciones de
operandos

rea
rea CIO

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6128
W000 a W496

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H496

H000 a H511

A000 a A959

A000 a A944

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4080

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4080

C0000 a C4095

rea DM

D00000 a
D32767
E00000 a
E32767

D00000 a
D32752
E00000 a
E32752

D00000 a
D32767
E00000 a
E32767

En_00000 a
En_32767

En_00000 a
En_32752

En_00000 a
En_32767

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

TCMP(085) compara los datos fuente (S) con cada uno de los 16 canales T a
T+15, y pone en ON el bit correspondiente del canal R si los datos son iguales.
El bit n de R se pone en ON si el contenido de T+n es igual que S, y se pone en
OFF si es distinto
S se compara con el contenido de T y el bit 00 de R se pone en ON si son iguales
o en OFF si son distintos; S se compara con el contenido de T+1 y el bit 01 de R
se pone en ON si son iguales o en OFF si no lo son, ..., y S se compara con el

229

Instrucciones de comparacin

Seccin

3-7

contenido de T+15 y el bit 15 de R se pone en ON si son iguales o en OFF si son


distintos.
R

Comparacin

Indicadores

Nombre
Indicador de
error
Indicador de
igual

1: Datos iguales.
0: Datos distintos.

Etique
ta

Operacin

ER

OFF

ON si el canal de resultado es 0000.


(Ninguno de los 16 canales de la tabla es igual que S).
OFF en todos los dems casos.

Ejemplo

Cuando CIO 000000 est en ON, en el siguiente ejemplo, TCMP(085) compara


el contenido de D00100 con los contenidos de los canales D00200 a D00215 y
pone en ON los bits correspondientes de D00300 si los contenidos son iguales,
o en OFF si son distintos.
R: D00300
T:

S: D00100

3-7-8 COMPARAR BLOQUE: BCMP(068)


Funcin

Compara los datos fuente con 16 rangos (definidos por 16 lmites inferiores y 16
superiores) y pone en ON el bit correspondiente en el canal de resultado si los
datos fuente estn dentro del rango.

Smbolo de diagrama de
rels

Variacio-- nes

BCMP(068)

Variacio-nes

S: Datos fuente

B: Primer canal del bloque

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

BCMP(068)

Ejecutado una vez para diferencial ascendente

@BCMP(068)

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

230

No soportado
No soportado

Instrucciones de comparacin
reas de programa
aplicables
Operandos

Seccin

reas de programa
de bloques
OK

reas de programa
por pasos
OK

Subrutinas
OK

3-7

Tareas de
interrupcin
OK

B: Primer canal del bloque


Especifica el comienzo de un bloque de 32 canales (16 pares de lmites inferiores/superiores). B y B+31 deben estar en la misma rea de datos.
R: Canal de resultado
Cada bit de R contiene el resultado de una comparacin entre S y uno de los 16
rangos definidos en el bloque de 32 canales. El bit n de R (n = 00 a 15) contiene
el resultado de la comparacin entre S y la n pareja de canales.
R

15 14

Resultado de la comparacin
de S y el rango B B+1
Resultado de la comparacin
de S y el rango B+2 B+3
Resultado de la comparacin de
S y el rango B+28 B+29
Resultado de la comparacin de S
y el rango B+30 B+31

Especificaciones de
operandos

rea
rea CIO

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6112
W0000 a W480

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H480

H000 a H511

A000 a A959

A000 a A928

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4064

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4064

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32736

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32736

E00000 a
E32767

rea EM con banco

En_00000 a
En_32767

En_00000 a
En_32736

En_00000 a
En_32767

rea de trabajo

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

BCMP(068) compara los datos fuente (S) con los 16 rangos definidos en parejas de valores de lmite superior e inferior de B a B+31. El primer canal de cada

231

Instrucciones de comparacin

Seccin

3-7

pareja (B+2n) proporciona el lmite inferior y el segundo canal (B+2n+1) proporciona el lmite superior del rango n (n = 0 a 15). Si S est dentro de cualquiera de
estos rangos (incluyendo los lmites superior e inferior), el bit correspondiente
de R se pondr en ON. El resto de los bits de R se pondrn en OFF.
B
S B+1
Bit 00 de R
B+2
S B+3
Bit 01 de R
B+4
S B+5
Bit 02 de R
B+6
S B+7
Bit 03 de R
B+8
S B+9
Bit 04 de R
B+10 S B+11
Bit 05 de R
B+12 S B+13
Bit 06 de R
B+14 S B+15
Bit 07 de R
B+16 S B+17
Bit 08 de R
B+18 S B+19
Bit 09 de R
B+20 S B+21
Bit 10 de R
B+22 S B+23
Bit 11 de R
B+24 S B+25
Bit 12 de R
B+26 S B+27
Bit 13 de R
B+28 S B+29
Bit 14 de R
B+30 S B+31
Bit 15 de R
Por ejemplo, el bit 00 de R se pondr en ON si S est dentro del primer rango (B
S B+1), el bit 01 de R se pondr en ON si S est dentro del segundo rango
(B+2 S B+3), ..., y el bit 15 de R se pondr en ON si S est dentro del dcimoquinto rango (B+30 S B+31). Todos los dems bits de R se pondrn en OFF.
Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Operacin

ON si el canal de resultado es 0000.


(S no est dentro de ninguno de los 16 rangos).
OFF en todos los dems casos.

Precauciones

No se producir un error si el lmite inferior es mayor que el lmite superior, pero


se enviar 0 (de fuera del rango) al bit correspondiente de R.

Ejemplo

Cuando CIO 000000 est en ON, en el siguiente ejemplo, BCMP(068) compara


el contenido de D00100 con los 16 rangos definidos en D00200 a D00231 y po-

232

Instrucciones de transferencia de datos

Seccin

3-8

ne en ON los bits correspondientes de D00300 si S est dentro del rango, o en


OFF si no lo est.

R: D00300
a

S: D00100

a
a
a
a
a
a
a
a
a
a
a
a
a
a
a

3-8

Instrucciones de transferencia de datos

3-8-1 MOVER: MOV(021)


Funcin

Transfiere un canal de datos al canal especificado.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

MOV(021)

Variacio-nes

S: Fuente

D: Destino

Ejecutado cada ciclo para condicin ON

MOV(021)

Ejecutado una vez para diferencial ascendente

@MOV(021)

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

No soportado

Variacio-nes
combina-das

!@MOV(021)

!MOV(021)

Actualizacin inmediata sencilla para


diferencial ascendente

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
por pasos
OK

rea

Subrutinas
OK

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

Tareas de
interrupcin
OK
D

A448 a A959

233

Instrucciones de transferencia de datos

Seccin

rea DM

rea

S
D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-8

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF (binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Transfiere S a D. Si S es una constante, el valor se puede utilizar para seleccionar datos.


Canal fuente

Estado del bit


no modificado.

Canal de destino

MOV(021) tiene una variacin de actualizacin inmediata (!MOV(021)). Se pueden especificar bits de entrada externa para S y bits de salida externa para D.
Los bits de entrada para S se actualizarn justo antes, y los bits de salida utilizados para D se actualizarn justo despus de la ejecucin, a menos que los bits
estn asignados a una unidad de E/S de alta densidad del grupo 2, a una unidad
de E/S especial de alta densidad, o a una unidad montada en un bastidor esclavo de E/S remoto de SYSMAC BUS.
Indicadores

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Etique
ta
ER
OFF
=

Operacin

ON si los datos que se transfieren son 0000.


OFF en todos los dems casos.

ON si el bit de la izquierda de los datos que se


transfieren es 1
OFF en todos los dems casos.

Ejemplo

234

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el contenido de


CIO 0100 se copia en D00100.

Instrucciones de transferencia de datos

Seccin

3-8

3-8-2 MOVER NEGADO: MVN(022)


Funcin

Transfiere el complemento de un canal de datos al canal especificado.

Smbolo de diagrama de
rels

Variacio-- nes

MVN(022)

Variacio-nes

S: Fuente

D: Destino

Ejecutado cada ciclo para condicin ON

MVN(022)

Ejecutado una vez para diferencial ascendente

@MVN(022)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

rea

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF (binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MVN(022) invierte los bits de S y transfiere el resultado a D. El contenido de S


permanece sin modificaciones.
Canal fuente

Canal de destino
Estado del bit
invertido.

235

Instrucciones de transferencia de datos


Indicadores

Seccin

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

Indicador de
negativo

3-8

Operacin

ON si el contenido de D es 0000 despus de la


ejecucin.
OFF en todos los dems casos.
ON si el bit de la izquierda de D es 1 despus de la
ejecucin.

OFF en todos los dems casos.

Ejemplo

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el estado de los


bits de CIO 0100 se invierte y el resultado se copia en D00100.

3-8-3 MOVER DOBLE: MOVL(498)


Funcin

Transfiere dos canales de datos a los canales especificados.

Smbolo de diagrama de
rels

Variacio-- nes

MOVL(498)

Variacio-nes

S: Primer canal fuente

D: Primer canal de destino

Ejecutado cada ciclo para condicin ON

MOVL(498)

Ejecutado una vez para diferencial ascendente

@MOVL(498)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
por pasos
OK

rea

236

Subrutinas
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

(n = 0 a C)

No soportado
Tareas de
interrupcin
OK
D

A448 a A958

Instrucciones de transferencia de datos

Seccin

rea
Direcciones de DM/EM
indirectas en binario

S
@ D00000 a @ D32767

3-8

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)
---

Registros de ndice

IR0 a IR15

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --) IR0 a, 1--(-- --) IR5

MOVL(498) transfiere S+1 y S a D+1 y D. Si S+1 y S son constantes, el valor se


puede utilizar para seleccionar datos.

Descripcin
S

S+1

D+1

Estado del bit


no modificado.

Indicadores

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Etique
ta
ER
OFF
=

Operacin

ON si los contenidos de D+1 y D son 0000 0000


despus de la ejecucin.
OFF en todos los dems casos.
ON si el bit de la izquierda de D+1 es 1 despus de la
ejecucin.

OFF en todos los dems casos.

Ejemplo

Cuando CIO 000000 est en ON, en el siguiente ejemplo, el contenido D00101


y D00100 se copia en D00201 y D00200.

3-8-4 DOBLE MOVER NEGADO: MVNL(499)


Funcin
Smbolo de diagrama de
rels

Transfiere el complemento de dos canales de datos a los canales especificados.


MVNL(499)
S

S: Primer canal fuente

D: Primer canal de destino

237

Instrucciones de transferencia de datos


Variacio-- nes

Variacio-nes

Seccin
Ejecutado cada ciclo para condicin ON

MVNL(499)

Ejecutado una vez para diferencial ascendente

@MVNL(499)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

3-8

reas de programa
por pasos

No soportado
Subrutinas

OK

OK

rea

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

MVNL(499) invierte los bits de S+1 y S y transfiere el resultado a D+1 y D. Los


contenidos de S+1 y S permanecen sin modificaciones.

Descripcin
S

S+1

D+1

Estado del bit


invertido.

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Operacin

ON si los contenidos de D+1 y D son 0000 0000


despus de la ejecucin.
OFF en todos los dems casos.

Indicador de
negativo

ON si el bit de la izquierda de D+1 es 1 despus de la


ejecucin.
OFF en todos los dems casos.

238

Instrucciones de transferencia de datos


Ejemplo

Seccin

3-8

Cuando CIO 000000 est en ON en el siguiente ejemplo, el estado de los bits de


D00101 y D00100 se invierte y el resultado se copia en D00201 y D00200. (Los
contenidos originales de D00101 y D00100 permanecen sin modificaciones).

3-8-5 MOVER BIT: MOVB(082)


Funcin

Transfiere el bit especificado.

Smbolo de diagrama de
rels

Variacio-- nes

MOVB(082)

Variacio-nes

S: Canal o datos fuente

C: Canal de control

D: Canal de destino

Ejecutado cada ciclo para condicin ON

MOVB(082)

Ejecutado una vez para diferencial ascendente

@MOVB(082)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Canal de control
Los dos bits de la derecha de C indican qu bit de S es el bit fuente y los dos de la
izquierda de C indican qu bit es el de destino.
15

8 7

n
Bit fuente: 00 a 0F
(0 a 15 decimal)
Bit destino: 00 a 0F
(0 a 15 decimal)

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

A448 a A959

239

Instrucciones de transferencia de datos

Seccin

rea
rea EM con banco

S
En_00000 a En_32767

3-8

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MOVB(082) copia el bit especificado (n) de S en el bit especificado (m) de D. Los


dems bits del canal de destino permanecen sin modificaciones.

Nota Se puede especificar el mismo canal para S y para D con el fin de copiar un bit
dentro de un canal.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si los dos dgitos de la derecha y de la izquierda de
C no estn dentro del rango especificado de 00 a 0F.
OFF en todos los dems casos.

Ejemplos

240

Cuando CIO 000000 est en ON en el siguiente ejemplo, el 5 bit del canal fuente (CIO 0200) se copia en el 12 bit del canal de destino (CIO 0300) de acuerdo
con el valor del canal de control de 0C05.

Instrucciones de transferencia de datos

Seccin

3-8

3-8-6 MOVER DGITO: MOVD(083)


Funcin

Transfiere los dgitos especificados. (Cada dgito se compone de 4 bits).

Smbolo de diagrama de
rels

Variacio-- nes

MOVD(083)

Variacio-nes

S: Canal o datos fuente

C: Canal de control

D: Canal de destino

Ejecutado cada ciclo para condicin ON

MOVD(083)

Ejecutado una vez para diferencial ascendente

@MOVD(083)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Canal fuente
Los dgitos fuente se leen de derecha a izquierda, y se volver al dgito de la
derecha (dgito 0) si es necesario.
15

12 11

Dgito 3

Dgito 2

Dgito 1

Dgito 0

C: Canal de control
Los tres primeros dgitos de C indican el primer dgito fuente (m), el nmero de
dgitos para transferir (n), y el primer dgito de destino (), tal y como aparece en
el siguiente diagrama.
15

12 11

8 7

4 3

Primer dgito de S (m): 0 a 3


Nmero de dgitos (n): 0 a 3
Primer dgito de D (): 0 a 3
0: 1 dgito
1: 2 dgitos
2: 3 dgitos
3: 4 dgitos
siempre 0.

D: Canal de destino
Los dgitos de destino se escriben de derecha a izquierda, y se volver al dgito
de la derecha (dgito 0) si es necesario.
15

Especificaciones de
operandos

rea

12

Dgito 3

11

Dgito 2

Dgito 1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

Dgito 0

A448 a A959

241

Instrucciones de transferencia de datos

Seccin

rea
rea EM con banco

S
En_00000 a En_32767

3-8

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MOVD(083) copia el contenido de n dgitos de S (comenzando por el dgito m)


en D (comenzando por el dgito ). Slo se modifican los dgitos especificados;
el resto permanece sin modificaciones.
Si el nmero de dgitos ledos o escritos sobrepasa el dgito de la izquierda de S
o D, MOVD(083) volver al dgito de la derecha del mismo canal.

Nota Se puede especificar el mismo canal para S y para D con el fin de copiar un dgito dentro de un canal.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si uno de los tres primeros dgitos de C no estn
dentro del rango especificado de 0 a 3.
OFF en todos los dems casos.

Ejemplos

242

Transferencia de 4 dgitos
Cuando CIO 000000 est en ON en el siguiente ejemplo, se copian 4 dgitos de
datos de CIO 0200 a CIO 0300. La transferencia comienza por el dgito 1 de

Instrucciones de transferencia de datos

Seccin

3-8

CIO 0200 y el dgito 0 de CIO 0300, de acuerdo con el valor del canal de control
de 0031.

Primer dgito de S: Dgito 1

N de dgito

Nmero de dgitos: 3 (4 dgitos)


N de dgito
Primer dgito de D: Dgito 0

Nota Una vez ledo el dgito de la izquierda de S (dgito 3), MOVD(083) vuelve al dgito de la derecha (dgito 0).
Ejemplos de C
El siguiente diagrama muestra ejemplos de transferencias de datos para diversos valores de C.

Dgito 0

Dgito 0

Dgito 0

Dgito 0

Dgito 0

Dgito 0

Dgito 0

Dgito 0

Dgito 1

Dgito 1

Dgito 1

Dgito 1

Dgito 1

Dgito 1

Dgito 1

Dgito 1

Dgito 2

Dgito 2

Dgito 2

Dgito 2

Dgito 2

Dgito 2

Dgito 2

Dgito 2

Dgito 3

Dgito 3

Dgito 3

Dgito 3

Dgito 3

Dgito 3

Dgito 3

Dgito 3

3-8-7 TRANSFERENCIA DE MTIPLES BITS: XFRB(062)


Funcin

Transfiere el nmero especificado de bits consecutivos.

Smbolo de diagrama de
rels

Variacio-- nes

XFRB(062)

Variacio-nes

C: Canal de control

S: Primer canal fuente

D:Primer canal de destino

Ejecutado cada ciclo para condicin ON

XFRB(062)

Ejecutado una vez para diferencial ascendente

@XFRB(062)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Canal de control
Los tres primeros dgitos de C indican el primer dgito fuente (m), el nmero de

243

Instrucciones de transferencia de datos

Seccin

3-8

dgitos para transferir (n), y el primer dgito de destino (), tal y como aparece en
el siguiente diagrama.
15

8 7

4 3

Primer dgito de S (): 0 a F


Primer bit de D (m): 0 a 3

Nmero de dgitos (n):


00 a FF (0 a 255)

S: Primer canal fuente


Especifica el primer canal fuente. Los bits se leen de derecha a izquierda, continuando con los canales consecutivos (hasta S+16) si es necesario.
S

15

S+16 mx.

Nota Los canales fuente deben estar en la misma rea de datos.


D: Primer canal de destino
Especifica el primer canal de destino. Los bits se escriben de derecha a izquierda, continuando con los canales consecutivos (hasta D+16) si es necesario.
D

15

a
D+16 mx.

Nota Los canales de destino deben estar en la misma rea de datos.


Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes
Registros de datos

244

(n = 0 a C)
Valores
especificados
exclusivamente
DR0 a DR15

-----

---

Instrucciones de transferencia de datos

Seccin

rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

3-8

--,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a 5+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XFRB(062) transfiere hasta 255 bits consecutivos de canales fuente (comenzando por el bit de S) a los canales de destino (comenzando por el bit m de D).
Los bits de los canales de destino que no estn sobrescritos por los bits fuente
permanecen sin modificar.
Los bits de comienzo y el nmero de bits se especifican en C, tal y como aparece
en el siguiente diagrama.

Es posible que los canales fuente y los de destino se solapen. Mediante la transferencia de datos que solapan diversos canales, los datos se pueden empaquetar con mayor eficacia en el rea de datos. (Esto es especialmente til a la hora
de manejar datos de posicin para el control de posicin).
Ya que los canales fuente y los de destino se pueden solapar, XFRB(062) se
puede combinar con ANDW(034) para desplazar m bits n espacios.
Indicadores

Nombre
Indicador de
error

Precauciones

Etique
ta
ER

Operacin
OFF

Se pueden transferir hasta 255 bits de datos por ejecucin de XFRB(062).


Asegrese de que los canales fuente y destino no sobrepasan el final del rea
de datos.

Ejemplos

Cuando CIO 000000 est en ON en el siguiente ejemplo, los 20 bits que comienzan con CIO 020006 se copian en los 20 bits que comienzan con
CIO 030000.

20 bits

245

Instrucciones de transferencia de datos

Seccin

3-8

3-8-8 TRANSFERIR BLOQUE: XFER(070)


Funcin

Transfiere el nmero especificado de canales consecutivos.

Smbolo de diagrama de
rels

Variacio-- nes

XFER(070)

Variacio-nes

N: Nmero de canales

S: Primer canal fuente

D:Primer canal de destino

Ejecutado cada ciclo para condicin ON

XFER(070)

Ejecutado una vez para diferencial ascendente

@XFER(070)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de canales
Especifica el nmero de canales que se van a transferir. El rango posible para N
es 0000 a FFFF (0 a 65.535 decimal).
S: Primer canal fuente
Especifica el primer canal fuente. S y S+(N--1) deben estar en la misma rea de
datos.
S

15

a
S+(N--1)

D: Primer canal de destino


Especifica el primer canal de destino. D y D+(N--1) deben estar en la misma
rea de datos.
D

15

a
D+(N--1)

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

246

A448 a A959

Instrucciones de transferencia de datos

Seccin

rea
Direcciones de DM/EM
indirectas en BCD

N
*D00000 a *D32767

3-8

*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
#0000 a #FFFF
(binario) o &0 a
&65535
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

---

---

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XFER(070) copia N canales que comienzan por S (S a S+(N--1)) en los N canales que comienzan por D (D a D+(N--1)).

a
S+(N--1)

N canales
D+
(N--1)

Es posible que los canales fuente y destino se solapen, de forma que


XFER(070) puede ejecutar operaciones de desplazamiento de canales.

&10

Indicadores

Nombre
Indicador de
error

Precauciones

Etique
ta
ER
OFF

Operacin

Asegrese de que los canales fuente (S a S+N--1) y los de destino (D a D+N--1)


no sobrepasan el final del rea de datos.
En ocasiones ser necesario completar XFER(070) si se van a transferir muchos canales. En este caso, la transferencia XFER(070) puede que no finalice si
se produce un corte de alimentacin durante la ejecucin de la instruccin.

Ejemplo

Cuando CIO 000000 est en ON, en el siguiente ejemplo, los 10 canales


D00100 a D00109 se copian en D00200 a D00209.

&10

10 canales

247

Instrucciones de transferencia de datos

Seccin

3-8

3-8-9 RELLENAR BLOQUE: BSET(071)


Copia el mismo canal en un rango de canales consecutivos.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

BSET(071)

Variacio-nes

S: Canal fuente

St

St: Canal de inicio

E:Canal de fin

Ejecutado cada ciclo para condicin ON

BSET(071)

Ejecutado una vez para diferencial ascendente

@BSET(071)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Canal fuente
Especifica los datos fuente o el canal que contiene dichos datos.
St: Canal de inicio
Especifica el primer canal del rango de destino.
E: Canal de fin
Especifica el ltimo canal del rango de destino.
St
a
E
Datos fuente

Rango de destino
St

Nota St y E deben estar en la misma rea


Especificaciones de
operandos

rea

St

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

248

Instrucciones de transferencia de datos

Seccin

rea
Direcciones de DM/EM
indirectas en BCD

S
*D00000 a *D32767

St

3-8

*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
#0000 a #FFFF
(binario)
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --) IR0 a, 15--(-- --) IR

BSET(071) copia el mismo canal fuente (S) en todos los canales de destino en
el rango de St a E.

Descripcin

Canal fuente

Canales de destino
St

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si St es mayor que E.
OFF en todos los dems casos.

Asegrese de que el canal de inicio (St) y el final (E) estn en la misma rea de
datos y que St E.

Precauciones

En ocasiones ser necesario completar BSET(071) si se van a transferir datos


fuente a muchos canales. En este caso, la transferencia BSET(071) puede que
no finalice si se produce un corte de alimentacin durante la ejecucin de la instruccin.
Cuando CIO 000000 est en ON, en el siguiente ejemplo, los datos fuente de
D00100 se copian en D00200 a D00209.

Ejemplo

S
St
E

St:

E:

249

Instrucciones de transferencia de datos

Seccin

3-8

3-8-10 INTERCAMBIO DE DATOS: XCHG(073)


Funcin

Intercambia el contenido de los dos canales especificados.

Smbolo de diagrama de
rels

Variacio-- nes

XCHG(073)

Variacio-nes

E1

E1: Primer canal de intercambio

E2

E2: Segundo canal de intercambio

Ejecutado cada ciclo para condicin ON

XCHG(073)

Ejecutado una vez para diferencial ascendente

@XCHG(073)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

rea

No soportado
Subrutinas

OK

E1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Tareas de
interrupcin
OK
E2

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XCHG(073) intercambia los contenidos de E1 y E2.


E1

250

E2

Instrucciones de transferencia de datos


Indicadores

Seccin

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual
Indicador de
negativo

Ejemplo

OFF

OFF

3-8

Operacin

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el contenido de


D00100 se intercambia con el de D00200.

3-8-11 INTERCAMBIO DE DATOS DOBLE: XCGL(562)


Funcin

Intercambia el contenido de un par de canales consecutivos con otro par.

Smbolo de diagrama de
rels

Variacio-- nes

XCGL(562)

Variacio-nes

E1

E1: Primer canal de intercambio

E2

E2: Segundo canal de intercambio

Ejecutado cada ciclo para condicin ON

XCGL(562)

Ejecutado una vez para diferencial ascendente

@XCGL(562)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de actualizacin inmediata

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

rea

No soportado
Subrutinas

OK

E1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Tareas de
interrupcin
OK
E2

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

251

Instrucciones de transferencia de datos

Seccin

rea
Direcciones de DM/EM
indirectas en BCD

E1
*D00000 a *D32767

3-8

E2

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

IR0 a IR15

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XCHG(073) intercambia los contenidos de E1+1 y E1 con los de E2+1 y E2.


E1

E1+1

E2

E2+1

Para intercambiar 3 o ms canales, utilice XFER(070) para transferir los canales a un tercer juego de canales (un buffer) tal y como aparece en el siguiente
diagrama.
E1

1 operacin
XFER(070)
Buffer
2 operacin
XFER(070)

E2
3 operacin
XFER(070)

Indicadores

Ejemplo

252

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual
Indicador de
negativo

OFF

OFF

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, los contenidos de


D00100 y D00101 se intercambian con los de D00200 y D00201.

Instrucciones de transferencia de datos

Seccin

3-8

3-8-12 DISTRIBUCIN DE DATOS: DIST(080)


Funcin

Transfiere el canal fuente a un canal de destino, que se calcula aadiendo un


valor de offset a la direccin base.

Smbolo de diagrama de
rels

Variacio-- nes

DIST(080)

Variacio-nes

S: Canal fuente

Bs

Bs: Direccin base de destino

Of

Of: Offset

Ejecutado cada ciclo para condicin ON

DIST(080)

Ejecutado una vez para diferencial ascendente

@DIST(080)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

Bs: Direccin base de destino


Especifica la direccin base de destino. El offset se aade a esta direccin para
calcular el canal de destino.
Of: Offset
Este valor se aade a esta direccin base para calcular el canal de destino. El
offset puede ser cualquier valor de 0000 a FFFF (0 a 65.535 decimal), pero Bs y
Bs+Of deben estar en la misma rea de datos.
15

Bs
a
Of

Especificaciones de
operandos

rea

Bs

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

Of

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

---

#0000 a #FFFF
(binario) o &0 a
&65535

253

Instrucciones de transferencia de datos

Seccin

rea
Registros de datos

S
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Bs

3-8

Of
DR0 a DR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

DIST(080) copia S en el canal de destino, que se calcula aadiendo Of a Bs. La


misma instruccin DIST(080) se puede utilizar para distribuir el canal fuente a
diversos canales del rea de datos, modificando el valor de Of.

Descripcin

Bs

Of

Bs+n

Indicadores

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

Operacin

ON si los datos fuente son 0000.


OFF en todos los dems casos.

Indicador de
negativo

ON si el bit de la izquierda de los datos fuente es 1.


OFF en todos los dems casos.

Precauciones

Asegrese de que el offset no sobrepasan el final del rea de datos, es decir, Bs


y Bs+Of estn en la misma rea de datos.

Ejemplo

Cuando CIO 000000 est en ON en el siguiente ejemplo, el contenido de


D00100 se copiar en D00210 (D00200 + 10) si el contenido de D00300 es 10
(0A hexadecimal). El contenido de D00100 se puede copiar en otros canales,
cambiando el offset en D00300.
S: D00100
Copiado por DIST(080).

S
Bs
Of

Of:

Bs:

0 0 0 A

hexadecimal de 4 dgitos
Offset +10 canales
D00210

3-8-13 RECOGIDA DE DATOS: COLL(081)


Funcin
Smbolo de diagrama de
rels

254

Transfiere el canal fuente (que se calcula aadiendo un valor de offset a la direccin base) a un canal de destino.
COLL(081)
Bs

Bs: Direccin base fuente

Of

Of: Offset

D: Canal de destino

Instrucciones de transferencia de datos


Variacio-- nes

Variacio-nes

Seccin
Ejecutado cada ciclo para condicin ON

COLL(081)

Ejecutado una vez para diferencial ascendente

@COLL(081)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

3-8

reas de programa
de bloques
OK

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

Bs: Direccin base fuente


Especifica la direccin base fuente. El offset se aade a esta direccin para calcular el canal fuente.
Of: Offset
Este valor se aade a esta direccin base para calcular el canal fuente. El offset
puede ser cualquier valor de 0000 a FFFF (0 a 65.535 decimal), pero Bs y Bs+Of
deben estar en la misma rea de datos.
15

Bs
a
Of

Especificaciones de
operandos

rea

Bs

Of

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #FFFF
(binario) o &0 a
&65535
DR0 a DR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

255

Instrucciones de transferencia de datos

Seccin

3-8

COLL(081) copia el canal fuente (que se calcula aadiendo Of a Bs) en el canal


de destino. La misma instruccin COLL(081) se puede utilizar para recoger datos de diversos canales fuente del rea de datos, cambiando el valor de Of.

Descripcin

Bs

Of

Bs+n

Indicadores

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

Operacin

ON si los datos fuente son 0000.


OFF en todos los dems casos.

Indicador de
negativo

ON si el bit de la izquierda de los datos fuente es 1.


OFF en todos los dems casos.

Precauciones

Asegrese de que el offset no sobrepasa el final del rea de datos, es decir, Bs y


Bs+Of estn en la misma rea de datos.

Ejemplo

Cuando CIO 000000 est en ON en el siguiente ejemplo, el contenido de


D00110 (D00100 + 10) se copiar en D00300 si el contenido de D00200 es 10
(0A hexadecimal). El contenido de otros canales se puede copiar en D00300,
cambiando el offset en D00200.
D00200
Bs: D00100
D00101

Bs
Of
D

4 dgitos hexadecimal
Offset +10 canales

D00110

Copiado por COLL(081).

3-8-14 MOVER A REGISTRO: MOVR(560)


Funcin

Copia la direccin de memoria de E/S interna del canal especificado, o el indicador de finalizacin del temporizador/contador, en el registro de ndice especificado. (Utilice MOVRW(561) para copiar la direccin de memoria de E/S interna
de un PV de temporizador o contador, en un registro de ndice).

Smbolo de diagrama de
rels

Variacio-- nes

MOVR(560)

Variacio-nes

S: Fuente (canal o bit deseado)

D: Destino (registro de ndice)

Ejecutado cada ciclo para condicin ON

MOVR(560)

Ejecutado una vez para diferencial ascendente

@MOVR(560)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

256

reas de programa
por pasos
OK

No soportado
Subrutinas

OK

D: Destino
El destino debe ser un registro de ndice (IR0 a IR15).

Tareas de
interrupcin
OK

Instrucciones de transferencia de datos


Especificaciones de
operandos

Seccin

rea

rea CIO

3-8

CIO 0000 a CIO 6143

---

CIO 000000 a CIO 614315


rea de trabajo

W000 a W511

---

W00000 a W51115
rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A447

---

H00000 a H51115
---

A448 a A959
A00000 a A44715
rea de temporizador
rea de contador

-----

Indicador de tarea

C0000 a C4095
(Indicador de finalizacin)
TK0000 a TK0031

rea DM

D00000 a D32767

---

rea EM sin banco

E00000 a E32767

---

rea EM con banco

En_00000 a En_32767
(n = 0 a C)
---

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD

Descripcin

A44800 a A95915
T0000 a T4095
(Indicador de finalizacin)

---

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

IR0 a IR15

MOVR(560) busca la direccin de memoria de E/S interna (direccin absoluta)


de S y escribe esa direccin en D (un registro de ndice).
Direccin de memoria de E/S interna de S

Registro de ndice

Si se especifica un temporizador o contador en S, MOVR(560) escribir la direccin de memoria de E/S interna del indicador de finalizacin del temporizador/
contador en D. Utilice MOVRW(561) para escribir la direccin de memoria de
E/S interna del PV de temporizador/contador en D.
Indicadores

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Precauciones

Etique
ta
ER
OFF
=

OFF

OFF

Operacin

MOVR(560) no puede copiar las direcciones de memoria de E/S interna de los


PV de temporizador/contador. Utilice MOVRW(561) para seleccionar las direcciones de memoria de E/S interna de los PV de temporizador/contador.
El contenido de un registro de ndice de una tarea de interrupcin no se puede
predecir hasta que se fijaa. Asegrese de seleccionar un registro utilizando
MOVR(560) en una tarea de interrupcin antes de utilizar el registro.

257

Instrucciones de transferencia de datos

Seccin

3-8

Las modificaciones de contenido de un IR o DR realizadas en una tarea de interrupcin, no afectarn a los contenidos del registro en una tarea cclica.
Ejemplo

Cuando CIO 000000 est en ON en el siguiente ejemplo, MOVR(560) escribe la


direccin de memoria de E/S interna de CIO 0020 en IR0.
Direccin de memoria de E/S interna
14

S: 0020

Direccin de memoria de
E/S interna de CIO 0020
1 4

D: IR0

3-8-15 MOVER PV DE TEMP./CONT. A REGISTRO: MOVRW(561)


Funcin

Coloca la direccin de memoria de E/S interna del PV del temporizador o contador especificado en el registro de ndice especificado. (Utilice MOVR(560) para
seleccionar la direccin de memoria de E/S interna de un canal, bit o indicador
de finalizacin de temporizador o contador, en un registro de ndice).

Smbolo de diagrama de
rels

Variacio-- nes

MOVRW(561)

Variacio-nes

S: Fuente (nmero de TC deseado)

D: Destino (registro de ndice)

Ejecutado cada ciclo para condicin ON

reas de programa
aplicables
Operandos
Especificaciones de
operandos

reas de programa
de bloques
OK

No soportado
No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

D: Destino
El destino debe ser un registro de ndice (IR0 a IR15).
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin
rea de bits auxiliares

---

rea de temporizador

rea DM

T0000 a T4095
(valor actual)
C0000 a C4095
(valor actual)
---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

rea de contador

258

reas de programa
por pasos
OK

MOVRW(561)
@MOVRW(561)

Ejecutado una vez para diferencial


ascendente
Ejecutado una vez para diferencial
descendente
Especificacin de refresco inmediato

-------

--IR0 a IR15

Instrucciones de desplazamiento de datos


Descripcin

Seccin

3-9

MOVRW(561) busca la direccin de memoria de E/S interna para el PV del temporizador o contador especificado en S y escribe esa direccin en D (un registro
de ndice).
Direccin de memoria de E/S interna de S

Slo PV de temporizador/contador
Registro de ndice

MOVRW(561) colocar la direccin de memoria de E/S interna de PV del temporizador o contador en D. Utilice MOVR(560) para especificar la direccin de
memoria de E/S interna del indicador de finalizacin del temporizador o contador.
Indicadores

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Etique
ta
ER
OFF
=

OFF

OFF

Operacin

Precauciones

MOVRW(561) no puede copiar las direcciones de memoria de E/S interna de


canales de reas de datos, bits o indicadores de finalizacin de temporizador/
contador. Utilice MOVR(560) para copiar estas direcciones de memoria de E/S
interna.

Ejemplo

Cuando CIO 000000 est en ON en el siguiente ejemplo, MOVRW(561) escribe


la direccin de memoria de E/S interna para el PV del temporizador T0000 a
IR1.
Direccin de memoria de E/S interna
S:

3-9

Instrucciones de desplazamiento de datos


Esta seccin describe las instrucciones utilizadas para desplazar datos dentro o
entre canales, pero en cantidades y direcciones diferentes.

259

Instrucciones de desplazamiento de datos

Seccin

Instruccin

3-9-1

Nemnico

SHIFT REGISTER

SFT

Cdigo de
funcin
010

REVERSIBLE SHIFT
REGISTER
ASYNCHRONOUS SHIFT
REGISTER
WORD SHIFT

SFTR

084

262

ASFT

017

264

WSFT

016

267

ARITHMETIC SHIFT LEFT

ASL

025

268

DOUBLE SHIFT LEFT

ASLL

570

270

ARITHMETIC SHIFT RIGHT

ASR

026

271

DOUBLE SHIFT RIGHT

ASRL

571

273

ROTATE LEFT

ROL

027

274

DOUBLE ROTATE LEFT

ROLL

572

276

ROTATE LEFT WITHOUT


CARRY

RLNC

574

281

DOUBLE ROTATE LEFT


WITHOUT CARRY

RLNL

576

283

ROTATE RIGHT

ROR

028

278

DOUBLE ROTATE RIGHT

RORL

573

279

ROTATE RIGHT WITHOUT


CARRY

RRNC

575

284

DOUBLE ROTATE RIGHT


WITHOUT CARRY
ONE DIGIT SHIFT LEFT

RRNL

577

286

SLD

074

287

ONE DIGIT SHIFT RIGHT

SRD

075

289

SHIFT N-BIT DATA LEFT

NSFL

578

290

SHIFT N-BIT DATA RIGHT

NSFR

579

292

SHIFT N-BITS LEFT

NASL

580

294

DOUBLE SHIFT N-BITS LEFT

NSLL

582

296

SHIFT N-BITS RIGHT

NASR

581

299

DOUBLE SHIFT N-BITS


RIGHT

NSRL

583

302

Pgina
260

REGISTRO DE DESPLAZAMIENTO: SFT(010)


Crea un registro de desplazamiento.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

SFT(010)

Entrada de datos
Entrada de desplazamiento

St

St: Canal de inicio

Entrada de reset

E:Canal de fin

Variacio-nes

Ejecutado cada ciclo para condicin ON

SFT(010)

Ejecutado una vez para diferencial ascendente

No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
No se admite

Tareas de
interrupcin

reas de
programa por
pasos
OK

Subrutinas
OK

No soportado

OK

Nota St y E deben estar en la misma rea


Especificaciones de
operandos

260

3-9

rea

St

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

Instrucciones de desplazamiento de datos

Seccin

rea
rea de bits de
retencin
rea de bits auxiliares

St
H000 a H511

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

A448 a A959

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15

Cuando la condicin de ejecucin en la entrada de desplazamiento cambia de


OFF a ON, todos los datos de St a E se desplazan un bit hacia la izquierda (desde el bit de la derecha al de la izquierda), y el estado ON/OFF de la entrada de
datos se coloca en el bit de la derecha.

Descripcin

St+1, St+2, ...

St

Perdido

Indicadores

3-9

Estado de la entrada
de datos para cada
entrada de desplazamiento

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si la direccin de IR indirecta para St y E no est en
las reas de datos CIO, AR, HR, o WR.
OFF en todos los dems casos.

Precauciones

Los datos de bit desplazados fuera del registro de desplazamiento se descartan.


Cuando la entrada de reset se pone en ON, se restablecen (es decir, se ponen a
0) todos los bits del registro de desplazamiento desde el canal designado de la
derecha (St) hasta el designado de la izquierda (E). La entrada de reset tiene
prioridad sobre otras entradas.
St debe ser igual o menor que E, pero aunque St est establecido como mayor
que E, no se producir un error y se desplazar un canal de datos en St.
Cuando St y E se designen indirectamente utilizando registros de ndice y las
direcciones actuales de la memoria de E/S no se encuentren en reas de memoria para datos, se producir un error y el indicador de error se pondr en ON.

Ejemplos

Registro de desplazamiento que excede de 16 bits


El siguiente ejemplo muestra un registro de 48 bits utilizando los canales
CIO 0128 a CIO 0130. Se utiliza un pulso de reloj de 1 segundo para que la con-

261

Instrucciones de desplazamiento de datos

Seccin

3-9

dicin de ejecucin producida por CIO 000005 se desplace a un registro de 3


canales entre CIO 012800 y CIO 013015 cada segundo.
Entrada de datos
E: CIO 0130

Entrada de desplazamiento

St+1: CIO 0129

St: CIO 0128

Contenidos de
CIO 000005

Perdido

(reloj de 1s)
Restablecer

3-9-2

REGISTRO DE DESPLAZAMIENTO REVERSIBLE: SFTR(084)


Crea un registro de desplazamiento reversible que desplaza datos hacia la derecha o hacia la izquierda.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

SFTR(084)

Variacio-nes

C: Canal de control

St

St: Canal de inicio

E: Canal de fin

Ejecutado cada ciclo para condicin ON

SFTR(084)

Ejecutado una vez para diferencial ascendente

@SFTR(084)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa por
pasos
OK

No soportado

Subrutinas
OK

OK

C: Canal de control
15 14 13 12
Direccin de desplazamiento
1 (ON): Izquierda
0 (OFF): Derecha
Entrada de datos
Entrada de desplazamiento
Restablecer

Nota St y E deben estar en la misma rea


Especificaciones de
operandos

rea

C
CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

(n = 0 a C)

262

St

rea CIO

A448 a A959

Instrucciones de desplazamiento de datos

Seccin

rea
Direcciones de DM/EM
indirectas en binario

C
@ D00000 a @ D32767

St

3-9

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Cuando la condicin de ejecucin del bit de entrada de desplazamiento (bit 14


de C) cambia a ON, todos los datos de St a E se mueven 1 bit en la direccin de
desplazamiento designada (designada por el bit 12 de C) y el estado ON/OFF
de la entrada de datos se coloca en el bit de la derecha o de la izquierda. Los
datos de bit desplazados fuera del registro de desplazamiento se colocan en el
indicador de acarreo (CY).

Descripcin

Entrada de datos

Indicadores

St

St

Nombre
Indicador de
error
Indicador de
acarreo

Entrada de datos
Direccin de desplazamiento

Etique
Operacin
ta
ER
ON cuando St es mayor que E.
OFF en todos los dems casos.
CY

ON cuando se desplaza 1 a l.
OFF cuando se desplaza 0 a l.
OFF cuando reset se selecciona a 1.

Precauciones

Las operaciones desplazamiento anteriores se aplican cuando el bit de reset


(bit 15 de C) se pone en OFF.
Cuando reset (bit 15 de C) se pone en ON, se restablecen (es decir, se ponen a
0) todos los bits del registro de desplazamiento, de St a E.
Cuando St es mayor que E, se genera un error y el indicador de error se pone en
ON.

Ejemplos

Datos de desplazamiento
Si la entrada de desplazamiento CIO 030014 se pone en ON cuando
CIO 000000 est en ON, y el bit de reset CIO 030015 est en OFF, los canales
CIO 0100 a CIO 0102 se desplazarn un bit en la direccin designada por
CIO 030012 (es decir, 1: derecha) y el contenido del bit de entrada CIO 030013

263

Instrucciones de desplazamiento de datos

Seccin

3-9

se desplazar al bit de la derecha, CIO 010000. El contenido de CIO 010215 se


desplazar al indicador de acarreo (CY).

C
St

C: 0300

Direccin de desplazamiento
Bit de entrada de desplazamiento: 1
Bit de entrada de reset: 0

Entrada de
datos:
CIO 030013

Datos de restablecimiento
Si CIO 030014 est en ON cuando CIO 000000 est en ON, y el bit de reset,
CIO 030015, est en ON, los canales CIO 0100 a CIO 0102 y el indicador de
acarreo se restablecern a OFF.
Datos de control
Datos de restablecimiento
Todos los bits desde St hasta E y el indicador de acarreo se ponen a 0 y no se
pueden recibir otros datos cuando el bit de entrada de reset (bit 15 de C) est en
ON

Desplazamiento de datos a la izquierda (desde el bit de la derecha al de la


izquierda)
Cuando el bit de entrada de desplazamiento (bit 14 de C) est en ON, el contenido del bit de entrada (bit 13 de C) se desplaza al bit 00 del canal de inicio, y cada
bit se desplaza un bit hacia la izquierda. El estado del bit 15 del canal final se
desplaza al indicador de acarreo.
Entrada de datos

Desplazamiento de datos a la derecha (desde el bit de la izquierda al de la


derecha)
Cuando el bit de entrada de desplazamiento (bit 14 de C) est en ON, el contenido del bit de entrada (bit 13 de C) (E/S) se desplaza al bit 15 del canal final, y
cada bit se desplaza un bit hacia la derecha. El estado del bit 00 del canal de
inicio se desplaza al indicador de acarreo.
Entrada de datos

3-9-3

REGISTRO DE DESPLAZAMIENTO ASNCRONO: ASFT(017)

Funcin
Smbolo de diagrama de
rels

264

Crea un registro de desplazamiento asncrono y reversible entre St y E.


ASFT(017)
C

C: Canal de control

St

St: Canal de inicio

E: Canal de fin

Instrucciones de desplazamiento de datos


Variacio-- nes

Variacio-nes

reas de programa
aplicables

Seccin

3-9

Ejecutado cada ciclo para condicin ON

ASFT(017)

Ejecutado una vez para diferencial ascendente

@ASFT(017)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa por
pasos
OK

No soportado

Subrutinas
OK

OK

C: Canal de control

Operandos

15 14 13 12
Direccin de desplazamiento
0: Datos no cero desplazados hacia E
1: Datos no cero desplazados hacia St
Bit de habilitar desplazamiento
0: Desplazamiento inhabilitado
1: Desplazamiento habilitado
Bit de borrar
0: Los datos no se restablecen
1: Todos los datos de St a E se
restablecen

Nota St y E deben estar en la misma rea.


Especificaciones de
operandos

rea

St

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Cuando el bit de habilitar desplazamiento (bit 14 de C) est en ON, todos los


canales de contenido no cero dentro del rango de canales entre St y E se desplazarn un canal en la direccin determinada por el bit de direccin de despla-

265

Instrucciones de desplazamiento de datos

Seccin

3-9

zamiento (bit 13 de C) siempre que el canal de la direccin de desplazamiento


contenga todo ceros. Si ASFT(017) se repite un nmero suficiente de veces,
todos lo canales de todo ceros se reemplazn por canales no cero. Esto har
que todos los datos entre St y E se dividan en datos cero y no cero.

St

Direccin de desplazamiento
...

Convertir

Desplazamiento habilitado
Borrar

Convertir
E

St
Datos no cero
...
Datos cero

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando St es mayor que E.
OFF en todos los dems casos.

Precauciones

Cuando el indicador de borrado (bit 15 de C) se ponga en ON, se restablecern


(es decir, se pondrn a 0) todos los bits del registro de desplazamiento, de St a
E. El indicador de borrado tiene prioridad sobre el bit de habilitar desplazamiento (bit 14 de C).
Cuando St sea mayor que E, se generar un error y el indicador de error se pondr en ON.

Ejemplos

Datos de desplazamiento:
Si el bit de habilitar desplazamiento, CIO 030014, se pone en ON cuando
CIO 000000 est en ON, todos los canales con datos no cero de CIO 0100 a
CIO 0109 se desplazan en la direccin designada por el bit de direccin de desplazamiento, CIO 030013 (p. ej., 1: hacia St) si el canal a la izquierda de los datos no cero contiene todo ceros.

C
St
E

C: 0300
Direccin de desplazamiento
1: Datos no cero desplazados hacia
E
Bit de habilitar desplazamiento: 1
Borrar
Antes de ejecutar ASFT(017)
St:

Los datos no cero


se desplazan hacia St

E:

266

Despus de una ejecucin

Despus de dos ejecuciones

Instrucciones de desplazamiento de datos

3-9-4

Seccin

3-9

DESPLAZAR UN CANAL: WSFT(016)


Desplaza datos entre St y E en unidades de canal.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

WSFT(016)

Variacio-nes

S: Canal fuente

St

St: Canal de inicio

E: Canal de fin

Ejecutado cada ciclo para condicin ON

WSFT(016)

Ejecutado una vez para diferencial ascendente

@WSFT(016)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

OK

Nota St y E deben estar en la misma rea.


Especificaciones de
operandos

rea

St

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
#0000 a #FFFF
(binario)
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

WSFT(016) desplaza datos desde St a E en unidades de canal y los datos desde el canal fuente S se colocan en St. El contenido de E se pierde.

267

Instrucciones de desplazamiento de datos

Seccin

3-9

St

E
Perdido

Indicadores

Nombre

Etique
Operacin
ta
ER
ON cuando St es mayor que E.

Indicador de
error

OFF en todos los dems casos.

Cuando St sea mayor que E, se generar un error y el indicador de error se pondr en ON.

Precauciones

Nota Cuando se desplazan grandes cantidades de datos, el tiempo de ejecucin de


la instruccin es bastante largo. Asegrese de que no se produce un corte en la
alimentacin mientras se ejecuta WSFT(016), ya que la operacin de desplazamiento se detendra a medio camino.
Cuando CIO 000000 est en ON, los datos de CIO 0100 a CIO 0102 se desplazan un canal hacia E. El contenido de CIO 0300 se almacena en CIO 0100 y el
contenido de CIO 0102 se pierde.

Ejemplos

St
E

S: CIO 0300
E: CIO 0100

Perdido

3-9-5

St: CIO 0101

DESPLAZAMIENTO ARITMTICO A IZQUIERDA: ASL(025)

Funcin

Desplaza el contenido del canal un bit hacia la izquierda.

Smbolo de diagrama de
rels

ASL(025)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

ASL(025)

Ejecutado una vez para diferencial ascendente

@ASL(025)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)

268

St: CIO 0102

Instrucciones de desplazamiento de datos

Seccin

rea
Direcciones de DM/EM
indirectas en binario

3-9

Wd
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767

Constantes

*En_00000 a *En_32767
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ASL(025) desplaza el contenido de Wd un bit hacia la izquierda. Coloca 0 en el


bit 00 y el contenido del bit 15 en CY.

15

Indicadores

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado del desplazamiento es 0.

Indicador de
acarreo

CY

Indicador de
negativo

OFF en todos los dems casos.


ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute ASL(025), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd es cero, el indicador
de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 se desplazar un bit a la izquierda.
0 se colocar en CIO 010000 y el contenido de CIO 010115 se desplazar al
indicador de acarreo (CY).

Wd

269

Instrucciones de desplazamiento de datos

3-9-6

Seccin

3-9

DOBLE DESPLAZAMIENTO A IZQUIERDA: ASLL(570)

Funcin

Desplaza el contenido de Wd y Wd+1 un bit hacia la izquierda.

Smbolo de diagrama de
rels

ASLL(570)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

ASLL(570)

Ejecutado una vez para diferencial ascendente

@ASLL(570)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ASLL(570) desplaza el contenido de Wd y Wd +1 un bit hacia la izquierda. 0 se


coloca en el bit de la derecha de Wd y el contenido del bit de la izquierda de Wd y
Wd +1 se desplaza al indicador de acarreo (CY).
Wd+1

270

Wd

Instrucciones de desplazamiento de datos


Indicadores

Seccin

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

3-9

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute ASLL(570), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd +1es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 y CIO 0101 se desplazarn un bit a
la izquierda. 0 se colocar en CIO 010000 y el contenido de CIO 010015 se
desplazar al indicador de acarreo (CY).

Wd

3-9-7

DESPLAZAMIENTO ARITMTICO A DERECHA: ASR(026)

Funcin

Desplaza el contenido del canal un bit hacia la derecha.

Smbolo de diagrama de
rels

ASR(026)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

ASR(026)

Ejecutado una vez para diferencial ascendente

@ASR(026)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

271

Instrucciones de desplazamiento de datos

Seccin

rea
rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-9

Wd

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Indicadores

Precauciones

ASR(026) desplaza el contenido de Wd un bit hacia la derecha. 0 se colocar


en el bit de la izquierda y el contenido del bit de la derecha se desplazar al indicador de acarreo (CY).

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado del desplazamiento es 0.

Indicador de
acarreo

CY

Indicador de
negativo

OFF en todos los dems casos.


ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
OFF

Cuando se ejecute ASR(026), el indicador de error y el de negativo se pondrn


en OFF.
Si, como resultado del desplazamiento, el contenido de Wd es cero, el indicador
de igual se pondr en ON.

272

Instrucciones de desplazamiento de datos

Seccin

3-9

Cuando CIO 000000 est en ON, CIO 0100 se desplazar un bit a la derecha.
0 se colocar en CIO 010015 y el contenido de CIO 010000 se desplazar al
indicador de acarreo (CY).

Ejemplos

Wd

3-9-8

DOBLE DESPLAZAMIENTO A DERECHA: ASRL(571)

Funcin

Desplaza el contenido de Wd y Wd +1 un bit hacia la derecha.

Smbolo de diagrama de
rels

ASRL(571)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

ASRL(571)

Ejecutado una vez para diferencial ascendente

@ASRL(571)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

273

Instrucciones de desplazamiento de datos

Seccin

rea
Registros de ndice

3-9

Wd
---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

ASRL(571) desplaza el contenido de Wd y Wd +1 un bit hacia la derecha (del bit


de la izquierda al de la derecha). 0 se colocar en el bit de la izquierda de Wd
+1 y el contenido del bit de la derecha de Wd se desplazar al indicador de acarreo (CY).

Descripcin

Wd+1

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Precauciones

Wd

Etique
ta
ER
OFF
=

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
OFF

Cuando se ejecute ASRL (571), el indicador de error y el de negativo se pondrn


en OFF.
Si, como resultado del desplazamiento, el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Cuando CIO 000000 est en ON, CIO 0100 y CIO 0101 se desplazarn un bit a
la derecha. 0 se colocar en CIO 010115 y el contenido de CIO 010000 se
desplazar al indicador de acarreo (CY).

Ejemplos

Wd

3-9-9

ROTAR A IZQUIERDA: ROL(027)

Funcin
Smbolo de diagrama de
rels

Desplaza todos los bits de Wd hacia la izquierda, incluyendo el indicador de


acarreo (CY).
ROL(027)
Wd

274

Wd: Canal

Instrucciones de desplazamiento de datos


Variacio-- nes

Variacio-nes

Seccin
Ejecutado cada ciclo para condicin ON

ROL(027)

Ejecutado una vez para diferencial ascendente

@ROL(027)

Ejecutado una vez para diferencial


descendente

No soportado
No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de
programa de
bloques
OK

Especificaciones de
operandos

3-9

reas de
programa de
pasos
OK

Subrutinas

OK

rea

Tareas de
interrupcin
OK

Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ROL(027) desplaza todos los bits de Wd incluyendo el indicador de acarreo


(CY) a la izquierda.

275

Instrucciones de desplazamiento de datos


Indicadores

Seccin

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

3-9

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Cuando se ejecute ROL(027), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd es cero, el indicador
de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd es 1, el indicador de negativo se pondr en ON.

Precauciones

Nota Es posible fijar el contenido del indicador de acarreo a 1 0 justo antes de ejecutar esta instruccin, utilizando las instrucciones (STC(040)) o (CLC(041)) respectivamente.
Cuando CIO 000000 est en ON, CIO 0100 y el indicador de acarreo (CY) se
desplazarn un bit a la izquierda. El contenido de CIO 010015 se desplazar al
indicador de acarreo (CY) y el contenido de ste se desplazar a CIO 010000.

Ejemplos

Wd
Wd: CIO 0100

Instruccin ejecutada una vez

3-9-10

ROTAR DOBLE A IZQUIERDA: ROLL(572)

Funcin

Desplaza todos los bits de Wd y Wd +1 hacia la izquierda, incluyendo el indicador de acarreo (CY).

Smbolo de diagrama de
rels

ROLL(572)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

276

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

ROLL(572)

Ejecutado una vez para diferencial ascendente

@ROLL(572)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

Instrucciones de desplazamiento de datos

Seccin

rea
rea de bits de
retencin
rea de bits auxiliares

3-9

Wd
H000 a H510
A448 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ROLL(572) desplaza todos los bits de Wd y Wd +1 incluyendo el indicador de


acarreo (CY) a la izquierda (desde el bit de la derecha al de la izquierda).
Wd+1

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Wd

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute ROLL(572), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd +1es + 1, el indicador de negativo se pondr en ON.
Nota Es posible seleccionar el contenido del indicador de acarreo a 1 0 justo antes
de ejecutar esta instruccin, utilizando las instrucciones (STC(040)) o
(CLC(041)) respectivamente.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100, CIO 0101 y el indicador de acarreo
(CY) se desplazarn un bit a la izquierda. El contenido de CIO 010015 se des-

277

Instrucciones de desplazamiento de datos

Seccin

3-9

plazar al indicador de acarreo (CY) y el contenido de ste se desplazar a


CIO 010000.

Wd

Wd+1: CIO 0101

Wd: CIO 0100

Instruccin ejecutada una vez

3-9-11

ROTAR A DERECHA: ROR(028)

Funcin

Desplaza todos los bits de Wd hacia la derecha, incluyendo el indicador de acarreo (CY).

Smbolo de diagrama de
rels

ROR(028)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

ROR(028)

Ejecutado una vez para diferencial ascendente

@ROR(028)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

278

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Instrucciones de desplazamiento de datos

Seccin

rea
Registros de ndice

3-9

Wd
---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

ROR(028) desplaza todos los bits de Wd incluyendo el indicador de acarreo


(CY) a la derecha (desde el bit de la izquierda al de la derecha).

Descripcin

Wd

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Cuando se ejecute ROR(028), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd es cero, el indicador
de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd es 1, el indicador de negativo se pondr en ON.

Precauciones

Nota Es posible seleccionar el contenido del indicador de acarreo a 1 0 justo antes


de ejecutar esta instruccin, utilizando las instrucciones (STC(040)) o
(CLC(041)) respectivamente.
Cuando CIO 000000 est en ON, CIO 0100 y el indicador de acarreo (CY) se
desplazarn un bit a la derecha. El contenido de CIO 010000 se desplazar al
indicador de acarreo (CY) y el contenido de ste se desplazar a CIO 010015.

Ejemplos

Wd
Wd: CIO 0100

Instruccin ejecutada una vez

3-9-12

ROTAR DOBLE A DERECHA: RORL(573)

Funcin
Smbolo de diagrama de
rels

Desplaza todos los bits de Wd y Wd +1 hacia la derecha, incluyendo el indicador


de acarreo (CY).
RORL(573)
Wd

Wd: Canal

279

Instrucciones de desplazamiento de datos


Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Seccin

3-9

Ejecutado cada ciclo para condicin ON

RORL(573)

Ejecutado una vez para diferencial ascendente

@RORL(573)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

OK

rea

Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A448 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

RORL(573) desplaza todos los bits de Wd y Wd +1 incluyendo el indicador de


acarreo (CY) a la derecha (desde el bit de la izquierda al de la derecha).
Wd+1

Indicadores

Nombre
Indicador de
error

Etique
ta
ER
OFF

Indicador de
igual

Indicador de
acarreo

CY

Indicador de
negativo

Wd

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.
ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

280

Instrucciones de desplazamiento de datos

Seccin

3-9

Cuando se ejecute RORL(573), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd +1es + 1, el indicador de negativo se pondr en ON.

Precauciones

Nota Es posible seleccionar el contenido del indicador de acarreo a 1 0 justo antes


de ejecutar esta instruccin, utilizando las instrucciones (STC(040)) o
(CLC(041)) respectivamente.
Cuando CIO 000000 est en ON, CIO 0100, CIO 0101 y el indicador de acarreo
(CY) se desplazarn un bit a la derecha. El contenido de CIO 010000 se desplazar al indicador de acarreo (CY) y el contenido de ste se desplazar a
CIO 010115.

Ejemplos

Wd

Wd+1: CIO 0101

Wd: CIO 0100

Instruccin ejecutada una vez

3-9-13

ROTAR A IZQUIERDA SIN ACARREO: RLNC(574)

Funcin

Desplaza todos los bits de Wd hacia la izquierda, sin incluir el indicador de acarreo (CY).

Smbolo de diagrama de
rels

RLNC(574)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

RLNC(574)

Ejecutado una vez para diferencial ascendente

@RLNC(574)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

281

Instrucciones de desplazamiento de datos

Seccin

rea
Direcciones de DM/EM
indirectas en BCD

3-9

Wd
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

RLNC(574) desplaza todos los bits de Wd hacia la izquierda (del bit de la derecha al de la izquierda). El contenido del bit de la izquierda de Wd se desplaza
hacia el bit de la derecha y al indicador de acarreo (CY).
Wd

Indicadores

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute RLNC(574), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd es cero, el indicador
de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 se desplazar un bit a la izquierda
(excluyendo el indicador de acarreo (CY)). El contenido de CIO 010015 se desplazar a CIO 010000.

Wd

Wd: CIO 0100

Instruccin ejecutada una vez


1

282

Instrucciones de desplazamiento de datos

3-9-14

Seccin

3-9

ROTAR DOBLE A IZQUIERDA SIN ACARREO: RLNL(576)

Funcin

Desplaza todos los bits de Wd y Wd +1 hacia la izquierda, sin incluir el indicador


de acarreo (CY).

Smbolo de diagrama de
rels

RLNL(576)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

RLNL(576)

Ejecutado una vez para diferencial ascendente

@RLNL(576)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A448 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

RLNL(576) desplaza todos los bits de Wd y Wd +1 hacia la izquierda (del bit de


la derecha al de la izquierda). El contenido del bit de la izquierda de Wd +1 es
desplazado hacia el bit de la derecha de Wd y al indicador de acarreo (CY).
Wd+1

Wd

283

Instrucciones de desplazamiento de datos


Indicadores

Seccin

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

3-9

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute RLNL(576), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd +1es + 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 y CIO 0101 se desplazarn un bit a
la izquierda (excluyendo el indicador de acarreo (CY)). El contenido de
CIO 010115 se desplazar a CIO 010000.

Wd

Wd+1: CIO 0101

Wd: CIO 0100

Instruccin ejecutada una vez


1

3-9-15

ROTAR A DERECHA SIN ACARREO: RRNC(575)

Funcin

Desplaza todos los bits de Wd hacia la derecha, sin incluir el indicador de acarreo (CY). El contenido del bit de la derecha de Wd se desplaza hacia el bit de la
izquierda y al indicador de acarreo (CY).

Smbolo de diagrama de
rels

RRNC(575)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

284

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

RRNC(575)

Ejecutado una vez para diferencial ascendente

@RRNC(575)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas

OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

Instrucciones de desplazamiento de datos

Seccin

rea
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-9

Wd

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

RRNC(575) desplaza todos los bits de Wd a la derecha (desde el bit de la izquierda al de la derecha), excluyendo el indicador de acarreo (CY).

Wd

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute RRNC(575), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd es cero, el indicador
de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd es 1, el indicador de negativo se pondr en ON.

285

Instrucciones de desplazamiento de datos

Seccin

3-9

Cuando CIO 000000 est en ON, CIO 0100 se desplazar un bit a la derecha
(excluyendo el indicador de acarreo (CY)). El contenido de CIO 010000 se desplazar a CIO 010015.

Ejemplos

Wd

Wd: CIO 0100

Instruccin ejecutada una vez


CY

3-9-16

ROTAR DOBLE A DERECHA SIN ACARREO: RRNL(577)

Funcin

Desplaza todos los bits de Wd y Wd +1 hacia la derecha, sin incluir el indicador


de acarreo (CY). El contenido del bit de la derecha de Wd +1 es desplazado hacia el bit de la izquierda de Wd y al indicador de acarreo (CY).

Smbolo de diagrama de
rels

RRNL(577)
Wd

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

RRNL(577)

Ejecutado una vez para diferencial ascendente

@RRNL(577)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

rea

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

286

Constantes

(n = 0 a C)
---

Registros de datos

---

Instrucciones de desplazamiento de datos

Seccin

rea
Registros de ndice

3-9

Wd
---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

RRNL(577) desplaza todos los bits de Wd y Wd +1 a la derecha (desde el bit de


la izquierda al de la derecha), excluyendo el indicador de acarreo (CY).

Descripcin

Wd+1

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Wd

Etique
ta
ER
OFF
=

Operacin

ON si el resultado del desplazamiento es 0.


OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Cuando se ejecute RRNL(577), el indicador de error se pondr en OFF.


Si, como resultado del desplazamiento, el contenido de Wd y Wd +1 es cero, el
indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de
Wd +1es + 1, el indicador de negativo se pondr en ON.

Precauciones

Nota Es posible seleccionar el contenido del indicador de acarreo a 1 o 0 justo antes


de ejecutar esta instruccin, utilizando las instrucciones del indicador de acarreo (STC(040)) o de borrado (CLC(041)).
Cuando CIO 000000 est en ON, los canales CIO 0100 y CIO 0101 se desplazarn un bit a la derecha (excluyendo el indicador de acarreo (CY)). El contenido de CIO 010000 se desplazar a CIO 010115.

Ejemplos

Wd

Wd+1: CIO 0101

Wd: CIO 0100

Instruccin ejecutada una vez

3-9-17

DESPLAZAR UN DGITO A LA IZQUIERDA: SLD(074)

Funcin
Smbolo de diagrama de
rels

Desplaza los datos un dgito (4 bits) hacia la izquierda.


SLD(074)
St

St: Canal de inicio

E:Canal de fin

287

Instrucciones de desplazamiento de datos


Variacio-- nes

reas de programa
aplicables

Variacio-nes

Seccin
Ejecutado cada ciclo para condicin ON

SLD(074)

Ejecutado una vez para diferencial ascendente

@SLD(074)

3-9

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

OK

Nota St y E deben estar en la misma rea.


Especificaciones de
operandos

rea

St

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

A448 a A959

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SLD(074) desplaza los datos entre St y E un dgito (4 bits) hacia la izquierda. 0


se coloca en el dgito de la derecha (bits 3 a 0 de St), y el contenido del dgito de
la izquierda (bits 15 a 12 de E) se pierde.
E

St

Perdido

Indicadores

Nombre
Indicador de
error

Precauciones

Etique
Operacin
ta
ER
ON cuando St es mayor que E.
OFF en todos los dems casos.

Cuando St sea mayor que E, se generar un error y el indicador de error se pondr en ON.
Nota Cuando se desplazan cantidades de datos grandes, el tiempo de ejecucin de
la instruccin es bastante largo. Asegrese de que no se produce un corte en la

288

Instrucciones de desplazamiento de datos

Seccin

3-9

alimentacin mientras se ejecuta SLD(074), ya que la operacin de desplazamiento se detendra a medio camino.
Cuando CIO 000000 est en ON, los canales CIO 0100 a CIO 0102 se desplazarn un dgito (4 bits) a la izquierda. Se colocar un cero en los bits 0 a 3 del
canal CIO 0100 y el contenido de los bits 12 a 15 de CIO 0102 se perder.

Ejemplos

St
E

E: CIO 0102

St+1: CIO 0101

St: CIO 0100

Perdido

3-9-18

DESPLAZAR UN DGITO A LA DERECHA: SRD(075)


Desplaza los datos un dgito (4 bits) hacia la derecha.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

SRD(075)

Variacio-nes

St

St: Canal de inicio

E:Canal de fin

Ejecutado cada ciclo para condicin ON

SRD(075)

Ejecutado una vez para diferencial ascendente

@SRD(075)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado

OK

Nota St y E deben estar en la misma rea.


Especificaciones de
operandos

rea

St

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

A448 a A959

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

289

Instrucciones de desplazamiento de datos

Seccin

rea
Registros de ndice

St

3-9

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

SRD(075) desplaza los datos entre St y E un dgito (4 bits) hacia la derecha. 0


se coloca en el dgito de la izquierda (bits 3 a 0 de St), y el contenido del dgito de
la derecha (bits 3 a 0 de St) se pierde.

Descripcin

St
Perdido

Indicadores

Nombre

Etique
Operacin
ta
ER
ON cuando St es mayor que E.

Indicador de
error

OFF en todos los dems casos.

Cuando St sea mayor que E, se generar un error y el indicador de error se pondr en ON.
Cuando se ejecute SRD(075), el indicador de igual y el de negativo se pondrn
en OFF.

Precauciones

Nota Cuando se desplazan cantidades de datos grandes, el tiempo de ejecucin de


la instruccin es bastante largo. Asegrese de que no se produce un corte en la
alimentacin mientras se ejecuta SRD(075), ya que la operacin de desplazamiento se detendra a medio camino.
Cuando CIO 000000 est en ON, los canales CIO 0100 a CIO 0102 se desplazarn un dgito (4 bits) a la derecha. Se colocar un cero en los bits 12 a 15 del
canal CIO 0102 y el contenido de los bits 0 a 3 de CIO 0100 se perder.

Ejemplos

St
E

E: CIO 0102

St+1: CIO 0101

St: CIO 0100


Perdido

3-9-19

DESPLAZAR DATO N--BITS A LA IZQUIERDA: NSFL(578)

Funcin

Desplaza el nmero especificado de bits hacia la izquierda.

Smbolo de diagrama de
rels

NSFL(578)
D
C
N

Variacio-- nes

reas de programa
aplicables

290

Variacio-nes

D: Canal de comienzo para desplazamiento


C: Bit de comienzo
N: Longitud de datos de desplazamiento

Ejecutado cada ciclo para condicin ON

NSFL(578)

Ejecutado una vez para diferencial ascendente

@NSFL(578)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado

OK

Instrucciones de desplazamiento de datos


Operandos

Seccin

3-9

C: 0000 a 000F hex. (0 s 15)


N: 0000 a FFFF hex. (0 a 65535)
Nota Todos los canales del registro de desplazamiento deben estar en la misma rea.

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #000F
(binario) o &0 a
&15
DR0 a DR15

#0000 a #FFFF
(binario) o &0 a
&65535

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NSFL(578) desplaza el nmero de bits especificado por la longitud de datos de


desplazamiento (N) desde el bit de comienzo (C) del canal de la derecha, designado por D, un bit a la izquierda (hacia el canal de la izquierda y al bit de la izquierda). 0 se coloca en el bit de comienzo y el contenido del bit de la izquierda
en el rea de desplazamiento, se desplaza al indicador de acarreo (CY).

N--1 bit

Desplaza un bit hacia la izquierda

N--1 bit

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando los datos de C no estn entre 0000 y 000F
hex.
OFF en todos los dems casos.

Indicador de
acarreo

CY

ON si 1 se desplaza al indicador de acarreo (CY).


OFF en todos los dems casos.

291

Instrucciones de desplazamiento de datos

Seccin

3-9

Precauciones

Cuando la longitud de datos de desplazamiento (N) sea 0, el contenido del bit de


comienzo se copiar en el indicador de acarreo (CY), y su contenido no se cambiar.
Slo se cambiarn los bits desplazados al canal de la derecha en el rea de desplazamiento (es decir, los datos del canal de la izquierda).

Ejemplos

Cuando CIO 000000 est en ON, todos los bits desde el bit 3 de comienzo hasta
la longitud de datos de desplazamiento (B hex.) se desplazan un bit hacia la izquierda (desde el bit de la derecha al de la izquierda). 0 se colocar en el bit 3
de CIO 0100. El contenido del bit de la izquierda en el rea de desplazamiento
(bit 13 de CIO 0100) se copia en el indicador de acarreo (CY).

D
C

&3

&11

C: Comienzo por el bit 3

N: 11 bits
D: CIO 0100

D: CIO 0100

3-9-20

DESPLAZAR DATO N--BITS A LA DERECHA: NSFR(579)


Desplaza el nmero especificado de bits hacia la derecha.

Funcin
Smbolo de diagrama de
rels

NSFR(579)
D: Canal de comienzo para desplazamiento

D
C

C: Bit de comienzo

Variacio-- nes

reas de programa
aplicables

Operandos

Variacio-nes

N: Longitud de datos de desplazamiento

Ejecutado cada ciclo para condicin ON

NSFR(579)

Ejecutado una vez para diferencial ascendente

@NSFR(579)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

OK

C: 0000 a 000F hex. (0 s 15)


N: 0000 a FFFF hex. (0 a 65535)
Nota Todos los canales del registro de desplazamiento deben estar en la misma rea.

Especificaciones de
operandos

292

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511
A448 a A959

A000 a A959

Instrucciones de desplazamiento de datos

Seccin

rea
rea de temporizador

D
T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-9

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #000F
(binario) o &0 a
&15
DR0 a DR15

#0000 a #FFFF
(binario) o &0 a
&65535

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NSFR(579) desplaza el nmero de bits especificado por la longitud de datos de


desplazamiento (N) desde el bit de comienzo (C) del canal de la derecha, designado por D, un bit a la derecha (hacia el canal de la derecha y al bit de la derecha). 0 se colocar en el bit de comienzo y el contenido del bit de la derecha del
rea de desplazamiento se desplazar al indicador de acarreo (CY).

N--1 bit

Desplaza un bit hacia la derecha

N--1 bit

Indicadores

Nombre
Indicador de
error
Indicador de
acarreo

Etique
Operacin
ta
ER
ON cuando los datos de C no estn entre 0000 y 000F
hex.
CY

OFF en todos los dems casos.


ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.

Precauciones

Cuando la longitud de datos de desplazamiento (N) sea 0, el contenido del bit de


comienzo se copiar en el indicador de acarreo (CY), y su contenido no se cambiar.
Slo se cambiarn los bits desplazados al canal de la derecha en el rea de desplazamiento (es decir, los datos del canal de la izquierda).

Ejemplos

Cuando CIO 000000 est en ON, todos los bits desde el bit 2 de comienzo hasta
el final de la longitud de datos de desplazamiento (B hex.) se desplazan un bit
hacia la derecha (desde el bit de la izquierda al de la derecha). 0 se desplazar

293

Instrucciones de desplazamiento de datos

Seccin

3-9

al bit 12 de CIO 0100. El contenido del bit de la derecha en el rea de desplazamiento (bit 2 de CIO 0100) se copia en el indicador de acarreo (CY).

&2
&11

C: Comienzo por el bit 2

N: 11 bits

3-9-21

DESPLAZAR N BITS A LA IZQUIERDA: NASL(580)

Funcin

Desplaza los 16 bits especificados de los datos de canal hacia la izquierda, en


funcin del nmero especificado de bits.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

NASL(580)

Variacio-nes

D: Canal de desplazamiento

C: Canal de control

Ejecutado cada ciclo para condicin ON

NASL(580)

Ejecutado una vez para diferencial ascendente

@NASL(580)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas
OK

OK

C: Canal de control
C

15

12 11

8 7

N de bits para desplazar: 00 a 10 hex.

Siempre 0.
Datos desplazados a registro
0 hex.: 0 desplazados
8 hex.: Contenido del bit de la derecha desplazado

Especificaciones de
operandos

294

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

A000 a A959

Instrucciones de desplazamiento de datos

Seccin

rea
rea de contador

D
C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

3-9

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores especificados
exclusivamente

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NASL(580) desplaza D (el canal de desplazamiento) el nmero especificado de


bits binarios (especificados en C) hacia la izquierda (desde el bit de la derecha al
de la izquierda). Se colocarn ceros o el valor del bit de la derecha en el nmero
especificado de bits del canal de desplazamiento comenzando por el bit de la
derecha.

Desplazar n bits

Contenido de a o 0 desplazados
Perdido
N bits

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando el canal de control C (el nmero de bits para
desplazar) no est dentro del rango.

Indicador de
igual

Indicador de
acarreo

CY

Indicador de
negativo

OFF en todos los dems casos.


ON si el resultado del desplazamiento es 0.
OFF en todos los dems casos.
ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Para todos los bits que se desplacen fuera del canal especificado, el contenido
del ltimo bit se desplazar al indicador de acarreo (CY), y se perdern todos los
dems datos.

295

Instrucciones de desplazamiento de datos

Seccin

3-9

Cuando el nmero de bits para desplazar (especificados en C) sea 0, los datos


no se desplazarn. Sin embargo, los indicadores correspondientes se pondrn
en ON y OFF, de acuerdo con los datos del canal especificado.
Cuando el contenido del canal de control est fuera de rango, se producir un
error y el indicador de error se pondr en ON.
Si, como resultado del desplazamiento, el contenido de D es 0000 hex., el indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de D es 1, el indicador de negativo se pondr en ON.
Cuando CIO 000000 est en ON, el contenido de CIO 0100 se desplaza 10 bits
a la izquierda (desde el bit de la derecha al de la izquierda). El nmero de bits
para desplazar se especifica en los bits 0 a 7 del canal CIO 0300 (datos de control). El contenido del bit 0 de CIO 0100 se copia en los bits desde los que se
desplazaron los datos y el contenido del bit de la derecha que se desplaz fuera
del rango se desplaza al indicador de acarreo (CY). Todos los dems datos se
pierden.

Ejemplos

15

12 11

8 7

4 3

N de bits para desplazar: 10 bits (0A


hex.)

Siempre 0.
Datos desplazados a registro
8 hex.: Contenido del bit de la derecha desplazado.
Perdido

Bit de la derecha

N de bits para desplazar: 10 bits


(Se inserta el contenido del bit de
la derecha).

3-9-22

DOBLE DESPLAZAMIENTO N BITS A IZQUIERDA: NSLL(582)

Funcin

Desplaza los 32 bits especificados de los datos de canal hacia la izquierda, en


funcin del nmero especificado de bits.

Smbolo de diagrama de
rels

Variacio-- nes

NSLL(582)

Variacio-nes

D: Canal de desplazamiento

C: Canal de control

Ejecutado cada ciclo para condicin ON

NSLL(582)

Ejecutado una vez para diferencial ascendente

@NSLL(582)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

296

No soportado
No soportado

Instrucciones de desplazamiento de datos


reas de programa
aplicables

Operandos

Seccin

reas de
programa de
bloques
OK

reas de
programa de
pasos
OK

Subrutinas
OK

3-9

Tareas de
interrupcin
OK

C: Canal de control

15

12 11

8 7

N de bits para desplazar: 00 a


20 hex.

Siempre 0.
Datos desplazados a registro
0 hex.: 0 desplazados
8 hex.: Contenido del bit de la derecha desplazado

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H511

A448 a A958

A000 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766

En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores especificados
exclusivamente
DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NASL(580) desplaza D y D+1 (los canales de desplazamiento) el nmero especificado de bits binarios (especificados en C) hacia la izquierda (desde el bit de
la derecha al de la izquierda). Se colocarn ceros o el valor del bit de la derecha

297

Instrucciones de desplazamiento de datos

Seccin

3-9

en el nmero especificado de bits del canal de desplazamiento comenzando


por el bit de la derecha.

Desplazar n bits

Contenido de a o 0 desplazados
Perdido
N bits

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando el canal de control C (el nmero de bits para
desplazar) no est dentro del rango.

Indicador de
igual

Indicador de
acarreo

CY

Indicador de
negativo

OFF en todos los dems casos.


ON si el resultado del desplazamiento es 0.
OFF en todos los dems casos.
ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Para todos los bits que se desplacen fuera del canal especificado, el contenido
del ltimo bit se desplazar al indicador de acarreo (CY), y se perdern todos los
dems datos.
Cuando el nmero de bits para desplazar (especificados en C) sea 0, los datos
no se desplazarn. Sin embargo, los indicadores correspondientes se pondrn
en ON y OFF, de acuerdo con los datos del canal especificado.
Cuando el contenido del canal de control est fuera de rango, se producir un
error y el indicador de error se pondr en ON.
Si, como resultado del desplazamiento, el contenido de D es 0000, el indicador
de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de D, D+1 es 1, el
indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 y CIO 0101 se desplazan 10 bits a
la izquierda (desde el bit de la derecha al de la izquierda). El nmero de bits para
desplazar se especifica en los bits 0 a 7 del canal CIO 0300 (datos de control). El
contenido del bit 0 de CIO 0100 se copia en los bits desde los que se desplaza-

298

Instrucciones de desplazamiento de datos

Seccin

3-9

ron los datos y el contenido del bit de la derecha que se desplaz fuera del rango
se desplaza al indicador de acarreo (CY). Todos los dems datos se pierden.

15

12 11

8 7

4 3

N de bits para desplazar: 10 bits (0A


hex.)

Siempre 0.
Datos desplazados a registro
8 hex.: Contenido del bit
de la derecha desplazado.

Perdido

Bit a de la derecha
0100

0100

N de bits para desplazar: 10 bits


(Se desplaza el contenido del bit
de la derecha)

3-9-23

DESPLAZAMIENTO DE N BITS A DERECHA: NASR(581)

Funcin

Desplaza los 16 bits especificados de los datos de canal hacia la derecha, en


funcin del nmero especificado de bits.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

NASR(581)

Variacio-nes

D: Canal de desplazamiento

C: Canal de control

Ejecutado cada ciclo para condicin ON

NASR(581)

Ejecutado una vez para diferencial ascendente

@NASR(581)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado

OK

299

Instrucciones de desplazamiento de datos


Operandos

Seccin

3-9

C: Canal de control
C

15

12 11

8 7

N de bits para desplazar: 00 a 10 hex.

Siempre 0.
Datos desplazados a registro
0 hex.: 0 desplazados
8 hex.: Contenido del bit de la derecha desplazado

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

A000 a A447
A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores especificados
exclusivamente

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NASR(581) desplaza D (el canal de desplazamiento) el nmero especificado de


bits binarios (especificados en C) hacia la derecha (desde el bit de la izquierda al
de la derecha). Se colocarn ceros o el valor del bit de la derecha en el nmero
especificado de bits del canal de desplazamiento comenzando por el bit de la
derecha.

Contenido de a
o 0 desplazados

Perdido
N bits

300

Instrucciones de desplazamiento de datos


Indicadores

Nombre

Seccin

3-9

Etique
Operacin
ta
ER
ON cuando el canal de control C (el nmero de bits para
desplazar) no est dentro del rango.

Indicador de
error

OFF en todos los dems casos.


ON si el resultado del desplazamiento es 0.

Indicador de
igual

Indicador de
acarreo

CY

Indicador de
negativo

OFF en todos los dems casos.


ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Para todos los bits que se desplacen fuera del canal especificado, el contenido
del ltimo bit se desplazar al indicador de acarreo (CY), y se descartarn todos
los dems datos.
Cuando el nmero de bits para desplazar (especificados en C) sea 0, los datos
no se desplazarn. Sin embargo, los indicadores correspondientes se pondrn
en ON y OFF, de acuerdo con los datos del canal especificado.
Cuando el contenido del canal de control est fuera de rango, se producir un
error y el indicador de error se pondr en ON.
Si, como resultado del desplazamiento, el contenido de D es 0000 hex., el indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de D es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 se desplaza 10 bits a la derecha
(desde el bit de la izquierda al de la derecha). El nmero de bits para desplazar
se especifica en los bits 0 a 7 del canal CIO 0300. El contenido del bit 15 de
CIO 0100 se copia en los bits desde los que se desplazaron los datos y el contenido del bit de la izquierda de los datos que se desplazaron fuera del rango, se
desplaza al indicador de acarreo (CY). Todos los dems datos se pierden.

15

12 11

8 7

4 3

N de bits para desplazar: 10 bits (0A


hex.)

Siempre 0.
Datos desplazados a registro
8 hex.: Contenido del bit de la izquierda desplazado.
Bit de la izquierda

Perdido

N de bits para desplazar: 10 bits


(Se inserta el contenido del bit de la
izquierda).

301

Instrucciones de desplazamiento de datos

3-9-24

Seccin

DOBLE DESPLAZAMIENTO N BITS A LA DERECHA: NSRL(583)

Funcin

Desplaza los 32 bits especificados de los datos de canal hacia la derecha, en


funcin del nmero especificado de bits.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

NSRL(583)

Variacio-nes

D: Canal de desplazamiento

C: Canal de control

Ejecutado cada ciclo para condicin ON

NSRL(583)

Ejecutado una vez para diferencial ascendente

@NSRL(583)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado

Subrutinas

OK

OK

C: Canal de control
C

15

12 11

8 7

N de bits para desplazar: 00 a


20 hex.

Siempre 0.
Datos desplazados a registro
0 hex.: 0 desplazados
8 hex.: Contenido del bit de la derecha desplazado

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H511

A448 a A958

A000 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766

En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

302

3-9

Constantes

(n = 0 a C)
---

Registros de datos

---

Valores especificados
exclusivamente
DR0 a DR15

Instrucciones de desplazamiento de datos

Seccin

rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

3-9

--,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NSRL(583) desplaza D y D+1 (los canales de desplazamiento) el nmero especificado de bits binarios (especificados en C) hacia la derecha (desde el bit de la
izquierda al de la derecha). Se colocarn ceros o el valor del bit de la derecha en
el nmero especificado de bits del canal de desplazamiento comenzando por el
bit de la derecha.

Desplazar n bits

Contenido de a
o 0 desplazados

Indicadores

Nombre
Indicador de
error

Perdido

Etique
Operacin
ta
ER
ON cuando el canal de control C (el nmero de bits para
desplazar) no est dentro del rango.

Indicador de
igual

Indicador de
acarreo

CY

Indicador de
negativo

OFF en todos los dems casos.


ON si el resultado del desplazamiento es 0.
OFF en todos los dems casos.
ON si 1 se desplaza al indicador de acarreo (CY).
OFF en todos los dems casos.
ON si el bit de la izquierda es 1 como resultado del
desplazamiento.
OFF en todos los dems casos.

Precauciones

Para todos los bits que se desplacen fuera del canal especificado, el contenido
del ltimo bit se desplazar al indicador de acarreo (CY), y se perdern todos los
dems datos.
Cuando el nmero de bits para desplazar (especificados en C) sea 0, los datos
no se desplazarn. Sin embargo, los indicadores correspondientes se pondrn
en ON y OFF, de acuerdo con los datos del canal especificado.
Cuando el contenido del canal de control est fuera de rango, se producir un
error y el indicador de error se pondr en ON.
Si, como resultado del desplazamiento, el contenido de D +1 es 00000000 hex.,
el indicador de igual se pondr en ON.
Si, como resultado del desplazamiento, el contenido del bit de la izquierda de D
+1es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 est en ON, CIO 0100 y CIO 0101 se desplazan 10 bits a
la derecha (desde el bit de la izquierda al de la derecha). El nmero de bits para
desplazar se especifica en los bits 0 a 7 del canal CIO 0300 (datos de control). El
contenido del bit 15 de CIO 0100 se copia en los bits desde los que se desplazaron los datos y el contenido del bit de la izquierda de los datos que se desplaza-

303

Instrucciones de desplazamiento de datos

Seccin

3-9

ron fuera del rango, se desplaza al indicador de acarreo (CY). Todos los dems
datos se pierden.

15

12 11

8 7

4 3

N de bits para desplazar: 10 bits (0A


hex.)

Siempre 0.
Datos desplazados a registro
8 hex.: Contenido del bit de la izquierda desplazado.
Bit de la izquierda

Perdido

CY

N de bits para desplazar: 10 bits


(Se inserta el contenido del bit de
la izquierda)

304

Instrucciones Incrementales/Decrementales

Seccin 3-10

3-10 Instrucciones Incrementales/Decrementales


3-10-1

INCREMENTO BINARIO: ++(590)

Funcin

Aumenta en 1 el contenido hexadecimal de 4 dgitos del canal especificado.

Smbolo de diagrama de
rels

++(590)
Wd

Variacio-- nes

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

++(590)

Ejecutado una vez para diferencial ascendente

@++(590)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

rea

Tareas de
interrupcin
OK

Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin ++(590) suma 1 al contenido binario de Wd. El canal especificado


aumentar en 1 cada ciclo siempre que la condicin de ejecucin de ++(590)
sea ON. Cuando se utilice la variacin de diferencial ascendente de esta instruccin (@++(590)), el canal especificado se aumentar nicamente si la condicin de ejecucin ha cambiado de OFF a ON.
Wd

Wd

305

Instrucciones Incrementales/Decrementales

Seccin 3-10

El indicador de igual se pondr en ON si el resultado es 0000, el indicador de


acarreo se pondr en ON cuando un dgito cambie de F a 0 y el indicador de
negativo se pondr en ON cuando el bit 15 de Wd est en ON en el resultado.
Tanto el indicador de igual como el de acarreo se pondrn en ON cuando el contenido de Wd cambie de FFFF a 0000.
Indicadores

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el contenido de Wd es 0000 despus de la


ejecucin.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si un dgito de Wd ha pasado de F a 0 durante la


ejecucin.
OFF en todos los dems casos.
ON si el bit 15 de Wd est en ON despus de la
ejecucin.
OFF en todos los dems casos.

Ejemplos

Operacin de ++(590)
En el ejemplo siguiente, el contenido de D00100 se aumentar en 1 cada ciclo
siempre que CIO 000000 est en ON.

Aumentado cada ciclo siempre


que CIO 000000 est en ON.
Wd: D00100

Wd: D00100

0 0 1 9

0 0 1 A

: Ejecucin de ++(590)

Aumento

Aumento

Aumento

Aumento

Operacin de @++(590)
La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido de D00100 se aumentar en 1 nicamente cuando
CIO 000000 haya pasado de OFF a ON.

Aumentado nicamente para


el diferencial ascendente.

@++

Wd: D00100
0 0 1 9

Wd: D00100
0 0 1 A

: Ejecucin de @++(590)

Aumento

306

Aumento

Instrucciones Incrementales/Decrementales

3-10-2

Seccin 3-10

DOBLE INCREMENTO BINARIO: ++L(591)

Funcin

Aumenta en 1 el contenido hexadecimal de 8 dgitos de los canales especificados.

Smbolo de diagrama de
rels

++L(591)
Wd

Variacio-- nes

Variacio-nes

Wd: Primer canal

Ejecutado cada ciclo para condicin ON

++L(591)

Ejecutado una vez para diferencial ascendente

@++L(591)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

rea

Tareas de
interrupcin
OK

Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C0)

Constantes

---

Registros de datos

---

Registros de ndice

IR0 a IR15

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin ++L(591) suma 1 al contenido hexadecimal de 8 dgitos de Wd+1


y Wd. El contenido de los canales especificados se aumentar en 1 cada ciclo
siempre que la condicin de ejecucin de ++L(591) sea ON. Cuando se utilice la
variacin de diferencial ascendente de esta instruccin (@++L(591)), el contenido del canal especificado se aumentar nicamente si la condicin de ejecucin ha cambiado de OFF a ON.
Wd+1

Wd

Wd+1

Wd

307

Instrucciones Incrementales/Decrementales

Seccin 3-10

El indicador de igual se pondr en ON si el resultado es 0000 0000, el indicador


de acarreo se pondr en ON cuando un dgito cambie de F a 0 y el indicador de
negativo se pondr en ON cuando el bit 15 de Wd+1 est en ON en el resultado.
Tanto el indicador de igual como el de acarreo se pondrn en ON cuando el contenido de Wd+1 y Wd cambie de FFFF FFFF a 0000 0000.
Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0000 0000 despus de la


ejecucin.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
negativo

ON si un dgito de Wd+1 ha pasado de F a 0 durante la


ejecucin.
OFF en todos los dems casos.
ON si el bit 15 de Wd+1 est en ON despus de la
ejecucin.
OFF en todos los dems casos.

Ejemplos

Funcionamiento de ++L(591)
En el ejemplo siguiente, el contenido hexadecimal de 8 dgitos de D00101 y
D00100 se aumentar en 1 cada ciclo siempre que CIO 000000 est en ON.

Wd+1: D00101

Aumentado en cada ciclo


siempre que CIO 000000
est en ON.
Wd: D00100
Wd+1: D00101

Wd: D00100

: Ejecucin de ++L(591)

Aumento

Aumento

Aumento

Aumento

Operacin de @++L(591)
La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido de D00101 y D00100 se aumentar en 1 nicamente cuando CIO 000000 haya pasado de OFF a ON.
@++L
Wd+1: D00101

Aumentado nicamente para el diferencial ascendente.


Wd: D00100
Wd+1: D00101

Wd: D00100

: Ejecucin de @++L(591)

Aumento

3-10-3

DECREMENTO BINARIO: -- --(592)

Funcin
Smbolo de diagrama de
rels

Reduce en 1 el contenido hexadecimal de 4 dgitos del canal especificado.


-- --(592)
Wd

308

Aumento

Wd: Canal

Instrucciones Incrementales/Decrementales
Variacio-- nes

Variacio-nes

Seccin 3-10

Ejecutado cada ciclo para condicin ON

-- --(592)

Ejecutado una vez para diferencial ascendente

@-- --(592)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado

Subrutinas
OK

rea

Tareas de
interrupcin
OK

Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin -- --(592) resta 1 del contenido binario de Wd. El canal especificado se reducir en 1 cada ciclo siempre que la condicin de ejecucin de -- --(592)
sea ON. Cuando se utilice la variacin de diferencial ascendente de esta instruccin (@-- --(592)), el canal especificado se reducir nicamente si la condicin de ejecucin ha cambiado de OFF a ON.

Wd

Wd

El indicador de igual se pondr en ON si el resultado es 0000, el indicador de


acarreo se pondr en ON cuando un dgito cambie de 0 a F y el indicador de
negativo se pondr en ON cuando el bit 15 de Wd est en ON en el resultado.
Tanto el indicador de acarreo como el de negativo se pondrn en ON cuando el
contenido de Wd cambie de 0000 a FFFF.

309

Instrucciones Incrementales/Decrementales
Indicadores

Nombre
Indicador de
error
Indicador de
igual

Seccin 3-10
Etique
ta
ER
OFF
=

Operacin

ON si el contenido de Wd es 0000 despus de la


ejecucin.

Indicador de
acarreo

CY

OFF en todos los dems casos.


ON si un dgito de Wd ha pasado de 0 a F durante la
ejecucin.

Indicador de
negativo

OFF en todos los dems casos.


ON si el bit 15 de Wd est en ON despus de la
ejecucin.
OFF en todos los dems casos.

Operacin de -- --(592)
En el ejemplo siguiente, el contenido de D00100 se reducir en 1 cada ciclo
siempre que CIO 000000 est en ON.

Ejemplos

-- --

Reducido en cada ciclo siempre


que CIO 000000 est en ON.
Wd: D00100

Wd: D00100
--1

: Ejecucin de -- --(592)

Disminucin Disminucin Disminucin Disminucin

Operacin de @-- --(592)


La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido de D00100 se reducir en 1 nicamente cuando
CIO 000000 haya pasado de OFF a ON.
Reducido nicamente para el
diferencial ascendente.

@-- --

Wd: D00100
--1

Wd: D00100

: Ejecucin de @-- --(592)

Disminucin

3-10-4

DOBLE DECREMENTO BINARIO: -- --L(593)

Funcin
Smbolo de diagrama de
rels

Reduce en 1 el contenido hexadecimal de 8 dgitos de los canales especificados.


-- --L(593)
Wd

310

Disminucin

Wd: Primer canal

Instrucciones Incrementales/Decrementales
Variacio-- nes

Variacio-nes

Seccin 3-10

Ejecutado cada ciclo para condicin ON

-- --L(593)

Ejecutado una vez para diferencial ascendente

@-- --L(593)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

rea

Tareas de
interrupcin
OK

Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A448 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

---

Registros de ndice

IR0 a IR15

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin -- --L(593) resta 1 del contenido hexadecimal de 8 dgitos de


Wd+1 y Wd. El contenido de los canales especificados se reducir en 1 cada
ciclo siempre que la condicin de ejecucin de -- --L(593) sea ON. Cuando se
utilice la variacin de diferencial ascendente de esta instruccin (@-- --L(593)),
el contenido de los canales especificados se reducir nicamente si la condicin de ejecucin ha cambiado de OFF a ON.
Wd+1

Wd

Wd+1

Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000, el indicador


de acarreo se pondr en ON cuando un dgito cambie de 0 a F y el indicador de
negativo se pondr en ON cuando el bit 15 de Wd+1 est en ON en el resultado.
Tanto el indicador de acarreo como el de negativo se pondrn en ON cuando el
contenido cambie de 0000 0000 a FFFF FFFF.

311

Instrucciones Incrementales/Decrementales
Indicadores

Nombre
Indicador de
error
Indicador de
igual

Seccin 3-10
Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0000 0000 despus de la


ejecucin.

Indicador de
acarreo

CY

OFF en todos los dems casos.


ON si un dgito de Wd+1 o Wd ha pasado de 0 a F
durante la ejecucin.

Indicador de
negativo

OFF en todos los dems casos.


ON si el bit 15 de Wd+1 est en ON despus de la
ejecucin.
OFF en todos los dems casos.

Operacin de -- --L(593)
En el ejemplo siguiente, el contenido hexadecimal de 8 dgitos de D00101 y
D00100 se reducir en 1 cada ciclo siempre que CIO 000000 est en ON.

Ejemplos

Reducido en cada ciclo siempre


que CIO 000000 est en ON.
Wd+1: D00101

Wd: D00100

Wd+1: D00101

Wd: D00100

--1
: Ejecucin de -- --L(593)

Disminucin

Disminucin

Disminucin Disminucin

Operacin de @-- --L(593)


La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido de D00101 y D00100 se reducir en 1 nicamente cuando
CIO 000000 haya pasado de OFF a ON.
Reducido nicamente para
el diferencial ascendente.
@-- --L

Wd+1: D00101

Wd: D00100

Wd+1: D00101

Wd: D00100

--1
: Ejecucin de @-- --L(593)

Disminucin

3-10-5

Disminucin

INCREMENTO BCD: ++B(594)

Funcin

Aumenta en 1 el contenido BCD de 4 dgitos del canal especificado.

Smbolo de diagrama de
rels

++B(594)
Wd

Variacio-- nes

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

++B(594)

Ejecutado una vez para diferencial ascendente

@++B(594)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

312

No soportado
No soportado

Instrucciones Incrementales/Decrementales
reas de programa
aplicables
Especificaciones de
operandos

Seccin 3-10

reas de programa
de bloques
OK

reas de programa
de pasos
OK

Subrutinas
OK

rea

Tareas de
interrupcin
OK

Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin ++B(594) suma 1 al contenido BCD de Wd. El canal especificado


se aumentar en 1 cada ciclo siempre que la condicin de ejecucin de
++B(594) sea ON. Cuando se utilice la variacin de diferencial ascendente de
esta instruccin (@++B(594)), el canal especificado se aumentar nicamente
si la condicin de ejecucin ha cambiado de OFF a ON.
Wd

Wd

El indicador de igual se pondr en ON si el resultado es 0000 y el indicador de


acarreo se pondr en ON cuando un dgito cambie de 9 a 0.
Tanto el indicador de igual como el de acarreo se pondrn en ON cuando el contenido de Wd cambie de 9999 a 0000.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el contenido de Wd no es BCD.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
acarreo

CY

ON si el contenido de Wd es 0000 despus de la


ejecucin.
OFF en todos los dems casos.
ON si un dgito de Wd ha pasado de 0 a 9 durante la
ejecucin.
OFF en todos los dems casos.

Precauciones

El contenido de Wd debe ser BCD. Si no es BCD, se producir un error y el indicador de error se pondr en ON.

313

Instrucciones Incrementales/Decrementales
Ejemplos

Seccin 3-10

Operacin de ++B(594)
En el ejemplo siguiente, el contenido BCD de D00100 aumentar en 1 cada ciclo siempre que CIO 000000 est en ON.
Aumentar en cada ciclo siempre
que CIO 000000 est en ON.
Wd: D00100

Wd: D00100

: Ejecucin de ++B(594)

Aumento

Aumento

Aumento

Aumento

Operacin de @++B(594)
La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido de D00100 se aumentar en 1 nicamente cuando
CIO 000000 haya pasado de OFF a ON.
Aumentado nicamente para
el diferencial ascendente.

@++B

Wd: D00100

Wd: D00100

: Ejecucin de @++B(594)

Aumento

3-10-6

Aumento

DOBLE INCREMENTO BCD: ++BL(595)

Funcin

Aumenta en 1 el contenido BCD de 8 dgitos de los canales especificados.

Smbolo de diagrama de
rels

++BL(595)
Wd

Variacio-- nes

Variacio-nes

Wd: Primer canal

Ejecutado cada ciclo para condicin ON

++BL(595)

Ejecutado una vez para diferencial ascendente

@++BL(595)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

314

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A448 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

Tareas de
interrupcin
OK

Instrucciones Incrementales/Decrementales

Seccin 3-10

rea
rea EM sin banco

E00000 a E32766

Wd

rea EM con banco

En_00000 a En_32766
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin ++BL(595) suma 1 al contenido BCD de 8 dgitos de Wd+1 y Wd.


El contenido de los canales especificados se aumentar en 1 cada ciclo siempre que la condicin de ejecucin de ++BL(595) sea ON. Cuando se utilice la
variacin de diferencial ascendente de esta instruccin (@++BL(595)), el contenido del canal especificado se aumentar nicamente si la condicin de ejecucin ha cambiado de OFF a ON.

Wd+1

Wd

Wd+1

Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000 y el indicador


de acarreo se pondr en ON cuando un dgito cambie de 9 a 0.
Tanto el indicador de igual como el de acarreo se pondrn en ON cuando el contenido de Wd+1 y Wd cambie de 9999 9999 a 0000 0000.
Indicadores

Nombre

Etique
ta

Indicador de
error

ER

Indicador de
igual

Indicador de
acarreo

CY

Operacin
ON si el contenido de Wd+1 no es BCD.
OFF en todos los dems casos.
ON si el resultado es 0000 0000 despus de la
ejecucin.
OFF en todos los dems casos.
ON si un dgito de Wd+1 o Wd ha pasado de 9 a 0
durante la ejecucin.
OFF en todos los dems casos.

Precauciones

El contenido de Wd+1 y Wd debe ser BCD. Si no es BCD, se producir un error y


el indicador de error se pondr en ON.

315

Instrucciones Incrementales/Decrementales
Ejemplos

Seccin 3-10

Operacin de ++BL(595)
En el ejemplo siguiente, el contenido hexadecimal de 8 dgitos de D00101 y
D00100 se aumentar en 1 cada ciclo siempre que CIO 000000 est en ON.
Aumentar en cada ciclo siempre
que CIO 000000 est en ON.
Wd+1: D00101 Wd: D00100

Wd+1: D00101 Wd: D00100

: Ejecucin de ++BL(595)

Aumento

Aumento

Aumento

Aumento

Operacin de @++BL(595)
La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido BCD de D00101 y D00100 se aumentar en 1 nicamente
cuando CIO 000000 haya pasado de OFF a ON.
Aumentado nicamente para
el diferencial ascendente.

@++BL

Wd+1: D00101 Wd: D00100

Wd+1: D00101 Wd: D00100

: Ejecucin de @++BL(595)

Aumento

3-10-7

Aumento

DECREMENTO BCD: -- --B(596)

Funcin

Reduce en 1 el contenido BCD de 4 dgitos del canal especificado.

Smbolo de diagrama de
rels

-- --B(596)
Wd

Variacio-- nes

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

-- --B(596)

Ejecutado una vez para diferencial ascendente

@-- --B(596)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

316

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK
Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

Tareas de
interrupcin
OK

Instrucciones Incrementales/Decrementales

Seccin 3-10

rea
rea EM sin banco

E00000 a E32767

Wd

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin -- --B(596) resta 1 del contenido BCD de Wd. El canal especificado se reducir en 1 cada ciclo siempre que la condicin de ejecucin de
-- --B(596) sea ON. Cuando se utilice la variacin de diferencial ascendente de
esta instruccin (@-- --(596)), el canal especificado se reducir nicamente si la
condicin de ejecucin ha cambiado de OFF a ON.
Wd

--1

Wd

El indicador de igual se pondr en ON si el resultado es 0000 y el indicador de


acarreo se pondr en ON cuando un dgito cambie de 0 a 9.
Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
Operacin
ta
ER
ON si el contenido de Wd no es BCD.
OFF en todos los dems casos.
=

ON si el contenido de Wd es 0000 despus de la


ejecucin.
OFF en todos los dems casos.

Indicador de
acarreo

CY

ON si un dgito de Wd ha pasado de 0 a 9 durante la


ejecucin.
OFF en todos los dems casos.

Precauciones

El contenido de Wd debe ser BCD. Si no es BCD, se producir un error y el indicador de error se pondr en ON.

317

Instrucciones Incrementales/Decrementales
Ejemplos

Seccin 3-10

Operacin de -- --B(596)
En el ejemplo siguiente, el contenido BCD de D00100 se reducir en 1 cada ciclo siempre que CIO 000000 est en ON.
Reducido en cada ciclo siempre
que CIO 000000 est en ON.
Wd: D00100

Wd: D00100

--1

: Ejecucin de -- --B(596)

Disminucin

Disminucin

Disminucin Disminucin

Operacin de @-- --B(596)


La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido BCD de D00100 se reducir en 1 nicamente cuando
CIO 000000 haya pasado de OFF a ON.
Reducido nicamente para
el diferencial ascendente.

@-- --B

Wd: D00100

Wd: D00100

--1

: Ejecucin de @-- --B(596)

Disminucin

3-10-8

Disminucin

DOBLE DECREMENTO BCD: -- --BL(597)

Funcin

Reduce el contenido BCD de 8 dgitos de los canales especificados en 1.

Smbolo de diagrama de
rels

-- --BL(597)
Wd

Variacio-- nes

Variacio-nes

Wd: Primer canal

Ejecutado cada ciclo para condicin ON

-- --BL(597)

Ejecutado una vez para diferencial ascendente

@-- --BL(597)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

318

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK
Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A448 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

Tareas de
interrupcin
OK

Instrucciones Incrementales/Decrementales

Seccin 3-10

rea

Wd

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La instruccin -- --BL(597) resta 1 del contenido BCD de 8 dgitos de Wd+1 y


Wd. El contenido de los canales especificados se reducir en 1 cada ciclo siempre que la condicin de ejecucin de -- --BL(597) sea ON. Cuando se utilice la
variacin de diferencial ascendente de esta instruccin (@-- --BL(597)), el contenido de los canales especificados se reducir nicamente si la condicin de
ejecucin ha cambiado de OFF a ON.

Wd+1

Wd

Wd+1

Wd

El indicador de igual se pondr en ON si el resultado es 0000 0000 y el indicador


de acarreo se pondr en ON cuando un dgito cambie de 0 a 9.
Indicadores

Nombre

Etique
ta

Indicador de
error

ER

Indicador de
igual

Operacin
ON si el contenido de Wd+1 no es BCD.
OFF en todos los dems casos.
ON si el resultado es 0000 0000 despus de la
ejecucin.
OFF en todos los dems casos.

Indicador de
acarreo

CY

ON si un dgito de Wd+1 o Wd ha pasado de 0 a 9


durante la ejecucin.
OFF en todos los dems casos.

Precauciones

El contenido de Wd+1 y Wd debe ser BCD. Si no es BCD, se producir un error y


el indicador de error se pondr en ON.

319

Instrucciones Incrementales/Decrementales
Ejemplos

Seccin 3-10

Operacin de -- --BL(597)
En el ejemplo siguiente, el contenido BCD de 8 dgitos de D00101 y D00100 se
reducir en 1 cada ciclo siempre que CIO 000000 est en ON.
Se reducir en cada ciclo siempre
que CIO 000000 est en ON.
Wd+1: D00101 Wd: D00100

Wd+1: D00101 Wd: D00100

--1
: Ejecucin de -- --BL(597)

Disminucin

Disminucin

Disminucin Disminucin

Operacin de @-- --BL(597)


La variacin de diferencial ascendente se utiliza en el ejemplo siguiente, de modo que el contenido BCD de D00101 y D00100 se reducir en 1 nicamente
cuando CIO 000000 haya pasado de OFF a ON.
Reducido nicamente para el
diferencial ascendente.
@-- --BL

Wd+1: D00101 Wd: D00100

Wd+1: D00101 Wd: D00100

--1

: Ejecucin de @-- --BL(597)

Disminucin

320

Disminucin

Instrucciones matemticas de smbolos

Seccin 3-11

3-11 Instrucciones matemticas de smbolos


Esta seccin describe las instrucciones matemticas de smbolos que realizan
operaciones aritmticas con datos binarios o BCD.
Instruccin

Mnemnico

Cdigo de
funcin

Pgina

SIGNED BINARY ADD


WITHOUT CARRY

400

322

DOUBLE SIGNED BINARY


ADD WITHOUT CARRY

+L

401

323

SIGNED BINARY ADD WITH


CARRY

+C

402

325

DOUBLE SIGNED BINARY


ADD WITH CARRY

+CL

403

327

BCD ADD WITHOUT CARRY

+B

404

329

DOUBLE BCD ADD


WITHOUT CARRY

+BL

405

331

BCD ADD WITH CARRY

+BC

406

332

DOUBLE BCD ADD WITH


CARRY

+BCL

407

334

SIGNED BINARY SUBTRACT


WITHOUT CARRY

--

410

336

DOUBLE SIGNED BINARY


SUBTRACT WITHOUT
CARRY

--L

411

338

SIGNED BINARY SUBTRACT


WITH CARRY

--C

412

342

DOUBLE SIGNED BINARY


SUBTRACT WITH CARRY

--CL

413

344

BCD SUBTRACT WITHOUT


CARRY

--B

414

346

DOUBLE BCD SUBTRACT


WITHOUT CARRY

--BL

415

347

BCD SUBTRACT WITH


CARRY

--BC

416

351

DOUBLE BCD SUBTRACT


WITH CARRY

--BCL

417

352

SIGNED BINARY MULTIPLY

420

354

DOUBLE SIGNED BINARY


MULTIPLY

*L

421

356

UNSIGNED BINARY
MULTIPLY

*U

422

357

DOUBLE UNSIGNED BINARY


MULTIPLY

*UL

423

359

BCD MULTIPLY

*B

424

360

DOUBLE BCD MULTIPLY

*BL

425

362

SIGNED BINARY DIVIDE

430

364

DOUBLE SIGNED BINARY


DIVIDE

/L

431

365

UNSIGNED BINARY DIVIDE

/U

432

367

DOUBLE UNSIGNED BINARY


DIVIDE

/UL

433

368

BCD DIVIDE

/B

434

370

DOUBLE BCD DIVIDE

/BL

435

372

321

Instrucciones matemticas de smbolos

3-11-1

Seccin 3-11

SUMA BINARIA CON SIGNO SIN ACARREO: +(400)

Funcin

Suma datos y/o constantes hexadecimales de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

+(400)

Variacio-nes

Au

Au: Canal de sumando

Ad

Ad: Canal de sumando

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

+(400)

Ejecutado una vez para diferencial ascendente

@+(400)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Au

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

OK
Ad

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

Registros de datos

(binario)
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

322

+(400) suma los valores binarios en Au y Ad y enva el resultado a R.

Instrucciones matemticas de smbolos

CY se pondr
en ON cuando
exista un acarreo.

Indicadores

Seccin 3-11
Au

(Binario con signo)

Ad

(Binario con signo)

CY

(Binario con signo)

Nombre
Indicador de
error
Indicador de
igual

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
overflow

OF

ON cuando la suma origina un acarreo.


OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
positivos est dentro del intervalo de 8000 a FFFF hex.
OFF en todos los dems casos.

Indicador de
underflow

UF

Indicador de
negativo

ON cuando el resultado de sumar dos nmeros


negativos est dentro del intervalo 0000 a 7FFF hex.
OFF en todos los dems casos.

Precauciones

ON cuando el bit de la izquierda del resultado es 1.


OFF en todos los dems casos.

Cuando se ejecute +(400), el indicador de error se pondr en OFF.


Si, como resultado de la suma, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Cuando el resultado de sumar dos nmeros positivos es negativo (en el intervalo de 8000 a FFFF hex.), el indicador de overflow se pondr en ON.
Cuando el resultado de sumar dos nmeros negativos es positivo (dentro del
intervalo 0000 a 7FFF hex.), el indicador de underflow se pondr en ON.
Si, como resultado de la suma, el contenido del bit de la izquierda de R es 1, el
indicador de negativo se pondr en ON.
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 y D00110
se suman como valores binarios con signo de cuatro dgitos y el resultado se
enva a D00120.

Ejemplos

3-11-2

DOBLE SUMA BINARIA CON SIGNO SIN ACARREO: +L(401)

Funcin

Suma datos y/o constantes hexadecimales de 8 dgitos (dos canales).

Smbolo de diagrama de
rels

+L(401)
Au

Au: Primer canal de sumando

Ad

Ad: Primer canal de sumando

R: Primer canal de resultado

323

Instrucciones matemticas de smbolos


Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Seccin 3-11
Ejecutado cada ciclo para condicin ON

+L(401)

Ejecutado una vez para diferencial ascendente

@+L(401)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Au

OK

Ad

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

Registros de datos

(binario)
---

Registros de ndice

IR0 a IR15

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+L(401) suma los valores binarios en Au, Au+1, Ad y Ad+1 y enva el resultado a
R.

CY se pondr
en ON cuando
exista un acarreo.

324

Au+1

Au

(Binario con signo)

Ad+1

Ad

(Binario con signo)

CY

R+1

(Binario con signo)

Instrucciones matemticas de smbolos


Indicadores

Nombre
Indicador de
error
Indicador de
igual

Seccin 3-11
Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

ON cuando la suma origina un acarreo.


OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
positivos est dentro del intervalo de 80000000 a
FFFFFFFF hex.
OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
negativos est dentro del intervalo 00000000 a
7FFFFFFF hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute +L(401), el indicador de error se pondr en OFF.


Si, como resultado de la suma, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Cuando el resultado de sumar dos nmeros positivos es negativo (dentro del
intervalo de 80000000 a FFFFFFFF hex.), el indicador de overflow se pondr en
ON.
Cuando el resultado de sumar dos nmeros negativos es positivo (dentro del
intervalo 00000000 a 7FFFFFFF hex.), el indicador de underflow se pondr en
ON.
Si, como resultado de la suma, el contenido del bit de la izquierda de R+1 es 1, el
indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON, D00100, D00101, D00110 y D00111 y se


suman como valores binarios con signo de 8 dgitos y el resultado se enva a
D00120 y D00121.

3-11-3

SUMA BINARIA CON SIGNO CON ACARREO: +C(402)

Funcin

Suma datos y/o constantes hexadecimales de 4 dgitos (un canal) con el indicador de acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

+C(402)

Variacio-nes

Au

Au: Canal de sumando

Ad

Ad: Canal de sumando

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

+C(402)

Ejecutado una vez para diferencial ascendente

@+C(402)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.
No soportado.

325

Instrucciones matemticas de smbolos


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-11

reas de
programa de
bloques
OK

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Au

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Tareas de
interrupcin
OK

Ad

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+C(402) suma los valores binarios en Au, Ad y CY y enva el resultado a R.


Au

(Binario con signo)

Ad

(Binario con signo)

CY

+
CY se pondr
en ON cuando
exista un acarreo.

326

CY

(Binario con signo)

Instrucciones matemticas de smbolos


Indicadores

Nombre
Indicador de
error
Indicador de
igual

Seccin 3-11
Etique
ta
ER
OFF
=

Operacin

ON si el resultado de la suma es 0.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

ON cuando la suma origina un acarreo.


OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
positivos y CY est dentro del intervalo de 8000 a FFFF
hex.
OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
negativos y CY est dentro del intervalo 0000 a 7FFF
hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Cuando se ejecute +C(402), el indicador de error se pondr en OFF.


Si, como resultado de la suma, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Si el resultado de sumar dos nmeros positivos y CY es negativo (dentro del
intervalo 8000 a FFFF hex.), el intervalo de overflow se pondr en ON.
Si el resultado de sumar dos nmeros negativos y CY es positivo (dentro del
intervalo 0000 a 7FFF hex.), el indicador de underflow se pondr en ON.
Si, como resultado de la suma, el contenido del bit de la izquierda de R es 1, el
indicador de negativo se pondr en ON.

Precauciones

Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).
Cuando CIO 000000 se pone en ON, D00100, D00110 y CY se suman como
valores binarios con signo de cuatro dgitos y el resultado se enva a D00220.

Ejemplos

3-11-4

DOBLE SUMA BINARIA CON SIGNO CON ACARREO: +CL(403)

Funcin

Suma datos y/o constantes hexadecimales de 8 dgitos (dos canales) con el indicador de acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

+CL(403)

Variacio-nes

Au

Au: Primer canal de sumando

Ad

Ad: Primer canal de sumando

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

+CL(403)

Ejecutado una vez para diferencial ascendente

@+CL(403)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.
No soportado.

327

Instrucciones matemticas de smbolos


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-11

reas de
programa de
bloques
OK

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Au

Tareas de
interrupcin
OK

Ad

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+CL(403) suma los valores binarios de Au y Au+1, Ad y Ad+1, y CY y enva el


resultado a R.
Au+1

Au

(Binario con signo)

Ad+1

Ad

(Binario con signo)

CY

+
CY se pondr
en ON cuando
exista un acarreo.

328

CY

R+1

(Binario con signo)

Instrucciones matemticas de smbolos


Indicadores

Nombre
Indicador de
error
Indicador de
igual

Seccin 3-11
Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

ON cuando la suma origina un acarreo.


OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
positivos y CY est dentro del intervalo de 80000000 a
FFFFFFFF hex.
OFF en todos los dems casos.
ON cuando el resultado de sumar dos nmeros
negativos y CY est dentro del intervalo 00000000 a
7FFFFFFF hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Cuando se ejecute +CL(403), el indicador de error se pondr en OFF.


Si, como resultado de la suma, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Si el resultado de sumar dos nmeros positivos y CY es negativo (dentro del
intervalo de 80000000 a FFFFFFFF hex.), el indicador de overflow se pondr en
ON.
Si el resultado de sumar dos nmeros negativos y CY es positivo (dentro del
intervalo 00000000 a 7FFFFFFF hex.), el indicador de underflow se pondr en
ON.
Si, como resultado de la suma, el contenido del bit de la izquierda de R+1 es 1, el
indicador de negativo se pondr en ON.

Precauciones

Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).
Cuando CIO 000000 se pone en ON, D00201, D00200, D00211, D00210 y CY
se suman como valores binarios con signo de 8 dgitos y el resultado se enva a
D00221 y D00220.

Ejemplos

3-11-5

SUMA BCD CON SIGNO CON ACARREO: +B(404)

Funcin

Suma datos y/o constantes BCD de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

+B(404)

Variacio-nes

Au

Au: Canal de sumando

Ad

Ad: Canal de sumando

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

+B(404)

Ejecutado una vez para diferencial ascendente

@+B(404)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.
No soportado.

329

Instrucciones matemticas de smbolos


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-11

reas de
programa de
bloques
OK

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Au

Ad

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
0000 a 9999

Constantes

---

(BCD)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+B(404) suma los valores BCD en Au y Ad y enva el resultado a R.


Au

CY se pondr
en ON cuando
exista un acarreo.

Indicadores

Nombre
Indicador de
error

(BCD)

Ad

(BCD)

CY

(BCD)

Etique
ta
ER

Operacin
ON cuando Au no es BCD.
ON cuando Ad no es BCD.
OFF en todos los dems casos.

Precauciones

330

Indicador de
igual

Indicador de
acarreo

CY

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando la suma origina un acarreo.
OFF en todos los dems casos.

Si Au o Ad no es BCD, se generar un error y el indicador de error se pondr en


ON.

Instrucciones matemticas de smbolos

Seccin 3-11

Si, como resultado de la suma, el contenido de R es 0000 hex., el indicador de


igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 y D00110
se suman como valores BCD de 4 dgitos y el resultado se enva a D00120.

Ejemplos

3-11-6

DOBLE SUMA BCD CON SIGNO CON ACARREO: +BL(405)

Funcin

Suma datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

+BL(405)

Variacio-nes

Au

Au: Primer canal de sumando

Ad

Ad: Primer canal de sumando

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

+BL(405)

Ejecutado una vez para diferencial ascendente

@+BL(405)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Au

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

No soportado.

OK
Ad

A000 a A958

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #99999999

---

(BCD)
Registros de datos

---

331

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Registros de ndice

Au

Ad

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+BL(405) suma los valores BCD en Au, Au+1, Ad y Ad+1 y enva el resultado a
R, R+1.

CY se pondr
en ON cuando
exista un acarreo.

Indicadores

Nombre

Au +1

Au

(BCD)

Ad+1

Ad

(BCD)

CY

R+1

(BCD)

Etique
ta

Indicador de
error

ER

Indicador de
igual

Indicador de
acarreo

CY

Operacin
ON cuando Au, Au +1 no es BCD.
ON cuando Ad, Ad +1 no es BCD.
OFF en todos los dems casos.

Precauciones

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando la suma origina un acarreo.
OFF en todos los dems casos.

Si Au, Au +1 o Ad, Ad +1 no son BCD, se generar un error y el indicador de error


se pondr en ON.
Si, como resultado de la suma, el contenido de R, R +1 es 00000000 hex., el
indicador de igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00101, D00100,
D00111 y D00110 se suman como valores BCD de 8 dgitos y el resultado se
enva a D00121 y D00120.

Ejemplos

3-11-7

SUMA BCD CON ACARREO: +BC(406)

Funcin
Smbolo de diagrama de
rels

332

Suma datos y/o constantes BCD de 4 dgitos (un canal) con el indicador de acarreo (CY).
+BC(406)
Au

Au: Canal de sumando

Ad

Ad: Canal de sumando

R: Canal de resultado

Instrucciones matemticas de smbolos


Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Seccin 3-11
Ejecutado cada ciclo para condicin ON

+BC(406)

Ejecutado una vez para diferencial ascendente

@+BC(406)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Au

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

OK

Ad

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a 9999

Constantes

---

(BCD)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+BC(406) suma los valores BCD en Au, Ad y CY y enva el resultado a R.

Au

(BCD)

Ad

(BCD)

CY

+
CY se pondr
en ON cuando
exista un acarreo.

CY

(BCD)

333

Instrucciones matemticas de smbolos


Indicadores

Seccin 3-11

Nombre

Etique
Operacin
ta
ER
ON cuando Au no es BCD.

Indicador de
error

ON cuando Ad no es BCD.
OFF en todos los dems casos.

Indicador de
igual

ON si el resultado es 0.

Indicador de
acarreo

CY

OFF en todos los dems casos.


ON cuando la suma origina un acarreo.
OFF en todos los dems casos.

Si Au o Ad no es BCD, se generar un error y el indicador de error se pondr en


ON.
Si, como resultado de la suma, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.

Precauciones

Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100, D00110 y
CY se suman como valores BCD de 4 dgitos y el resultado se enva a D00120.

Ejemplos

3-11-8

DOBLE SUMA BCD CON ACARREO: +BCL(407)

Funcin

Suma datos y/o constantes BCD de 8 dgitos (dos canales) con el indicador de
acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

334

+BCL(407)

Variacio-nes

Au

Au: Primer canal de sumando

Ad

Ad: Primer canal de sumando

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

+BCL(407)

Ejecutado una vez para diferencial ascendente

@+BCL(407)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Au

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

OK
Ad

A448 a A958

Instrucciones matemticas de smbolos

Seccin 3-11

rea DM

rea

Au
D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Ad

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #99999999

Registros de datos

(BCD)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+BCL(407) suma los valores BCD en Au, Au+1, Ad, Ad+1 y CY, y enva el resultado a R, R+1.
Au +1

Au

(BCD)

Ad+1

Ad

(BCD)

CY

+
CY se pondr
en ON cuando
exista un acarreo.

Indicadores

CY

Nombre
Indicador de
error

R+1

(BCD)

Etique
Operacin
ta
ER
ON cuando Au, Au +1 no es BCD.
ON cuando Ad, Ad +1 no es BCD.
OFF en todos los dems casos.

Precauciones

Indicador de
igual

Indicador de
acarreo

CY

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando la suma origina un acarreo.
OFF en todos los dems casos.

Si Au, Au +1 o Ad, Ad +1 no son BCD, se generar un error y el indicador de error


se pondr en ON.
Si, como resultado de la suma, el contenido de R, R +1 es 00000000 hex., el
indicador de igual se pondr en ON.
Si la suma origina un acarreo, el indicador de acarreo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).

335

Instrucciones matemticas de smbolos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00101, D00100,


D00111, D00110 y CY se suman como valores BCD de 8 dgitos y el resultado se
enva a D00121 y D00120.

Ejemplos

3-11-9

Seccin 3-11

RESTA BINARIA CON SIGNO SIN ACARREO: --(410)

Funcin

Resta datos y/o constantes hexadecimales de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

--(410)

Variacio-nes

Mi

Mi: Canal de minuendo

Su

Su: Canal de sustraendo

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

--(410)

Ejecutado una vez para diferencial ascendente

@--(410)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Mi

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D0000 a D4095

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

No soportado.

OK
Su

A000 a A959

A448 a A959

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

Registros de datos

336

DR0 a DR15

---

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Mi

Su

--,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

--(400) resta los valores binarios en Su de Mi y enva el resultado a R. Cuando el


resultado es negativo, se enva a R como complemento a 2. Consulte
3-11-10DOUBLE SIGNED BINARY SUBTRACT WITHOUT CARRY: --L(411)
para un ejemplo de tratar complementos a 2).

CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

Mi

(Binario con signo)

--

Su

(Binario con signo)

CY

(Binario con signo)

Nombre
Indicador de
error
Indicador de
igual

Precauciones

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

ON cuando la resta origina un acarreo negativo.


OFF en todos los dems casos.
ON cuando el resultado de restar un nmero negativo
de uno positivo est dentro del intervalo de 8000 a
FFFF hex.
OFF en todos los dems casos.
ON cuando el resultado de restar un nmero negativo
de uno positivo est dentro del intervalo de 0000 a 7FFF
hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Cuando se ejecute --(410), el indicador de error se pondr en OFF.


Si, como resultado de la resta, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la resta origina un acarreo negativo, el indicador de acarreo se pondr en ON.
Cuando el resultado de restar un nmero negativo de uno positivo es negativo
(dentro del intervalo de 8000 a FFFF hex.), el indicador de overflow se pondr
en ON.
Cuando el resultado de restar un nmero positivo de uno negativo es positivo
(dentro del intervalo de 0000 a 7FFF hex.), el indicador de underflow se pondr
en ON.
Si, como resultado de la resta, el contenido del bit de la izquierda de R es 1, el
indicador de negativo se pondr en ON.

337

Instrucciones matemticas de smbolos


Ejemplos

Seccin 3-11

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00110 se restar


de D00100 como valores binarios con signo de cuatro dgitos y el resultado se
enva a D00120.

--

3-11-10 DOBLE RESTA BINARIA CON SIGNO SIN ACARREO: --L(411)


Funcin

Resta datos y/o constantes hexadecimales de 8 dgitos (dos canales).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

--L(411)

Variacio-nes

Mi

Mi: Canal de minuendo

Su

Su: Canal de sustraendo

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

--L(411)

Ejecutado una vez para diferencial ascendente

@--L(411)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Mi

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

No soportado.

OK
Su

A000 a A958

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

Registros de datos

338

---

---

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Registros de ndice

Mi
IR0 a IR15

Su

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

--L(411) resta los valores binarios en Su y Su+1 de Mi y Mi+1 y enva el resultado


a R, R+1. Cuando el resultado es negativo, se enva a R y R+1 como un complemento a 2.

CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

Mi+1

Mi

(Binario con signo)

--

Su+1

Su

(Binario con signo)

CY

R+1

(Binario con signo)

Nombre
Indicador de
error
Indicador de
igual

Precauciones

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

ON cuando la resta origina un acarreo negativo.


OFF en todos los dems casos.
ON cuando el resultado de restar un nmero negativo
de uno positivo est dentro del intervalo de 80000000 a
FFFFFFFF hex.
OFF en todos los dems casos.
ON cuando el resultado de restar un nmero positivo de
uno negativo est dentro del intervalo de 00000000 a
7FFFFFFF hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Asegrese siempre de ejecutar la instruccin Clear Carry (CLC(041)) antes de


ejecutar --L(411).
Cuando se ejecute --L(411), el indicador de error se pondr en OFF.
Si, como resultado de la resta, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si la resta origina un acarreo negativo, el indicador de acarreo se pondr en ON.
Si el resultado de restar un nmero negativo de uno positivo es negativo (dentro
del intervalo de 80000000 a FFFFFFFF hex.), el indicador de overflow se pondr en ON.
Si el resultado de restar un nmero positivo de uno negativo es positivo (dentro
del intervalo de 00000000 a 7FFFFFFF hex.), el indicador de underflow se pondr en ON.
Si, como resultado de la resta, el contenido del bit de la izquierda de R+1 es 1, el
indicador de negativo se pondr en ON.

339

Instrucciones matemticas de smbolos

Seccin 3-11

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00111 y D00110


se restan de D00101 y D00100 como valores binarios con signo de 8 dgitos y el
resultado se enva a D00121 y D00120.

Ejemplos

--L

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1, Su),


el resultado se enviar como complemento a 2 y el indicador de acarreo (CY) se
pondr en ON para indicar que el resultado de la resta es negativo. Para convertir el complemento a 2 en el nmero vlido, es necesaria una instruccin que
reste el resultado de 0 utilizando el indicador de acarreo (CY) como condicin de
ejecucin.

Ejemplos

Nota Complemento a 2
Un complemento a 2 es el valor obtenido mediante la resta de cada dgito binario de 1 y sumando uno al resultado. Por ejemplo, el complemento a 2 para 1101
se calcula del modo siguiente: 1111 (F hexadecimal) -- 1101 (D hexadecimal) + 1
(1 hexadecimal) = 0011 (3 hexadecimal). El complemento a 2 para 3039 (hexadecimal) se calcula del modo siguiente: FFFF (hexadecimal) -- 3039 (hexadecimal) + 0001 (hexadecimal) -- CFC7 (hexadecimal). Por lo tanto, en el caso de un
valor hexadecimal de 4 dgitos, el complemento a 2 puede calcularse del siguiente modo: FFFF (hexadecimal) -- a (hexadecimal) + 0001 (hexadecimal) = b
(hexadecimal). Para obtener el nmero vlido del complemento a 2 b (hexadecimal): a (hexadecimal) = 10000 (hexadecimal) -- b (hexadecimal). Por ejemplo,
para obtener el nmero vlido del complemento a 2 CFC7 (hexadecimal):
10000 (hexadecimal) -- CFC7 = 3039.

Ejemplo 1
FFFf hex.
--) 0001 hex.

Datos con signo

--)

FFFE hex.

--1
+1

Datos sin signo

--)

--2 Nota 1

65535
1
65534 Nota 2

Indicador negativo ON

Nota

1. Puesto que el indicador de negativo est en ON, el resultado (FFFE hex.) es un valor negativo (complemento a 2)
y, por lo tanto, es --2.
2. Puesto que el indicador de acarreo est en OFF, el resultado (FFFE hex.) es un valor positivo sin signo de 65534.

Indicador de acarreo OFF

Ejemplo 2
FFFD hex.
--) FFFF hex.

Datos con signo

--)

FFFE hex.
Indicador negativo ON

--3
--1

Datos sin signo


65533
--) 65535

--2 Nota 3

65534 Nota 4

3. Puesto que el indicador negativo est en ON, el resultado (FFFE hex.) es un valor negativo (complemento a 2) y,
por lo tanto, es --2.
4. Puesto que el indicador de acarreo est en ON, el resultado (FFFE hex.) es un valor negativo (complemento a 2)
y se convierte en --2 al convertirse en un valor vlido.

Indicador de acarreo OFF

Programa ejemplo

340

20F55A10 -- B8A360E3 = --97AE06D3.


En este ejemplo, el valor binario de ocho dgitos en CIO 0121 y CIO 0120 se
resta del valor en CIO 0201 y CIO 0200 y el resultado se enva en valores bina-

Instrucciones matemticas de smbolos

Seccin 3-11

rios de ocho dgitos a D00101 y D00100. Si el resultado es negativo, la instruccin del paso (2) se ejecutar y el resultado real se enviar a D00101 y D00100.

-- display

Resta a 1
Mi+1: CIO 0201

Mi: CIO 0200

2 0 F 5

5 A 1 0

Su+1: CIO 0121

--

B 8 A 3

CY

R+1: D00101

6 8 5 1

Su: CIO 0120


6 0 E 3
R+1: D00100
F 9 2 D

El indicador de acarreo (CY) est en ON, de modo que el resultado se resta de


0000 0000 para obtener el nmero real.
Resta a 2
0 0 0 0

0 0 0 0

Su+1: D00101

Su: D00100

--

6 8 5 1

CY

R+1: D00101

9 7 A E

F 9 2 D
R+1: D00100
0 6 D 3

Resultado de la resta final


Mi+1: CIO 0201

Mi: CIO 0200

2 0 F 5

5 A 1 0

Su+1: D00101

Su: D00100

--

6 8 5 1

CY

R+1: D00101

9 7 A E

F 9 2 D
R+1: D00100
0 6 D 3

El indicador de acarreo (CY) se pone en ON, de modo que el nmero real es


--97AE06D3. Puesto que el contenido de D00101 y D00100 es negativo, CY se
utiliza para poner en ON un bit de autorretencin que pone en ON un bit que
indica un valor negativo.

341

Instrucciones matemticas de smbolos

Seccin 3-11

3-11-11 RESTA BINARIA CON SIGNO CON ACARREO: --C(412)


Funcin

Resta datos y/o constantes hexadecimales de 4 dgitos (un canal) con el indicador de acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

--C(412)

Variacio-nes

Mi

Mi: Canal de minuendo

Su

Su: Canal de sustraendo

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

--C(412)

Ejecutado una vez para diferencial ascendente

@--C(412)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Mi

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

OK
Su

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

Registros de datos

(binario)
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

342

---

Instrucciones matemticas de smbolos


Descripcin

Seccin 3-11

--C(412) resta los valores binarios en Su y CY de Mi, y enva el resultado a R.


Cuando el resultado es negativo, se enva a R como complemento a 2.
Mi

(Binario con signo)

Su

(Binario con signo)

CY

-CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

CY

Nombre

(Binario con signo)

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado de la resta es 0.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

Indicador de
negativo

Precauciones

OFF en todos los dems casos.


ON cuando la resta origina un acarreo negativo.
OFF en todos los dems casos.

UF

ON cuando el resultado de restar un nmero negativo y


CY de uno positivo est dentro del intervalo de 8000 a
FFFF hex.
OFF en todos los dems casos.
ON cuando el resultado de restar un nmero positivo y
CY de un nmero negativo est dentro del intervalo de
0000 a 7FFF hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Cuando se ejecute --C(412), el indicador de error se pondr en OFF.


Si, como resultado de la resta, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la resta origina un acarreo negativo, el indicador de acarreo se pondr en ON.
Si el resultado de restar un nmero negativo y CY de uno positivo es negativo
(dentro del intervalo de 8000 a FFFF hex.), el indicador de overflow se pondr
en ON.
Si el resultado de restar un nmero positivo y CY de un nmero negativo es positivo (dentro del intervalo de 0000 a 7FFF hex.), el indicador de underflow se pondr en ON.
Si, como resultado de la resta, el contenido del bit de la izquierda de R es 1, el
indicador de negativo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00110 y CY se


resta de D00100 como valores binarios con signo de cuatro dgitos y el resultado se enva a D00120.

343

Instrucciones matemticas de smbolos

Seccin 3-11

3-11-12 DOBLE RESTA BINARIA CON SIGNO CON ACARREO: --CL(413)


Funcin

Resta datos y/o constantes hexadecimales de 8 dgitos (dos canales) con el indicador de acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

--CL(413)

Variacio-nes

Mi

Mi: Canal de minuendo

Su

Su: Canal de sustraendo

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

--CL(413)

Ejecutado una vez para diferencial ascendente

@--CL(413)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Mi

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

OK
Su

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

Registros de datos

(binario)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

344

--CL(413) resta los valores binarios en Su, Su+1 y CY de Mi y Mi+1, y enva el


resultado a R, R+1. Cuando el resultado es negativo, se enva a R, R+1 como
complemento a 2.

Instrucciones matemticas de smbolos

Seccin 3-11
Mi+1

Mi

(Binario con signo)

Su+1

Su

(Binario con signo)

CY

-CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

Precauciones

CY

Nombre

R+1

Etique
ta

(Binario con signo)

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado es 0.

Indicador de
acarreo

CY

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.


ON cuando la resta origina un acarreo negativo.
OFF en todos los dems casos.
ON cuando el resultado de restar un nmero negativo y
CY de uno positivo est dentro del intervalo de
80000000 a FFFFFFFF hex.
OFF en todos los dems casos.
ON cuando el resultado de restar un nmero positivo y
CY de uno negativo est dentro del intervalo de
00000000 a 7FFFFFFF hex.
OFF en todos los dems casos.
ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Cuando se ejecute --CL(413), el indicador de error se pondr en OFF.


Si, como resultado de la resta, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si la resta origina un acarreo negativo, el indicador de acarreo se pondr en ON.
Cuando el resultado de restar un nmero negativo y CY de uno positivo es negativo (dentro del intervalo de 80000000 a FFFFFFFF hex.), el indicador de overflow se pondr en ON.
Si el resultado de restar un nmero positivo y CY de uno negativo es positivo
(dentro del intervalo de 00000000 a 7FFFFFFF hex.), el indicador de underflow
se pondr en ON.
Si, como resultado de la resta, el contenido del bit de la izquierda de R+1 es 1, el
indicador de negativo se pondr en ON.
Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00111, D00110 y


CY se restan de D00101 y D00100 como valores binarios con signo de 8 dgitos
y el resultado se enva a D00121 y D00120.

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1, Su),


el resultado se enviar como complemento a 2. El indicador de acarreo (CY) se
pondr en ON. Para convertir el complemento a 2 en el nmero vlido, es necesario un programa que reste el resultado de 0, como condicin de entrada del
indicador de acarreo (CY). Cuando el indicador de acarreo se pone en ON, indica que el resultado de la resta es negativo.
Nota Complemento a 2
Un complemento a 2 es el valor obtenido mediante la resta de cada dgito bina-

345

Instrucciones matemticas de smbolos

Seccin 3-11

rio de 1 y sumando uno al resultado.


Ejemplo: El complemento a 2 del nmero binario 1101 es como sigue:
1111 (F hex.) -- 1101 (D hex.) + 1 (1 hex.) = 0011 (3 hex.).
Ejemplo: El complemento a 2 para el nmero hexadecimal de 4 dgitos 3039 es
como sigue:
FFFF hex. -- 3039 hex. + 0001 hex. = CFC7 hex.
Del mismo modo, el complemento a 2 para el valor hexadecimal de 4 dgitos a
es como sigue:
FFFF hex. -- a hex. + 0001 hex. = b hex.
Y para obtener el valor vlido a hex. el complemento a 2 b hex.:
a hex. + 10000 hex. -- b hex.
Ejemplo: Para obtener el nmero vlido del complemento a 2 CFC& hex.:
10000 hex. -- CFC7 hex. = 3039 hex.

3-11-13 RESTA BCD SIN ACARREO: --B(414)


Funcin

Resta datos y/o constantes BCD de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

--B(414)

Variacio-nes

Mi

Mi: Canal de minuendo

Su

Su: Canal de sustraendo

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

--B(414)

Ejecutado una vez para diferencial ascendente

@--B(414)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Mi

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

OK
Su

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
0000 a 9999
(BCD)

346

---

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Registros de datos

Mi
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Su

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

--B(414) resta los valores BCD en Su de Mi y enva el resultado a R. Si el resultado de la resta es negativo, se enviar como complemento a 10.
Mi

CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

Nombre

(BCD)

--

Su

(BCD)

CY

(BCD)

Etique
ta

Indicador de
error

ER

Indicador de
igual

Indicador de
acarreo

CY

Operacin
ON cuando Mi no es BCD.
ON cuando Su no es BCD.
OFF en todos los dems casos.

Precauciones

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando la resta origina un acarreo negativo.
OFF en todos los dems casos.

Si Mi y/o Su no son BCD, se generar un error y el indicador de error se pondr


en ON.
Si, como resultado de la resta, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la suma origina un acarreo negativo, el indicador de acarreo se pondr en
ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00110 se resta


de D00100 como valores BCD de cuatro dgitos y el resultado se enva a
D00120.

3-11-14 DOBLE RESTA BCD SIN ACARREO: --BL(415)


Funcin
Smbolo de diagrama de
rels

Resta datos y/o constantes BCD de 8 dgitos (dos canales).


--BL(415)
Mi

Mi: Primer canal de minuendo

Su

Su: Primer canal de sustraendo

R: Primer canal de resultado

347

Instrucciones matemticas de smbolos


Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Seccin 3-11
Ejecutado cada ciclo para condicin ON

--BL(415)

Ejecutado una vez para diferencial ascendente

@--BL(415)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Mi

OK

Su

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

Direcciones de DM/EM
indirectas en binario

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #99999999

Constantes

---

(BCD)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

--BL(415) resta los valores BCD en Su y Su+1 de Mi y Mi+1, y enva el resultado


a R, R+1. Cuando el resultado es negativo, se enva a R, R+1 como complemento a 10.

CY se pondr
en ON cuando
exista un acarreo negativo.

348

Mi +1

Mi

(BCD)

--

Su+1

Su

(BCD)

CY

R+1

(BCD)

Instrucciones matemticas de smbolos


Indicadores

Nombre
Indicador de
error

Seccin 3-11
Etique
Operacin
ta
ER
ON cuando Mi y/o Mi +1 no son BCD.
ON cuando Su y/o Su +1 no son BCD.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
acarreo

CY

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando la resta origina un acarreo negativo.
OFF en todos los dems casos.

Precauciones

Si Mi, Mi +1 y/o Su, Su +1 no son BCD, se genera un error y el indicador de error


se pone en ON.
Si, como resultado de la resta, el contenido de R, R +1 es 00000000 hex., el
indicador de igual se pondr en ON.
Si la suma origina un acarreo negativo, el indicador de acarreo se pondr en
ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00111 y D00110


se restan de D00101 y D00100 como valores BCD de 8 dgitos y el resultado se
enva a D00121 y D00120.

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1, Su),


el resultado se enviar como complemento a 10. El indicador de acarreo (CY) se
pondr en ON. Para convertir el complemento a 10 en el nmero vlido, es necesario un programa que reste el resultado de 0, como condicin de entrada del
indicador de acarreo (CY). Cuando el indicador de acarreo se pone en ON, indica que el resultado de la resta es negativo.
Nota Complemento a 10
Un complemento a 10 es el valor obtenido mediante la resta de cada dgito de 9
y sumando uno al resultado. Por ejemplo, el complemento a 10 para 7556 se
calcula del modo siguiente: 9999 -- 7556 + 1 = 2444. Para un nmero de cuatro
dgitos, el complemento a 10 de A es 9999 -- A + 1 = B. Para obtener el nmero
vlido del complemento a 10 B: A = 10000 -- B. Por ejemplo, para obtener el nmero vlido del complemento a 10 2444: 10000 -- 2444 = 7556.
Programa ejemplo

9.583.960 -- 17.072.641 = --7.488.681.


En este ejemplo, el contenido BCD de ocho dgitos de CIO 0121 y CIO 0120 se
resta del contenido de CIO 0201 y CIO 0200 y el resultado se enva en valores
BCD de ocho dgitos a D00101 y D00100. El resultado es negativo, de modo

349

Instrucciones matemticas de smbolos

Seccin 3-11

que la instruccin del paso (2) se ejecutar y el valor vlido se enviar a D00101
y D00100.
1

-- display

Resta a 1
Mi+1: CIO 0201

Mi: CIO 0200

0 9 5 8
Su+1: CIO 0121

--

3 9 6 0
Su: CIO 0120

1 7 0 7

2 6 4 1

09583960 + (100000000 -- 17072641)


CY R+1: D00101
1

9 2 5 1

R+1: D00100
1 3 1 9

El indicador de acarreo (CY) est en ON, de modo que el resultado se resta de


0000 0000.
Resta a 2
0 0 0 0

0 0 0 0

Su+1: D00101

Su: D00100

9 2 5 1

1 3 1 9

--

00000000 + (100000000 -- 92511319)


CY R+1: D00101
1

0 7 4 8

R+1: D00100
8 6 8 1

Resultado de la resta final


Mi+1: CIO 0201

Mi: CIO 0200

2 0 F 5

5 A 1 0

Su+1: D00101

Su: D00100

--

6 8 5 1

CY

R+1: D00101

0 7 4 8

F 9 2 D
R+1: D00100
8 6 8 1

El indicador de acarreo (CY) se pondr en ON, de modo que el nmero real sea
--7.488.681. Puesto que el contenido de D00101 y D00100 es negativo, CY se
utiliza para poner en ON un bit de autorretencin que ponga en ON un bit que
indique un valor negativo.

350

Instrucciones matemticas de smbolos

Seccin 3-11

3-11-15 RESTA BCD CON ACARREO: --BC(416)


Funcin

Resta datos y/o constantes BCD de 4 dgitos (un canal) con el indicador de acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

--BC(416)

Variacio-nes

Mi

Mi: Canal de minuendo

Su

Su: Canal de sustraendo

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

--BC(416)

Ejecutado una vez para diferencial ascendente

@--BC(416)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Mi

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a D32767

rea EM con banco

En_00000 a En_32767

OK
Su

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #9999

---

(BCD)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

351

Instrucciones matemticas de smbolos

Seccin 3-11

--BC(416) resta los valores BCD en Su y CY de Mi, y enva el resultado a R.


Cuando el resultado es negativo, se enva a R como complemento a 2.

Descripcin

Mi

(BCD)

Su

(BCD)

-CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

Nombre
Indicador de
error

CY

CY

(BCD)

Etique
Operacin
ta
ER
ON cuando Mi no es BCD.
ON cuando Su no es BCD.
OFF en todos los dems casos.

Indicador de
igual

ON si el resultado es 0.

Indicador de
acarreo

CY

OFF en todos los dems casos.


ON cuando la resta origina un acarreo negativo.
OFF en todos los dems casos.

Si Mi y/o Su no son BCD, se generar un error y el indicador de error se pondr


en ON.
Si, como resultado de la resta, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si la suma origina un acarreo negativo, el indicador de acarreo se pondr en
ON.

Precauciones

Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).
Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00110 y CY se


restan de D00100 como valores BCD de 4 dgitos y el resultado se enva a
D00120.

3-11-16 DOBLE RESTA BCD CON ACARREO: --BCL(417)


Funcin

Resta datos y/o constantes BCD de 8 dgitos (dos canales) con el indicador de
acarreo (CY).

Smbolo de diagrama de
rels

Variacio-- nes

--BCL(417)

Variacio-nes

Mi

Mi: Primer canal de minuendo

Su

Su: Primer canal de sustraendo

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

--BCL(417)

Ejecutado una vez para diferencial ascendente

@--BCL(417)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

352

No soportado.
No soportado.

Instrucciones matemticas de smbolos


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-11

reas de
programa de
bloques
OK

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Mi

Tareas de
interrupcin
OK

Su

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #99999999

Constantes

---

(BCD)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

--BCL(417) resta los valores BCD en Su, Su+1 y CY de Mi y Mi+1 y enva el resultado a R, R+1. Si el resultado es negativo, se enva a R, R+1 como complemento a 10.
Mi +1

Mi

(BCD)

Su+1

Su

(BCD)

-CY se pondr
en ON cuando
exista un acarreo negativo.

Indicadores

CY

Nombre
Indicador de
error

CY
R+1

(BCD)

Etique
Operacin
ta
ER
ON cuando Mi y/o Mi +1 no son BCD.
ON cuando Su y/o Su +1 no son BCD.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
acarreo

CY

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando la resta origina un acarreo negativo.
OFF en todos los dems casos.

353

Instrucciones matemticas de smbolos

Seccin 3-11

Si Mi, Mi +1 y/o Su, Su +1 no son BCD, se genera un error y el indicador de error


se pone en ON.
Si, como resultado de la resta, el contenido de R, R +1 es 00000000 hex., el
indicador de igual se pondr en ON.
Si la resta origina un acarreo negativo, el indicador de acarreo se pondr en ON.

Precauciones

Nota Para borrar el indicador de acarreo (CY), ejecute la instruccin Clear Carry
(CLC(041)).
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00111, D00110 y
CY se restan de D00101 y D00100 como valores BCD de 8 dgitos y el resultado
se enva a D00121 y D00120.

Ejemplos

Si el resultado de la resta es un nmero negativo (Mi<Su o Mi+1, Mi <Su+1, Su),


el resultado se enviar como complemento a 10. El indicador de acarreo (CY) se
pondr en ON. Para convertir el complemento a 10 en el nmero vlido, es necesario un programa que reste el resultado de 0, como condicin de entrada del
indicador de acarreo (CY). Cuando el indicador de acarreo se pone en ON, indica que el resultado de la resta es negativo.
Nota Complemento a 10
Un complemento a 10 es el valor obtenido mediante la resta de cada dgito de 9
y sumando uno al resultado. Por ejemplo, el complemento a 10 para 7556 se
calcula del modo siguiente: 9999 -- 7556 + 1 = 2444. Para un nmero de cuatro
dgitos, el complemento a 10 de A es 9999 -- A + 1 = B. Para obtener el nmero
vlido del complemento a 10 B: A = 10000 -- B. Por ejemplo, para obtener el nmero vlido del complemento a 10 2444: 10000 -- 2444 = 7556.

3-11-17 MULTIPLICACIN BINARIA CON SIGNO: *(420)


Funcin

Multiplica datos y/o constantes hexadecimales con signo de 4 dgitos.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

354

*(420)

Variacio-nes

Md

Md: Canal de multiplicando

Mr

Mr: Canal de multiplicador

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

*(420)

Ejecutado una vez para diferencial ascendente

@*(420)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

rea

reas de
programa de
pasos
OK

No soportado.

Subrutinas
OK

Md

OK
Mr

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a
CIO 6142

rea de trabajo

W000 a W511

W000 a W510

rea de bits de
retencin

H000 a H511

H000 a H510

Instrucciones matemticas de smbolos

Seccin 3-11

rea
rea de bits auxiliares

Md
A000 a A959

Mr

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

R
A448 a A958

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Indicadores

Precauciones

*(420) multiplica los valores binarios con signo en Md y Mr y enva el resultado a


R, R+1.
Md

(Binario con signo)

Mr

(Binario con signo)

R +1

(Binario con signo)

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado es 0.

Indicador de
negativo

OFF en todos los dems casos.


ON cuando el bit de la izquierda del resultado es 1.
OFF en todos los dems casos.

Cuando se ejecute *(420), el indicador de error se pondr en OFF.


Si, como resultado de la multiplicacin, el contenido de R es 0000 hex., el indicador de igual se pondr en ON.
Si, como resultado de la multiplicacin, el contenido del bit de la izquierda de
R+1 y R es 1, el indicador de negativo se pondr en ON.

355

Instrucciones matemticas de smbolos


Ejemplos

Seccin 3-11

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 y D00110


se multiplican como valores hexadecimales con signo de 4 dgitos y el resultado
se enva a D00120.

3-11-18 DOBLE MULTIPLICACIN BINARIA CON SIGNO: *L(421)


Funcin

Multiplica datos y/o constantes hexadecimales con signo de 8 dgitos.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

*L(421)

Variacio-nes

Md

Md: Primer canal de multiplicando

Mr

Mr: Primer canal de multiplicador

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

*L(421)

Ejecutado una vez para diferencial ascendente

@*L(421)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Md

OK
Mr

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

CIO 0000 a
CIO 6140
W000 a W508

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H508

A000 a A958

A448 a A956

rea de temporizador

T0000 a T4094

T0000 a T4092

rea de contador

C0000 a C4094

C0000 a C4092

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

D00000 a
D32764
E00000 a
E32764
En_00000 a
En_32764

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

Registros de datos

356

---

---

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Registros de ndice

Md

Mr

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

*L(421) multiplica los valores binarios con signo en Md, Md+1, Mr y Mr+1 y enva
el resultado a R, R+1, R+2, y R+3.

Descripcin

R+3

Indicadores

R+2

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Md + 1

Md

Mr + 1

Mr

R+1

Etique
ta
ER
OFF
=

(Binario con signo)


(Binario con signo)
(Binario con signo)

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

ON cuando el bit de la izquierda del resultado es 1.


OFF en todos los dems casos.

Precauciones

Cuando se ejecute *L(421), el indicador de error se pondr en OFF.


Si, como resultado de la multiplicacin, el contenido de R, R+1, R+2, R+3 es
0000 hex., el indicador de igual se pondr en ON.
Si, como resultado de la multiplicacin, el contenido del bit de la izquierda de
R+1 es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100, D00110,


D00111 y D00101 se multiplican como valores hexadecimales con signo de 8
dgitos y el resultado se enva a D00121 y D00120.

3-11-19 MULTIPLICACIN BINARIA SIN SIGNO: *U(422)


Funcin

Multiplica datos y/o constantes hexadecimales sin signo de 4 dgitos.

Smbolo de diagrama de
rels

Variacio-- nes

*U(422)

Variacio-nes

Md

Md: Canal de multiplicando

Mr

Mr: Canal de multiplicador

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

*U(422)

Ejecutado una vez para diferencial ascendente

@*U(422)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.
No soportado.

357

Instrucciones matemticas de smbolos


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-11

reas de
programa de
bloques
OK

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

Md

Mr

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

D00000 a
D32766

rea EM sin banco

E00000 a E32767

E00000 a
E32766

rea EM con banco

En_00000 a En_32767

En_00000 a
En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a*En_ 32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Indicadores

*U(420) multiplica los valores binarios en Md y Mr y enva el resultado a R, R+1.


Md

(Binario sin signo)

Mr

(Binario sin signo)

R +1

(Binario sin signo)

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Precauciones

358

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

ON cuando el bit de la izquierda del resultado es 1.


OFF en todos los dems casos.

Cuando se ejecute *U(422), el indicador de error se pondr en OFF.

Instrucciones matemticas de smbolos

Seccin 3-11

Si, como resultado de la multiplicacin, el contenido de R, R+1 es 0000 hex., el


indicador de igual se pondr en ON.
Si, como resultado de la multiplicacin, el contenido del bit de la izquierda de
R+1 es 1, el indicador de negativo se pondr en ON.
Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 y D00110


se multiplican como valores binarios sin signo de cuatro dgitos y el resultado se
enva a D00121 y D00120.

3-11-20 DOBLE MULTIPLICACIN BINARIA SIN SIGNO: *UL(423)


Funcin

Multiplica datos y/o constantes hexadecimales sin signo de 8 dgitos.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

*UL(423)

Variacio-nes

Md

Md: Primer canal de multiplicando

Mr

Mr: Primer canal de multiplicador

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

*UL(423)

Ejecutado una vez para diferencial ascendente

@*UL(423)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Md

OK
Mr

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

CIO 0000 a
CIO 6140
W000 a W508

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H508

A000 a A958

A448 a A956

rea de temporizador

T0000 a T4094

T0000 a T4092

rea de contador

C0000 a C4094

C0000 a C4092

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

D00000 a
D32764
E00000 a
E32764
En_00000 a
En_32764

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

359

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Constantes

Md
Mr
#00000000 a #FFFFFFFF

R
---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

*UL(423) multiplica los valores binarios sin signo en Md, Md+1, Mr y Mr+1 y enva el resultado a R, R+1, R+2, y R+3.

Descripcin

R+3

Indicadores

R+2

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Precauciones

Md + 1

Md

Mr + 1

Mr

R+1

Etique
ta
ER
OFF
=

(Binario sin signo)


(Binario sin signo)
(Binario sin signo)

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

ON cuando el bit de la izquierda del resultado es 1.


OFF en todos los dems casos.

Cuando se ejecute *UL(423), el indicador de error se pondr en OFF.


Si, como resultado de la multiplicacin, el contenido de R, R+1, R+2, R+3 es
0000 hex., el indicador de igual se pondr en ON.
Si, como resultado de la multiplicacin, el contenido del bit de la izquierda de
R+3 es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100, D00101,


D00111 y D00110 se multiplican como valores binarios sin signo de 8 dgitos y el
resultado se enva a D00123 y D00120.

3-11-21 MULTIPLICACIN BCD: *B(424)


Funcin
Smbolo de diagrama de
rels

360

Multiplica datos y/o constantes BCD de 4 dgitos (un canal).


*B(424)
Md

Md: Canal de multiplicando

Mr

Mr: Canal de multiplicador

R: Canal de resultado

Instrucciones matemticas de smbolos


Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Seccin 3-11
Ejecutado cada ciclo para condicin ON

*B(424)

Ejecutado una vez para diferencial ascendente

@*B(424)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Md

OK
Mr

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a
CIO 6142

rea de trabajo

W000 a W511

W000 a W510

rea de bits de
retencin

H000 a H511

H000 a H510

rea de bits auxiliares

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #9999

Constantes

---

(BCD)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

*B(424) multiplica el contenido de BCD de Md y Mr, y enva el resultado a R,


R+1.

Md

(BCD)

Mr

(BCD)

R +1

(BCD)

361

Instrucciones matemticas de smbolos


Indicadores

Seccin 3-11

Nombre

Etique
Operacin
ta
ER
ON cuando Md no es BCD.

Indicador de
error

ON cuando Mr no es BCD.
OFF en todos los dems casos.

Indicador de
igual

ON si el resultado es 0.
OFF en todos los dems casos.

Precauciones

Si Md y/o Mr no son BCD, se generar un error y el indicador de error se pondr


en ON.
Si, como resultado de la multiplicacin, el contenido de R, R+1 es 0000 hex., el
indicador de igual se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 y D00110


se multiplican como valores BCD de cuatro dgitos y el resultado se enva a
D00121 y D00120.

3-11-22 DOBLE MULTIPLICACIN BCD: *BL(425)


Funcin

Multiplica datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

*BL(425)

Variacio-nes

Md

Md: Primer canal de multiplicando

Mr

Mr: Primer canal de multiplicador

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

*BL(425)

Ejecutado una vez para diferencial ascendente

@*BL(425)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Md

OK
Mr

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

CIO 0000 a
CIO 6140
W000 a W508

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H508

A000 a A958

A448 a A956

rea de temporizador

T0000 a T4094

T0000 a T4092

rea de contador

C0000 a C4094

C0000 a C4092

rea DM

D00000 a D32766

D00000 a
D32764

rea EM sin banco

E00000 a E32766

E00000 a
E32764

rea EM con banco

En_00000 a En_32766

En_00000 a
En_32764

(n = 0 a C)

362

No soportado.

(n = 0 a C)

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Direcciones de DM/EM
indirectas en binario

Md
@ D00000 a @ D32767

Mr

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #99999999

Constantes

---

(BCD)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

*BL(425) multiplica valores BCD en Md, Md+1, Mr, Mr+1 y enva el resultado a
R, R+1, R+2 y R+3.

R+3

Indicadores

R+2

Nombre
Indicador de
error

Md + 1

Md

Mr + 1

Mr

R+1

(BCD)
(BCD)
(BCD)

Etique
Operacin
ta
ER
ON cuando Md y/o Md+1 no son BCD.
ON cuando Mr y/o Mr +1 no son BCD.
OFF en todos los dems casos.

Indicador de
igual

Precauciones

ON si el resultado es 0.
OFF en todos los dems casos.

Si Md, Md+1 y/o Mr, Mr+1 no son BCD, se generar un error y el indicador de
error se pondr en ON.
Si, como resultado de la multiplicacin, el contenido de R, R+1, R+2 y R+3 es
00000000 hex., el indicador de igual se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00101, D00100,


D00111 y D00110 se multiplican como valores BCD sin signo de 8 dgitos y el
resultado se enva a D00123 y D00120.

363

Instrucciones matemticas de smbolos

Seccin 3-11

3-11-23 DIVISIN BINARIA CON SIGNO: /(430)


Funcin

Divide datos y/o constantes hexadecimales con signo de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

/(430)

Variacio-nes

Dd

Dd: Canal de dividendo

Dr

Dr: Canal de divisor

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

/(430)

Ejecutado una vez para diferencial ascendente

@/(430)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Dd

OK
Dr

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

D00000 a
D32766

rea EM sin banco

E00000 a E32767

E00000 a
E32766

rea EM con banco

En_00000 a En_32767

En_00000 a
En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

#0001 a #FFFF

(binario)

(binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

364

/(430) divide los valores binarios con signo (16 bits) de Dd por aquellos de Dr y
enva el resultado a R, R+1. El cociente se coloca en R y el resto en R+1.

Instrucciones matemticas de smbolos

Seccin 3-11

Dd

(Binario con signo)

Dr

(Binario con signo)

(Binario con signo)

R +1
Resto

Indicadores

Cociente

Nombre

Etique
Operacin
ta
ER
ON si el resultado es 0.

Indicador de
error

OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON cuando, como resultado de la divisin, R es 0.


OFF en todos los dems casos.
ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Precauciones

Si el contenido de Dr es 0, se generar un error y el indicador de error se pondr


en ON.
Si, como resultado de la divisin, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si, como resultado de la divisin, el contenido del bit de la izquierda de R es 1, el
indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 se divide


entre D00110 como valores binarios con signo de 4 dgitos; el cociente se enva
a D00120 y el resto a D00121.

3-11-24 DOBLE DIVISIN BINARIA CON SIGNO: /L(431)


Funcin

Divide datos y/o constantes hexadecimales con signo de 8 dgitos (dos canales).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

/L(431)

Variacio-nes

Dd

Dd: Primer canal de dividendo

Dr

Dr: Primer canal de divisor

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

/L(431)

Ejecutado una vez para diferencial ascendente

@/L(431)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

rea

reas de
programa de
pasos
OK

No soportado.

Subrutinas
OK

Dd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

OK
Dr

R
CIO 0000 a
CIO 6140
W000 a W508

365

Instrucciones matemticas de smbolos

Seccin 3-11

rea
rea de bits de
retencin
rea de bits auxiliares

Dd
H000 a H510

Dr

A000 a A958

A448 a A956

rea de temporizador

T0000 a T4094

T0000 a T4092

rea de contador

C0000 a C4094

C0000 a C4092

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

D00000 a
D32764
E00000 a
E32764
En_00000 a
En_32764

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

R
H000 a H508

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a
#FFFFFFFF

Constantes

Registros de datos

(binario)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#00000001 a
#FFFFFFFF

---

(binario)

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

/L(431) divide los valores binarios con signo de Dd y Dd+1 entre los de Dr y Dr+1
y enva el resultado a R, R+1, R+2 y R+3. El cociente se enva a R, R+1 y el resto
a R+2 y R+3.

Descripcin

R+3

R+2

Resto

Indicadores

366

Dd

Dr + 1

Dr

R+1

(Binario con signo)


(Binario con signo)
(Binario con signo)

Cociente

Nombre
Indicador de
error

Precauciones

Dd + 1

Etique
Operacin
ta
ER
ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON cuando, como resultado de la divisin, R+1, R es 0.


OFF en todos los dems casos.
ON cuando el bit de la izquierda de R+1, R es 1.
OFF en todos los dems casos.

Cuando el resto del resultado, R+3, R+2 es 0, el indicador de error se pondr en


ON.
Si, como resultado de la divisin, el contenido de R+1, R es 00000000 hex., el
indicador de igual se pondr en ON.

Instrucciones matemticas de smbolos

Seccin 3-11

Si, como resultado de la divisin, el contenido del bit de la izquierda de R+1, R es


1, el indicador de negativo se pondr en ON.
Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00101 y D00100


se dividen entre D00111 y D00110 como valores hexadecimales con signo de 8
dgitos; el cociente se enva a D00121 y D00120, y el resto a D00123 y D00122.

3-11-25 DIVISIN BINARIA SIN SIGNO: /U(432)


Funcin

Divide datos y/o constantes hexadecimales sin signo de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

/U(432)

Variacio-nes

Dd

Dd: Canal de dividendo

Dr

Dr: Canal de divisor

R: Canal de resultado
/U(432)

Ejecutado cada ciclo para condicin ON

Ejecutado una vez para diferencial ascendente


Ejecutado una vez para diferencial
descendente
Especificacin de refresco inmediato

@/U(432)
No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

Subrutinas
OK

Dd

No soportado.

OK
Dr

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

367

Instrucciones matemticas de smbolos

Seccin 3-11

rea
Constantes

Dd
#0000 a #FFFF

Dr
#0001 a #FFFF

(binario)

(binario)

Registros de datos

DR0 a 15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

R
-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

/U(432) divide los valores binarios sin signo en Dd entre los de Dr; enva el cociente a R y el resto a R+1.
Dd

(Binario sin signo)

Dr

(Binario sin signo)

R +1

(Binario sin signo)

Resto

Indicadores

Cociente

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON cuando, como resultado de la divisin, R es 0.


OFF en todos los dems casos.
ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Precauciones

Si, como resultado de la divisin, el contenido de R+1 es 0, el indicador de error


se pondr en ON.
Si, como resultado de la divisin, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si, como resultado de la divisin, el contenido del bit de la izquierda de R es 1, el
indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 se divide


entre D00110 como valores binarios sin signo de 4 dgitos; el cociente se enva a
D00120 y el resto a D00121.

3-11-26 DOBLE DIVISIN BINARIA SIN SIGNO: /UL(433)


Funcin
Smbolo de diagrama de
rels

368

Divide datos y/o constantes hexadecimales sin signo de 8 dgitos (dos canales).
/UL(433)
Dd

Dd: Primer canal de dividendo

Dr

Dr: Primer canal de divisor

R: Primer canal de resultado

Instrucciones matemticas de smbolos


Variacio-- nes

Variacio-nes

reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-11
Ejecutado cada ciclo para condicin ON

/UL(433)

Ejecutado una vez para diferencial ascendente

@/UL(433)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas

OK

Dd

OK
Dr

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

CIO 0000 a
CIO 6140
W000 a W508

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H508

A000 a A958

A448 a A956

rea de temporizador

T0000 a T4094

T0000 a T4092

rea de contador

C0000 a C4094

C0000 a C4092

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

D00000 a
D32764
E00000 a
E32764
En_00000 a
En_32764

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a
#FFFFFFFF

Constantes

Registros de datos

(binario)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#00000001 a
#FFFFFFFF

---

(binario)

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

/UL(433) divide los valores binarios sin signo en Dd y Dd+1 entre los de Dr y
Dr+1, enva el cociente a R, R+1 y el resto a R+2 y R+3.

Descripcin

R+3
Resto

R+2

Dd + 1

Dd

Dr + 1

Dr

R+1

(Binario sin signo)


(Binario sin signo)
(Binario sin signo)

Cociente

369

Instrucciones matemticas de smbolos


Indicadores

Seccin 3-11

Nombre

Etique
Operacin
ta
ER
ON si el resultado es 0.

Indicador de
error

OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON cuando, como resultado de la divisin, R+1, R es 0.


OFF en todos los dems casos.
ON cuando el bit de la izquierda de R+1, R es 1.
OFF en todos los dems casos.

Precauciones

Cuando el contenido de Dr, Dr+1 es 0, el indicador de error se pondr en ON.


Si, como resultado de la divisin, el contenido de R, R+1 es 0000 hex., el indicador de igual se pondr en ON.
Si, como resultado de la divisin, el contenido del bit de la izquierda de R+1 es 1,
el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 y D00101


se dividen entre D00111 y D00110 como valores hexadecimales sin signo de 8
dgitos; el cociente se enva a D00121 y D00120, y el resto a D00123 y D00122.

3-11-27 DIVISIN BCD: /B(434)


Funcin

Divide datos y/o constantes BCD de 4 dgitos (un canal).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

370

/B(434)

Variacio-nes

Dd

Dd: Canal de dividendo

Dr

Dr: Canal de divisor

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

/B(434)

Ejecutado una vez para diferencial ascendente

@/B(434)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas
OK

Dd

OK
Dr

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a
CIO 6142

rea de trabajo

W000 a W511

W000 a W510

rea de bits de
retencin

H000 a H511

H000 a H510

rea de bits auxiliares

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

D00000 a
D32766

rea EM sin banco

E00000 a E32767

E00000 a
E32766

Instrucciones matemticas de smbolos

Seccin 3-11

rea
rea EM con banco

Dd
En_00000 a En_32767

Dr

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

R
En_00000 a
En_32766
(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #9999

#0001 a #9999

(BCD)

(BCD)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

/B(434) divide el contenido de BCD de Dd entre el de Dr, enva el cociente a R y


el resto a R+1.
Dd

(BCD)

Dr

(BCD)

R +1

(BCD)

Resto

Indicadores

Cociente

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando Dd no es BCD.
ON cuando Dr no es BCD.
ON cuando el resto es 0.
OFF en todos los dems casos.

Indicador de
igual

ON cuando R es 0.
OFF en todos los dems casos.

Precauciones

Si Dd o Dr no son BCD o si el resto (R+1) es 0, se generar un error y el indicador


de error se pondr en ON.
Si, como resultado de la divisin, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si, como resultado de la divisin, el bit de la izquierda de R es 1, el indicador de
negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00100 se divide


entre D00110 como valores BCD de 4 dgitos; el cociente se enva a D00120 y el
resto a D00121.

371

Instrucciones matemticas de smbolos

Seccin 3-11

3-11-28 DOBLE DIVISIN BCD: /BL(435)


Funcin

Divide datos y/o constantes BCD de 8 dgitos (dos canales).

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

/BL(435)

Variacio-nes

Dd

Dd: Primer canal de dividendo

Dr

Dr: Primer canal de divisor

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

/BL(435)

Ejecutado una vez para diferencial ascendente

@/BL(435)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

rea

No soportado.

Subrutinas

OK

Dd

OK
Dr

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

CIO 0000 a
CIO 6140
W000 a W508

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H508

A000 a A958

A448 a A956

rea de temporizador

T0000 a T4094

T0000 a T4092

rea de contador

C0000 a C4094

C0000 a C4092

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

D00000 a
D32764
E00000 a
E32764
En_00000 a
En_32764

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a
#99999999

Registros de datos

(BCD)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#00000001 a
#99999999

---

(BCD)

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

372

/BL(435) divide los valores BCD de Dd y Dd+1 entre los de Dr y Dr+1; enva el
cociente a R, R+1 y el resto a R+2, R+3.

Instrucciones de conversin

Seccin 3-12

R+3

Dd

Dr + 1

Dr

R+1

R+2
Resto

Indicadores

Dd + 1

(BCD)
(BCD)
(BCD)

Cociente

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando Dd, Dd+1 no es BCD.
ON cuando Dr, Dr +1 no es BCD.
OFF en todos los dems casos.

Indicador de
igual

ON si el resultado es 0.
OFF en todos los dems casos.

Precauciones

Si Dd, Dd+1 y/o Dr, Dr+1 no son BCD o el contenido de Dr, Dr+1 es 0, se generar un error y el indicador de error se pondr en ON.
Si, como resultado de la divisin, el contenido de R, R+1 es 00000000 hex., el
indicador de igual se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, D00101 y D00100


se dividen entre D00111 y D00110 como valores BCD de 8 dgitos, el cociente se
enva a D00121 y D00120 y el resto a D00123 y D00122.

3-12 Instrucciones de conversin


Esta seccin describe las instrucciones utilizadas para la conversin de datos.
Instruccin

Mnemnico

BCD-TO-BINARY

BIN

Cdigo de
funcin
023

Pgina

DOUBLE BCD-TO-DOUBLE
BINARY
BINARY-TO-BCD

BINL

058

375

BCD

024

377

DOUBLE
BINARY-TO-DOUBLE BCD
2S COMPLEMENT

BCDL

059

378

NEG

160

380

DOUBLE 2S COMPLEMENT

NEGL

161

381

16-BIT TO 32-BIT SIGNED


BINARY
DATA DECODER

SIGN

600

383

MLPX

076

384

DATA ENCODER

DMPX

077

388

ASCII CONVERT

ASC

086

392

ASCII TO HEX

HEX

162

395

COLUMN TO LINE

LINE

063

399

LINE TO COLUMN

COLM

064

401

SIGNED BCD-TO-BINARY

BINS

470

403

DOUBLE SIGNED
BCD-TO-BINARY

BISL

472

406

SIGNED BINARY-TO-BCD

BCDS

471

409

DOUBLE SIGNED
BINARY-TO-BCD

BDSL

473

412

374

373

Instrucciones de conversin

3-12-1

Seccin 3-12

BCD-A-BINARIO: BIN(023)

Funcin

Convierte los datos BCD en datos binarios.

Smbolo de diagrama de
rels

Variacio-- nes

BIN(023)

Variacio-nes

S: Canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

BIN(023)

Ejecutado una vez para diferencial ascendente

@BIN(023)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

BIN(023) convierte los datos BCD de S en datos binarios y escribe el resultado


en R.
(BCD)

374

(BIN)

Instrucciones de conversin
Indicadores

Seccin 3-12
Nombre

Etique
Operacin
ta
ER
ON si el contenido de S no es BCD.

Indicador de
error

OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON si el resultado es 0000.
OFF en todos los dems casos.
OFF

El diagrama siguiente muestra un ejemplo de conversin de BCD-a-binario.

Ejemplo

R
103 10 2 10 1 100

3-12-2

163 162 161 160

BCD-A-BINARIO DOBLE: BINL(058)

Funcin

Convierte datos BCD de 8 dgitos en datos hexadecimales de 8 dgitos (binarios


de 32 bits).

Smbolo de diagrama de
rels

Variacio-- nes

BINL(058)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

BINL(058)

Ejecutado una vez para diferencial ascendente

@BINL(058)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

Subrutinas
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

No soportado

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

375

Instrucciones de conversin

Seccin 3-12
rea
Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

BINL(058) convierte los datos BCD de 8 dgitos de S y S+1 en datos hexadecimales de 8 dgitos (binarios de 32 bits) y escribe el resultado en R y R+1.

Descripcin

S+1
(BCD)

Indicadores

Nombre

R+1

(BCD)

(BIN)

R
(BIN)

Etique
Operacin
ta
ER
ON si el contenido de S+1, S no es BCD.

Indicador de
error

OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON si el resultado es 0.
OFF en todos los dems casos.
OFF

El diagrama siguiente muestra un ejemplo de conversin de BCD-a-binario de 8


dgitos.

Ejemplos

R+1
107 106105104103 102101100

167166 165164 163162 161160

Cuando CIO 000000 est en ON en el siguiente ejemplo, el valor BCD de 8 dgitos en CIO 0010 y CIO 0011 se convierte a hexadecimal y se almacena en
D00200 y D00201.

S+1: CIO 0011


0

S: CIO 0010
0

x107 x106 x105 x104

x167 x166 x165 x164


R+1: D00201

376

x103 x102 x101 x100

x163 x162 x161 x160


R: D00200

200050=3X164+13X162+7X161+2X160

Instrucciones de conversin

3-12-3

Seccin 3-12

BINARY-A-BCD: BCD(024)

Funcin

Convierte un canal de datos binarios en uno de datos BCD.

Smbolo de diagrama de
rels

Variacio-- nes

BCD(024)

Variacio-nes

S: Canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

BCD(024)

Ejecutado una vez para diferencial ascendente

@BCD(024)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Canal fuente
S debe estar entre 0000 y 270F hexadecimal (0000 y 9999 decimal).
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

A000 a A959

A448 a A959

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

BIN(024) convierte los datos binarios de S en datos BCD y escribe el resultado


en R.
(BIN)

(BCD)

377

Instrucciones de conversin
Indicadores

Seccin 3-12
Nombre

Etique
Operacin
ta
ER
ON cuando el contenido de S excede de 270F (9999
decimal).

Indicador de
error
Indicador de
igual

OFF en todos los dems casos.


ON si el resultado es 0000.

OFF en todos los dems casos.

Precauciones

El contenido de S no debe exceder de 270F (9999 decimal).

Ejemplo

El diagrama siguiente muestra un ejemplo de conversin de BCD-a-binario.


R
16 3 162 161 160

3-12-4

103 102 101 100

BINARIO-A-BCD DOBLE: BCDL(059)

Funcin

Convierte datos hexadecimales de 8 dgitos (binarios de 32 bits) en datos BCD


de 8 dgitos.

Smbolo de diagrama de
rels

Variacio-- nes

BCDL(059)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

BCDL(059)

Ejecutado una vez para diferencial ascendente

@BCDL(059)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

S: Primer canal fuente


El contenido de S+1 y S debe estar entre 0000 0000 y 05F5 E0FF hexadecimal
(0000 0000 y 9999 9999 decimal).
rea

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

A000 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

378

Tareas de
interrupcin
OK

A448 a A958

Instrucciones de conversin

Seccin 3-12
rea
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

BCDL(059) convierte los datos hexadecimales de 8 dgitos (binarios de 32 bits)


de S y S+1 a datos BCD de 8 dgitos y escribe el resultado en R y R+1.

S+1
(BCD)

Indicadores

Nombre
Indicador de
error
Indicador de
igual

R+1

(BCD)

(BIN)

(BIN)

Etique
Operacin
ta
ER
ON si el contenido de S y S+1 excede de 05F5 E0FF
(9999 9999 decimal).
OFF en todos los dems casos.
ON si el resultado es 0.

OFF en todos los dems casos.

Precauciones

El contenido de S+1 y S no debe exceder de 05F5 E0FF (9999 9999 decimal).

Ejemplos

El diagrama siguiente muestra un ejemplo de conversin de BCD-a-binario de 8


dgitos.
R+1
167166 165164 163162 161160

107 106105104103 102101100

Cuando CIO 000000 est en ON en el siguiente ejemplo, el valor hexadecimal


en CIO 0011 y CIO 0010 se convierte a BCD y se almacena en D00200 y
D00201.

S+1: CIO 0011


MBS

x167

x166

S: CIO 0010

x165

x164

3
x163

x162

x161

LSB

x160

2X165+13X164+3X163+2X162+10=2961930
R+1: D00101
MBS

x107

x106

9
x105

R: D00100
6
x104

1
x103

9
x102

x101

x100

LSB

379

Instrucciones de conversin

3-12-5

Seccin 3-12

COMPLEMENTO A 2: NEG(160)
Calcula el complemento a 2 de un canal de datos hexadecimales.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

NEG(160)

Variacio-nes

S: Canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

NEG(160)

Ejecutado una vez para diferencial ascendente

@NEG(160)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

NEG(160) calcula el complemento a 2 de S y escribe el resultado en R. El clculo del complemento a 2 bsicamente invierte el estado de los bits de S y suma 1.
Complemento a 2
(Complemento + 1)
(S)
(R)

Nota Esta operacin (invertir el estado de bits y sumar 1) equivale a restar el contenido de S de 0000.

380

Instrucciones de conversin

Seccin 3-12

Indicadores

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

Operacin

ON si el resultado es 0000.
OFF en todos los dems casos.

Indicador de
negativo

ON si el bit 15 del resultado se pone en ON.


OFF en todos los dems casos.

Nota El resultado de 8000 hex. ser 8000 hex.


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, NEG(160) calcula
el complemento a 2 del contenido de D00100 y escribe el resultado en D00200.

Ejemplo

Clculo
real

Resta
equivalente

Invertir estado de bits


--)
Sumar 1

3-12-6

DOBLE COMPLEMENTO A 2: NEGL(161)

Funcin

Calcula el complemento a 2 de dos canales de datos hexadecimales.

Smbolo de diagrama de
rels

Variacio-- nes

NEGL(161)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

NEGL(161)

Ejecutado una vez para diferencial ascendente

@NEGL(161)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK
S

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)

381

Instrucciones de conversin

Seccin 3-12
rea
Direcciones de DM/EM
indirectas en binario

S
@ D00000 a @ D32767

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Nota R y R+1 deben estar en la misma rea de datos


Descripcin

NEGL(161) calcula el complemento a 2 de S+1 y S y escribe el resultado en R+1


y R. El clculo del complemento a 2 invierte bsicamente el estado de los bits de
S+1 y S y suma 1.
Complemento a 2
(Complemento + 1)
(S+1, S)

(R+1, R)

Nota Esta operacin (invertir el estado de los bits y sumar 1) equivale a restar el contenido de S+1 y S de 0000 0000.
Indicadores

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado es 0000 0000.

Indicador de
negativo

OFF en todos los dems casos.


ON si el bit 15 de R+1 est en ON.
OFF en todos los dems casos.

Nota El resultado de 8000 hex. ser 8000 hex.


Ejemplo

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, NEG(161) calcula


el complemento a 2 del contenido de D00101 y D00100 y escribe el resultado en
D00201 y D00200.

Clculo
real

Resta
equivalente

Invertir estado de bits


--)
Sumar 1

382

Instrucciones de conversin

3-12-7

Seccin 3-12

16-BIT A 32-BIT BINARIO CON SIGNO: SIGN(600)


Expande un valor binario con signo de 16 bits a su equivalente de 32 bits.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

SIGN(600)

Variacio-nes

S: Canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

SIGN(600)

Ejecutado una vez para diferencial ascendente

@SIGN(600)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a CIO 6142

rea de trabajo

W000 a W511

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

D00000 a D32766

rea EM sin banco

E00000 a E32767

E00000 a E32766

rea EM con banco

En_00000 a En_32767

En_00000 a En_32766

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Nota R y R+1 deben estar en la misma rea de datos


Descripcin

SIGN(600) convierte el nmero binario con signo de 16 bits de S en su equivalente binario con signo de 32 bits y escribe el resultado en R+1 y R.
La conversin se realiza copiando el contenido de S en R y escribiendo FFFF en
R+1 si el bit 15 de S es 1 o escribiendo 0000 en R+1 si el bit 15 de S es 0.

383

Instrucciones de conversin

Seccin 3-12

Canal fuente (S)


1
Si el bit 15 de S es 1, FFFF se transfiere a R+1.
Si el bit 15 de S es 0, 0000 se transfiere a R+1.

Indicadores

El contenido de S se
transfiere tal cual a R.

2o canal de resultado (R+1)


1

1er canal de resultado (R)


1

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0000 0000.


OFF en todos los dems casos.

ON si el bit 15 de R+1 est en ON.


OFF en todos los dems casos.

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SIGN(600) convierte el contenido binario con signo de 16 bits de D00100 (#8000 = --32.768
decimal) en su equivalente de 32 bits (#FFFF 8000 = --32.768 decimal) y escribe el resultado en D00201 y D00200.

Ejemplo

Ejemplo: 8000 hex.

3-12-8

DECODIFICADOR: MLPX(076)

Funcin

Lee el valor numrico del dgito especificado (o byte) en el canal fuente, pone en
ON el bit correspondiente en el canal de resultado (o rango de 16 canales) y
pone en OFF los otros bits del canal de resultado (o rango de 16 canales).

Smbolo de diagrama de
rels

Variacio-- nes

MLPX(076)

Variacio-nes

S: Canal fuente

C: Canal de control

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

MLPX(076)

Ejecutado una vez para diferencial ascendente

@MLPX(076)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

384

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Canal fuente
Los datos del canal fuente indican la ubicacin de los bits que se pondrn en
ON.
C: Canal de control
El canal de control especifica si MLPX(076) realizar una conversin del bit 4 al

Instrucciones de conversin

Seccin 3-12
16 o una conversin del bit 8 al 256, el nmero de dgitos o bytes que se van a
convertir y el dgito o byte de inicio.

Nmero de dgito:

2 1
0

Especifica el primer dgito o byte que se va a convertir


4-a-16: 0 a 3 (dgito 0 a 3)
8-a-256: 0 1 (byte 0 1)
Nmero de dgitos o bytes que se van a convertir
4-a-16: 0 a 3 (dgitos 1 a 4)
8-a-256: 0 1 (bytes 1 2)
Proceso de conversin
0: bits 4-a-16 (dgito a canal)
1: bits 8-a-256 (byte a rango de 16 canales)

R: Primer canal de resultado


Puede haber de 1 a 32 canales de resultado, dependiendo del tipo de proceso
de conversin y del nmero de dgitos o bytes que se vayan a convertir. Los canales de resultado deben estar en la misma rea de datos.
Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente

------

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MLPX(076) puede realizar conversiones de 4-a-16 bits o de 8-a-256 bits. Seleccione el dgito de la izquierda de C a 0 para especificar la conversin del bit 4 al
16 bit y a 1 para especificar la conversin del bit 8 al 256.
Conversin del bit 4-al-16
Cuando el dgito de la izquierda de C es 0, MLPX(076) toma el valor del dgito
especificado en S (0 a F) y pone en ON el bit correspondiente en el canal de

385

Instrucciones de conversin

Seccin 3-12
resultado. Los otros bits del canal de resultado se pondrn en OFF. Pueden convertirse hasta cuatro dgitos.
C
=1 (Convertir 2 dgitos).
n=2 (Comenzar con el tercer dgito).
Decodificacin de 4-a-16 bits
(El bit m de R se pone en ON).
R
R+1

Cuando se convierten dos o ms dgitos, MLPX(076) leer los dgitos de S de


derecha a izquierda y volver al dgito de la derecha despus del dgito de la
izquierda, si fuera necesario.
El siguiente diagrama muestra algunos valores de ejemplo para C y las conversiones de 4 a 16 bits que producen.
C: #0010

C: #0030

C: #0031

R+1

R+1
R+2

R+1
R+2

R+3

R+3

Conversin del bit 8-al-256


Cuando el dgito de la izquierda de C es 1, MLPX(076) toma el valor del byte
especificado en S (00 a FF) y pone en ON el bit correspondiente en el rango de
16 canales de resultado. Los otros bits de los canales de resultado se pondrn
en OFF. Pueden convertirse hasta dos bytes.
C
=1 (Convertir 2 bytes)
n=1 (Comenzar con el segundo byte).
Decodificacin de 8-a-256 bits
(El bit m de R a R+15 se pone en ON).

R+1

R+14
R+15
R+16
R+17

R+30
R+31

Cuando se estn convirtiendo dos bytes, MLPX(076) leer los bytes de S de derecha a izquierda y volver al byte de la derecha si se ha especificado el byte de
la izquierda como byte de inicio (byte 1).

386

Instrucciones de conversin

Seccin 3-12
El siguiente diagrama muestra algunos valores de ejemplo para C y las conversiones de 8 a 256 bits que producen.

C: #1010
Dgito 1

Indicadores

Nombre
Indicador de
error

Ejemplos

Etique
ta
ER

C: #1011
Dgito 0

Dgito 1

Dgito 0

Operacin
ON si C no est dentro de los rangos especificados.
OFF en todos los dems casos.

Conversin del bit 4-al-16


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MLPX(076) convierte 3 dgitos en S comenzando por el dgito 1 (el segundo dgito), tal y como
indica C (#0021). Los bits correspondientes en D00100, D00101 y D00102 se
pondrn en ON.

S
C
R

C: #

Bits 0 a 3: Dgito de inicio (Dgito 1)


Bits 4 a 7: Nmero de dgitos (3 dgitos)

Dgitos
S: 0100

R:

El dgito 1 contiene 6, de modo que el bit


6 se pone en ON.
El dgito 2 contiene A, de modo que el bit
10 se pone en ON.
El dgito 3 contiene F, de modo que el bit
15 se pone en ON.

Conversin del bit 8-al-256


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MLPX(076) convierte los 2 bytes en S comenzando por el byte 1 (el byte de la izquierda), tal y

387

Instrucciones de conversin

Seccin 3-12
como indica C (#1011). Los bits correspondientes de D00100 a D00115 y de
D00116 a D00131 se pondrn en ON.

S
C
R

Bits 0 a 3: Byte de inicio (Byte 1)

C: #

Bits 4 a 7: Nmero de bytes (2 bytes)


Byte 1

Byte 0

S: 0100

R:
El byte 1 contiene 2D, de modo
que el bit 13 (D) de R+2 se pone
en ON.

El byte 0 contiene 1A, de modo


que el bit 10 (A) de R+1 se pone
en ON.

3-12-9

CODIFICADOR: DMPX(077)

Funcin

Encuentra la ubicacin del primer o el ltimo bit en ON en el canal fuente (o el


rango de 16 canales) y escribe dicho valor en el dgito (o byte) especificado en el
canal de resultado.

Smbolo de diagrama de
rels

Variacio-- nes

DMPX(077)

Variacio-nes

S: Primer canal fuente

R: Canal de resultado

C: Canal de control

Ejecutado cada ciclo para condicin ON

DMPX(077)

Ejecutado una vez para diferencial ascendente

@DMPX(077)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

388

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Primer canal fuente


Puede haber de 1 a 32 canales fuente, dependiendo del tipo de proceso de conversin y del nmero de dgitos o bytes que se vayan a convertir. Los canales
fuente deben estar en la misma rea de datos.
R: Canal de resultado
Las ubicaciones de los bits que estaban en ON en los canales fuente se escriben en los dgitos o bytes de R comenzando por el primer dgito o byte.
C: Canal de control
El canal de control especifica si DMPX(077) realizar una conversin del bit

Instrucciones de conversin

Seccin 3-12
16-al-4 o una del 256-al-8, si se codificar el bit en ON de la izquierda o la derecha, el nmero de dgitos o bytes que se convertirn y el dgito o byte de inicio
donde se escribirn los resultados.

Nmero de dgito:

Especifica el primer dgito o byte que va a recibir los datos convertidos 16


a-4: 0 a 3 (dgito 0 a 3)
256-a-8: 0 1 (byte 0 1)
Nmero de dgitos o bytes que se van a convertir
16-a-4: 0 a 3 (dgitos 1 a 4)
256-a-8: 0 1 (bytes 1 2)
Bit a codificar
0: Bit de la izquierda (direccin de bit mas alta)
1: Bit de la derecha (direccin de bit ms baja)
Proceso de conversin
0: 16-a-4 bits (canal a dgito)
1: 256-a-8 bits (rango de 16 canales a byte)

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

---

Registros de datos

---

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

DMPX(077) puede realizar conversiones de 16-a-4 bits o de 256-a-8 bits. Seleccione el dgito de la izquierda de C a 0 para especificar la conversin del bit 16
al 4 y fjelo a 1 para especificar la conversin del bit 256 al 8.
Conversin del bit 16-al-4
Cuando el cuarto dgito (de la izquierda) de C es 0, DMPX(077) busca las ubicaciones de los bits en ON de la izquierda o la derecha en canales fuente y escribe
estas ubicaciones en R comenzando por el dgito especificado. Seleccione el

389

Instrucciones de conversin

Seccin 3-12
tercer dgito de C a 0 para buscar los bits en ON de la izquierda o 1 para buscar
los bits en ON de la derecha.

Busca el bit de la izquierda


(Direccin de bit ms alta)

=1 (Convertir
2 canales).

Decodificacin de 16-a-4 bits


(La ubicacin del bit de la izquierda (m) se escribe en R).

Bit de la izquierda

n=2 (Comenzar con el dgito 2).


R

Cuando se estn convirtiendo dos o ms dgitos, DMPX(077) escribir los valores en los dgitos de R de derecha a izquierda y volver al dgito de la derecha
despus del de la izquierda, si fuera necesario.
El siguiente diagrama muestra algunos valores de ejemplo para C y las conversiones de 16 a 4 bits que producen.

C: #0011

Dgito 3 Dgito 2 Dgito 1

C: #0030

C: #0013

Dgito 0

Dgito 3 Dgito 2

Dgito 1

Dgito 3 Dgito 2 Dgito 1

Dgito 0

Dgito 0

C: #0032

Dgito 3 Dgito 2 Dgito 1

Dgito 0

Conversin del bit 256-al-8


Cuando el cuarto dgito (de la izquierda) de C es 1, DMPX(077) busca las ubicaciones de los bits en ON de la izquierda (direccin de bit ms alta) o de la derecha (direccin de bit ms baja) en uno o dos rangos de 16 canales de canales
fuente. Las ubicaciones de estos bits se escriben en R comenzando por el byte

390

Instrucciones de conversin

Seccin 3-12
especificado. Seleccione el tercer dgito de C a 0 para buscar los bits en ON de
la izquierda o 1 para buscar los bits en ON de la derecha.

C
=0 (Convertir un rango de 16 canales).

Bit de la
izquierda

Bit de la
derecha

Busca el bit de la izquierda


(Direccin de bit ms alta)
Decodificacin de 256-a-8 bits
(La ubicacin del bit de la izquierda del
rango de 16 canales (m) se escribe en R).
n=1 (Comenzar con el byte 1).
R

Cuando se estn convirtiendo dos bytes, DMPX(077) escribir los valores en


los bytes de R de derecha a izquierda y volver al byte de la derecha si el byte de
la izquierda (byte 1) se ha especificado como byte de inicio.
El siguiente diagrama muestra algunos valores de ejemplo para C y las conversiones de 256 a 8 bits que producen.

C: #1010

Dgito 1

Indicadores

Nombre
Indicador de
error

C: #1011

Dgito 0

Dgito 1

Dgito 0

Etique
Operacin
ta
ER
ON si todos los bits de los canales fuente se han puesto
en OFF.
ON si C no est dentro de los rangos especificados.
OFF en todos los dems casos.

Ejemplos

Cuando CIO 000000 est en ON en el siguiente ejemplo, DMPX(077) busca los


bits en ON de la izquierda en CIO 0100, CIO 0101 y CIO 0102 y escribe dichas

391

Instrucciones de conversin

Seccin 3-12
ubicaciones en 3 dgitos de R comenzando por el dgito 1 (el segundo dgito), tal
y como indica C (#0021).

S
R
C

C: #
DMPX(077) busca los bits
en ON de la izquierda.
Dgito de inicio
(Dgito 1)

S:

Dgitos
R: D00100

3-12-10 CONVERTIR A ASCII: ASC(086)


Funcin

Convierte dgitos hexadecimales de 4 bits del canal fuente en sus equivalentes


ASCII de 8 bits.

Smbolo de diagrama de
rels

Variacio-- nes

ASC(086)

Variacio-nes

S: Canal fuente

Di

Di: Indicador de dgito

D: Primer canal de destino

Ejecutado cada ciclo para condicin ON

ASC(086)

Ejecutado una vez para diferencial ascendente

@ASC(086)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Canal fuente
Pueden convertirse hasta cuatro dgitos del canal fuente. Los dgitos se numeran del 0 al 3, de derecha a izquierda.
Di: Indicador de dgito
El indicador de dgito especifica los distintos parmetros de conversin, como
se muestra en el siguiente diagrama.
Nmero de dgito: 3 2 1 0
Especifica el primer dgito de S que se va a convertir (0 a 3).
Nmero de dgitos que se van a convertir (0 a 3)
0: 1 dgito
1: 2 dgitos
2: 3 dgitos
3: 4 dgitos
Primer byte de D que se va a utilizar.
0: Byte de la derecha
1: Byte de la izquierda
Paridad

392

0: Ninguna
1: Par
2: Impar

Instrucciones de conversin

Seccin 3-12
D: Primer canal de destino
Los datos ASCII convertidos se escriben en los canales de destino comenzando por el byte especificado en D. Se requerirn tres canales de destino (D a
D+3) si se estn convirtiendo 4 dgitos y el byte de la izquierda se selecciona
como el primer byte en D. Los canales de destino deben estar en la misma rea
de datos.
Los bytes de los canales de destino que no se sobrescriben con datos ASCII
permanecern intactos.

Especificaciones de
operandos

rea

Di

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ASC(086) trata el contenido de S como 4 dgitos hexadecimales, convierte los


dgitos designados de S en sus equivalentes ASCII de 8 bits y escribe estos datos en los canales de destino, comenzando por el byte especificado en D.
Di
Primer dgito a convertir

Nmero de
dgitos (n+1)
Izquierda (1)

Derecha (0)

393

Instrucciones de conversin

Seccin 3-12

Nota Consulte el Apndice A de CS1-series Programming Consoles Operation Manual (W341) (Manual de operacin de consolas de programacin de la serie
CS1) para obtener una tabla de caracteres ASCII extendidos.
Paridad
Es posible especificar la paridad de los datos ASCII para utilizarla en el control
de errores durante las transmisiones de datos. El bit de la izquierda de cada carcter ASCII se ajustar automticamente para par, impar o sin paridad.
Cuando no se designa ninguna paridad (0), el bit de la izquierda ser siempre
cero. Cuando se designa paridad par (1), el bit de la izquierda se ajustar para
que el nmero total de bits en ON sea par. Cuando se designa paridad impar (2),
el bit de la izquierda de cada carcter ASCII se ajustar para que quede un nmero impar de bits en ON. El estado del bit de paridad no afecta al significado
del cdigo ASCII.
Ejemplos de paridad par:
Cuando se ajusta para paridad par, ASCII 31 (00110001) ser B1 (10110001:
bit de paridad en ON para crear un nmero par de bits en ON); ASCII 36
(00110110) ser 36 (00110110: el bit de paridad permanece en OFF debido a
que el nmero de bits en ON ya es par).
Ejemplos de paridad impar:
Cuando se ajusta para paridad impar, ASCII 36 (00110110) ser B6
(10110110: bit de paridad puesto en ON para crear un nmero impar de bits en
ON); ASCII 46 (00110110) ser 46 (00110110: el bit de paridad permanece
en OFF debido a que el nmero de bits en ON ya es impar).
Ejemplos de Di
Cuando se estn convirtiendo dos o ms dgitos, ASC(086) leer los bytes de S
de derecha a izquierda y volver al byte de la derecha cuando sea necesario. El
siguiente diagrama muestra algunos valores de ejemplo para Di y las conversiones que producen.
Di: #0011
Dgito 3

Dgito 2

Izquierda

Dgito 1

Di: #0112
Dgito 0

Dgito 3 Dgito 2

Derecha

Dgito 1

Dgito 0

Izquierda

Di: #0030
Dgito 3

Dgito 2

Izquierda
Derecha

Izquierda

Dgito 1

Dgito 0

Derecha
Derecha

Di: #0130
Dgito 3

Dgito 2

Dgito 1

Dgito 0

Izquierda
Izquierda

Derecha
Derecha

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si el contenido de Di no est dentro de los rangos
especificados.
OFF en todos los dems casos.

Ejemplo

394

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, ASC(086) convierte tres dgitos hexadecimales de D00100 (comenzando por el dgito 1) en sus
equivalentes ASCII y escribe estos datos en D00200 y D00201 comenzando
por el byte de la izquierda en D00200. En este caso, el indicador de dgito de
#0121 no especifica ninguna paridad, el byte de inicio (durante la escritura) =

Instrucciones de conversin

Seccin 3-12
byte de la izquierda, el nmero de dgitos que se van a leer = 3 y el dgito de inicio
(durante la lectura) = dgito 1.

S
Di
D

Di: #

Nmero de dgitos
Dgito de inicio
Dgitos
S: D00100
Byte de inicio
(byte de la izquierda)

D:

3-12-11 ASCII A HEX: HEX(162)


Funcin

Convierte hasta 4 bytes de datos ASCII del canal fuente en sus equivalentes
hexadecimales y escribe estos dgitos en el canal de destino especificado.

Smbolo de diagrama de
rels

Variacio-- nes

HEX(162)

Variacio-nes

S: Primer canal fuente

Di

Di: Indicador de dgito

D: Canal de destino

Ejecutado cada ciclo para condicin ON

HEX(162)

Ejecutado una vez para diferencial ascendente

@HEX(162)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Primer canal fuente


El contenido de estos canales fuente se tratan como datos ASCII. Pueden utilizarse hasta tres canales fuente. (Sern necesarios tres canales fuente si se estn convirtiendo 4 bytes y se selecciona el byte de la izquierda como primer byte
en S). Los canales fuente deben estar en la misma rea de datos.

395

Instrucciones de conversin

Seccin 3-12
Di: Indicador de dgito
El indicador de dgito especifica los distintos parmetros de conversin, como
se muestra en el siguiente diagrama.
Nmero de dgito: 3 2 1 0
Especifica el primer dgito de D que se va a convertir (0 a 3).
Nmero de bytes que se van a convertir (0 a 3)
0: 1 dgito
1: 2 dgitos
2: 3 dgitos
3: 4 dgitos
Primer byte de S que se va a convertir.
0: Byte de la derecha
1: Byte de la izquierda
Paridad

0: Ninguna
1: Par
2: Impar

D: Canal de destino
Los dgitos hexadecimales convertidos se escriben en D de derecha a izquierda, comenzando por el primer dgito especificado. Los dgitos del canal de destino que no se sobrescriban con los datos convertidos permanecern intactos.
Especificaciones de
operandos

rea

Di

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente
DR0 a DR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

396

HEX(162) trata el contenido de los canales fuente como datos ASCII que representan dgitos hexadecimales (0 a 9 y A a F), convierte el nmero especificado
de bytes en hexadecimal y escribe los datos hexadecimales en el canal de destino comenzando en el dgito especificado.

Instrucciones de conversin

Seccin 3-12
Se producir un error si los canales fuente contienen datos que no sean equivalentes ASCII de los dgitos hexadecimales. La siguiente tabla muestra los dgitos hexadecimales y sus equivalentes ASCII (excluyendo bits de paridad).
Dgitos hexadecimales (4 bits)

Equivalente ASCII (2 dgitos hexadecimales)

0a9

30 a 39

AaF

41 a 46

Nota Consulte el Apndice A de CS1-series Programming Consoles Operation Manual (W341) para obtener una tabla de caracteres ASCII extendidos.
El siguiente diagrama muestra la operacin bsica de HEX(162) con Di=0021.

C: 0021
Di
Primer byte a convertir
Izquierda (1)

Derecha (0)

Nmero de dgitos (n+1)


Primer dgito a escribir

Paridad
Es posible especificar la paridad de los datos ASCII para utilizarla en el control
de errores durante las transmisiones de datos. El bit de la izquierda de cada byte
es el bit de paridad. Sin ninguna paridad, el bit de paridad debera ser siempre
cero, con paridad par el estado del bit de paridad debera ser un nmero par de
bits en ON y con paridad impar, el estado del bit de paridad debera ser un nmero par de bits en ON.
La siguiente tabla muestra la operacin de HEX(162) para cada seleccin de
paridad.
Seleccin de
paridad
(dgito de la
izquierda de Di)
Sin paridad (0)
Paridad par (1)
Paridad impar (2)

Operacin de HEX(162)

HEX(162) se ejecutar nicamente cuando el bit de


paridad de cada byte sea 0. Se producir un error si un bit
de paridad no es cero.
HEX(162) se ejecutar nicamente cuando exista un
nmero par de bits en ON en cada byte. Se producir un
error si un byte tiene un nmero impar de bits en ON.
HEX(162) se ejecutar nicamente cuando exista un
nmero impar de bits en ON en cada byte. Se producir un
error si un byte tiene un nmero par de bits en ON.

Ejemplos de Di
Cuando se estn convirtiendo dos o ms bytes, HEX(162) escribir los dgitos
convertidos en el canal de destino de derecha a izquierda y volver al dgito de

397

Instrucciones de conversin

Seccin 3-12
la derecha si fuera necesario. El siguiente diagrama muestra algunos valores
de ejemplo de Di y las conversiones que producen.

Di: #0112

Di: #0030

Izquierda

Izquierda
Derecha

Izquierda

Di: #0131

Derecha

Izquierda
Izquierda

Derecha

Derecha
Derecha

Dgito 3 Dgito 2

Dgito 1

Dgito 0

Dgito 3 Dgito 2

Dgito 1

Dgito 0
Dgito 3

Indicadores

Nombre

Etique
ta

Indicador de
error

ER

Dgito 2

Dgito 1

Dgito 0

Operacin
ON si existe un error de paridad en los datos ASCII.
ON si los datos ASCII de los canales fuente no
equivalen a los dgitos hexadecimales
ON si el contenido de Di no est dentro de los rangos
especificados.
OFF en todos los dems casos.

Precauciones

Se producir un error y el indicador de error se pondr en ON si se produce un


error de paridad en los datos ASCII, los datos ASCII de los canales fuente no
equivalen a los dgitos hexadecimales o el contenido de Di no est dentro de los
rangos especificados.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, HEX(162) convierte los datos ASCII en D00100 y D00101 con arreglo a las selecciones del indicador de dgito. (Di=#0121 no especifica ninguna paridad, el byte de inicio (durante la lectura) = byte de la izquierda, el nmero de bytes que se van a leer = 3 y el
dgito de inicio (durante la escritura) = dgito 1).
HEX(162) convierte tres bytes de datos ASCII (3 caracteres) comenzando por
el byte de la izquierda de D00100 en sus equivalentes hexadecimales y escribe
estos datos en D00200 comenzando por el dgito 1.

S
Di
D

Di: #
Byte de inicio
(byte de la izquierda)

S:

Nmero de dgitos
Dgito de inicio (dgito 1)
3 dgitos

D: D00200

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, HEX(162) convierte los datos ASCII en D00010 comenzando por el byte de la derecha y escribe
los equivalentes hexadecimales en D00300 comenzando por el dgito 1.

398

Instrucciones de conversin

Seccin 3-12
La seleccin del indicador de dgito de #1011 especifica paridad par, el byte de
inicio (durante la lectura) = byte de la derecha, el nmero de bytes que se van a
leer = 2 y el dgito de inicio (durante la escritura) = dgito 1.

Dgito de inicio en D: Dgito 1


Nmero de bytes: 2
Byte de inicio en S: Derecha
Paridad:
Par
Bits de paridad: Resultado de paridad par
S: D00100
Byte de inicio: derecha
Conversin
Dgito de inicio (dgito 1)
No modificado

D: D00300

Nmero de bytes (2 bytes)

No modificado

3-12-12 COLUMNA A LNEA: LINE(063)


Funcin

Convierte una columna de bits de un rango de 16 canales (el mismo nmero de


bit en 16 canales consecutivos) en los 16 bits del canal de destino.

Smbolo de diagrama de
rels

Variacio-- nes

LINE(063)

Variacio-nes

S: Primer canal fuente

N: Nmero de bit

D: Canal de destino

Ejecutado cada ciclo para condicin ON

LINE(063)

Ejecutado una vez para diferencial ascendente

@LINE(063)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

Especificaciones de
operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Primer canal fuente


Especifica el primer canal fuente. S y S+15 deben estar en la misma rea de
datos.
N: Nmero de bit
Especifica el nmero de bit (0000 a 000F o &0 a &15) que se va a copiar de los
canales fuente.
rea

rea CIO

CIO 0000 a
CIO 6128

CIO 0000 a CIO 6143

rea de trabajo

W000 a W496

W000 a W511

rea de bits de
retencin

H000 a H496

H000 a H511

399

Instrucciones de conversin

Seccin 3-12
rea
rea de bits auxiliares

S
A000 a A944

N
A000 a A959

rea de temporizador

T0000 a T4080

T0000 a T4095

rea de contador

C0000 a C4080

C0000 a C4095

rea DM

D00000 a
D32752
E00000 a
E32752
En_00000 a
En_32752

D00000 a D32767

rea EM sin banco


rea EM con banco

D
A448 a A959

E00000 a E32767
En_00000 a En_32767 (n = 0 a C)

(n = 0 a C)
@ D00000 a @ D32767

Direcciones de DM/EM
indirectas en binario

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a 000F
(binario) o &0 a
&15
DR0 a DR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

LINE(063) copia los 16 bits con el nmero N de bits del rango de 16 canales S a
S+15 al canal de destino D. El bit N de S+m se copia en el bit m de D, es decir, el
bit N de S se copia en el bit 00 de D y el bit N de S+15 se copia en el bit 15 de D.

Descripcin

Bit
15

Bit
00

S
S+1
S+2
S+3
.
.
.

0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 1

S+15

0 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0

1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1

.
.
.

.
.
.

.
.
.

Bit
15

Indicadores

Nombre
Indicador de
error

Bit
00

. . .

0 1 1 1

Etique
Operacin
ta
ER
ON si N no est dentro del rango especificado de 0000
a 000F.
OFF en todos los dems casos.

Indicador de
igual

400

ON si D es 0000 despus de la ejecucin.


OFF en todos los dems casos.

Instrucciones de conversin
Ejemplo

Seccin 3-12
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, LINE(063) copia el
bit 5 de D00100 a D00115 a los 16 bits de D00200.

N: #0005

&5

S:

D: D00200

3-12-13 LNEA A COLUMNA: COLM(064)


Funcin

Convierte los 16 bits del canal fuente en una columna de bits en un rango de 16
canales de destino (el mismo nmero de bits en 16 canales consecutivos).

Smbolo de diagrama de
rels

Variacio-- nes

COLM(064)

Variacio-nes

S: Canal fuente

D: Primer canal de destino

N: Nmero de bit

Ejecutado cada ciclo para condicin ON

COLM(064)

Ejecutado una vez para diferencial ascendente

@COLM(064)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

D: Primer canal de destino


Especifica el primer canal de destino. D y D+15 deben estar en la misma rea de
datos.
N: Nmero de bit
Especifica el nmero de bit (0000 a 000F o &0 a &15) que va a sobrescribir el
canal fuente.
rea

rea CIO

CIO 0000 a
CIO 6143

CIO 0000 a
CIO 6128

CIO 0000 a
CIO 6143

rea de trabajo

W000 a W511

W000 a W496

W000 a W511

rea de bits de
retencin

H000 a H511

H000 a H496

H000 a H511

rea de bits auxiliares

A000 a A959

A448 a A944

A000 a A959

rea de temporizador

T0000 a T4095

T0000 a T4080

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4080

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32752

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32752

E00000 a
E32767

401

Instrucciones de conversin

Seccin 3-12
rea
rea EM con banco

S
En_00000 a
En_32767

D
En_00000 a
En_32752

N
En_00000 a
En_32767

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

#0000 a #000F
(binario) o &0 a
&15
DR0 a DR15

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

COLM(064) copia los 16 bits de S a los 16 bits con el nmero de bit N en el rango
de 16 canales D a D+15. El bit m de S se copia en el bit N de D+m, es decir, el bit
00 de S se copia en el bit N de D y el bit 15 de S se copia en el bit N de D+15.

Bit
15

Bit
00

Nombre
Indicador de
error

0 1 1 1

Bi

Bit
15

Indicadores

Bit
00

D
D+1
D+2
D+3
.
.
.

0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1

D+15

0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0

1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1

.
.
.

Etique
ta
ER

.
.
.

.
.
.

Operacin
ON si N no est dentro del rango especificado de 0000
a 000F.
OFF en todos los dems casos.

Indicador de
igual

ON si el bit N es 0 en todos los 16 canales de D a D+15


despus de la ejecucin.
OFF en todos los dems casos.

402

Instrucciones de conversin
Ejemplo

Seccin 3-12
Cuando CIO 000000 se pone en ON en el siguiente ejemplo, COLM(064) copia
los 16 bits de D00200 (bits del 00 al 15) al bit 5 de D00100 hasta el D00115.

S: D00200

D:

3-12-14 BCD-A-BINARIO CON SIGNO: BINS(470)


Funcin

Convierte un canal de datos BCD con signo en otro con datos binarios con signo.

Smbolo de diagrama de
rels

Variacio-- nes

BINS(470)

Variacio-nes

C: Canal de control

S: Canal fuente

D: Canal de destino

Ejecutado cada ciclo para condicin ON

BINS(470)

Ejecutado una vez para diferencial ascendente

@BINS(470)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Canal de control
Especifica el formato BCD con signo. C debe ser de 0000 a 0003.
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

403

Instrucciones de conversin

Seccin 3-12
rea
Direcciones de DM/EM
indirectas en BCD

C
*D00000 a *D32767

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #0003

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

BINS(470) convierte los datos BCD con signo en datos binarios con signo. En
primer lugar, los datos BCD con signo y el rango del canal S se comparan con la
seleccin del canal de control (C). Si los datos fuente son correctos, los datos
BCD con signo de S se convierten a binarios con signo y se envan a D. Si los
datos fuente no son correctos, el indicador de error se pondr en ON y la instruccin no se ejecutar.

Formato BCD con signo


especificado en C
BCD con signo

Binario con signo

Cuando los datos convertidos son negativos, se envan como complemento a 2


y el indicador de negativo se pondr en ON. NEG(160) puede utilizarse para determinar el valor absoluto de un nmero binario negativo con signo. Consulte el
3-12-5 complemento a 2: NEG(160) para ms informacin.
El valor de --0 en los datos fuente se considerar 0 y no producir ningn error.
Adems, el estado de los bits 13 al 15 de S no se comprobar cuando C=0000.
Nota Algunas unidades de E/S especiales envan datos BCD con signo. Los clculos
realizados utilizando estos datos sern normalmente ms fciles si se convierten en primer lugar a datos binarios con signo con BINS(470).
El canal de control especifica el formato BCD con signo como se muestra a continuacin.
C = 0000 (Rango de datos de entrada: --999 a 999 BCD)

3 dgitos BCD, 12 bits


Bit con signo (0: Positivo; 1: Negativo)
Estado de 3 bits: 0

C = 0001 (Rango de datos de entrada: --7999 a 7999 BCD)

3 dgitos BCD, 12 bits


3 bits de dgito 4 (0 a 7)
Bit con signo (0: Positivo; 1: Negativo)

404

Instrucciones de conversin

Seccin 3-12
C = 0002 (Rango de datos de entrada: --999 a 9999 BCD)

3 dgitos BCD, 12 bits


0 a 9: Cuarto dgito BCD
F: Negativo (--)
A a E: Error

C = 0003 (Rango de datos de entrada: --1999 a 9999 BCD)

3 dgitos BCD, 12 bits


0 a 9: Cuarto dgito BCD
A: Negativo (--1)
F: Negativo (--)
B a E: Error

La siguiente tabla muestra los valores BCD posibles para cada formato BCD
con signo y los valores binarios con signo correspondientes.
Seleccin

Indicadores

Valores BCD con signo

Valores binarios con signo

C=0000

--999 a --1 y 0 a 999

FC19 a FFFF y 0000 a 03E7

C=0001

--7999 a --1 y 0 a 7999

E0C1 a FFFF y 0000 a 1F3F

C=0002

--999 a --1 y 0 a 9999

FC19 a FFFF y 0000 a 270F

C=0003

--1999 a --1 y 0 a 9999

F831 a FFFF y 0000 a 270F

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si C no est dentro del rango especificado de 0000
a 0003.
ON si C=0002 y el dgito de la izquierda de S es A a E.
ON si C=0003 y el dgito de la izquierda de S es B a E.
ON si el contenido de S no es BCD.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON si D es 0000 despus de la ejecucin.


OFF en todos los dems casos.
ON si el bit 15 de D est en ON despus de la
ejecucin.
OFF en todos los dems casos.

Ejemplos

Formato BCD 0 (C=#0000)


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el formato de los
datos BCD con signo y el rango de D00100 se comparan con el formato especificado en el canal de control (0000). Los datos fuente son correctos, de modo que
los datos BCD con signo de D00100 se convierten a binarios con signo y se envan a D00200.
S: D00100
1123

Datos BCD con signo


(--123)

D: D00200
FF85

Datos binarios con signo

Formato BCD 0 (C=#0003)


Cuando CIO 000001 se pone en ON en el siguiente ejemplo, el formato de los
datos BCD con signo y el rango de D00100 se comparan con el formato especificado en el canal de control (0003). Los datos fuente son correctos, de modo que

405

Instrucciones de conversin

Seccin 3-12
los datos BCD con signo de D00300 se convierten a binarios con signo y se envan a D00400.
S: D00300
A369

Datos BCD con


signo (--1.369)

D: D00400
FAA7

Datos binarios con


signo

3-12-15 DOBLE BCD-A-BINARIO CON SIGNO: BISL(472)


Funcin

Convierte los datos dobles BCD con signo en datos dobles binarios con signo.

Smbolo de diagrama de
rels

Variacio-- nes

BISL(472)

Variacio-nes

C: Canal de control

S: Primer canal fuente

D: Primer canal de destino

Ejecutado cada ciclo para condicin ON

BISL(472)

Ejecutado una vez para diferencial ascendente

@BISL(472)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

C: Canal de control
Especifica el formato BCD con signo. C debe ser de 0000 a 0003.
rea
rea CIO

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a CIO 6142

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A000 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

D00000 a D32766

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

W000 a W510

Direcciones de DM/EM
indirectas en BCD

En_00000 a En_32766

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

A448 a A958

E00000 a E32766

@ En_00000 a @ En_32767

406

Tareas de
interrupcin
OK

Instrucciones de conversin

Seccin 3-12
rea
Constantes

C
#0000 a #0003

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

BISL(472) convierte los datos BCD con signo dobles de S+1 y S en datos binarios con signo dobles y escribe el resultado en D+1 y D. En primer lugar, el formato de datos BCD con signo y el rango de canales S+1 y S se comparan con la
seleccin del canal de control (C). Si los datos fuente son correctos, los datos
BCD con signo S+1 y S se convierten en binarios con signo y se envan a D+1 y
D. Si los datos fuente no son correctos, el indicador de error se pondr en ON y
la instruccin no se ejecutar.

Descripcin

Formato BCD con signo


especificado en C
BCD con signo

Binario con signo

BCD con signo

Binario con signo

Cuando los datos convertidos son negativos, se envan como complemento a 2


y el indicador de negativo se pondr en ON. NEGL(161) puede utilizarse para
determinar el valor absoluto de un nmero binario negativo doble con signo.
Consulte el 3-12-6 complemento a 2 doble: NEGL(161) para ms informacin.
Los valores de --0 en los datos fuente se considerarn 0 y no producirn ningn
error. Adems, el estado de los bits 13 a 15 de S+1 no se comprobar cuando
C=0000.
Nota Algunas unidades de E/S especiales envan datos BCD con signo. Los clculos
realizados con estos datos sern normalmente ms fciles si se convierten en
primer lugar a datos binarios con signo con BISL(472).
El canal de control especifica el formato BCD con signo como se muestra a continuacin.
C = 0000 (Rango de datos de entrada: --999 9999 a 999 9999 BCD)
S+1

S
7 dgitos BCD, 28 bits
Bit con signo (0: Positivo; 1: Negativo)
Estado de 3 bits: 0

C = 0001 (Rango de datos de entrada: --7999 9999 a 7999 9999 BCD)


S+1

S
7 dgitos BCD, 28 bits
3 bits de dgito 8 (0 a 7)
Bit con signo (0: Positivo; 1: Negativo)

407

Instrucciones de conversin

Seccin 3-12
C = 0002 (Rango de datos de entrada: --999 9999 a 9999 9999 BCD)
S+1

S
7 dgitos BCD, 28 bits
0 a 9: Octavo dgito BCD
F: Negativo (--)
A a E: Error

C = 0003 (Rango de datos de entrada: --1999 9999 a 9999 9999 BCD)


S+1

S
7 dgitos BCD, 28 bits
0 a 9: Octavo dgito BCD
A: Negativo (-1)
F: Negativo (--)
B a E: Error

La siguiente tabla muestra los valores BCD posibles para cada formato BCD
con signo y los valores binarios con signo correspondientes.
Seleccin
C=0000
C=0001
C=0002
C=0003

Indicadores

Nombre
Indicador de
error

Valores BCD con signo

Valores binarios con signo

--999 9999 a --1

FF67 6981 a FFFF FFFF

0 a 999 9999

0000 0000 a 0098 967F

--7999 9999 a --1

FB3B 4C01 a FFFF FFFF

0 a 7999 9999

0000 0000 a 04C4 B3FF

--999 9999 a --1

FF67 6981 a FFFF FFFF

0 a 999 9999

0000 0000 a 05F5 E0FF

--1999 9999 a --1

FECE D301 a FFFF FFFF

0 a 999 9999

0000 0000 a 05F5 E0FF

Etique
Operacin
ta
ER
ON si C no est dentro del rango especificado de 0000 a
0003.
ON si C=0002 y el dgito de la izquierda de S+1 es A a
E.
ON si C=0003 y el dgito de la izquierda de S+1 es B a
E.
ON si el contenido de S+1 y S no es BCD.

Indicador de
igual

Indicador de
negativo

OFF en todos los dems casos.


ON si D+1 contiene 0000 0000 despus de la ejecucin.
OFF en todos los dems casos.
ON si el bit 15 de D+1 se pone en ON despus de la
ejecucin.
OFF en todos los dems casos.

Ejemplo

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el formato de los


datos BCD con signo dobles y el rango de D00101 y D00100 se comparan con el
formato especificado en el canal de control (0002). Los datos fuente son correctos, de modo que los datos BCD con signo de D00101 y D00100 se convierten a
binarios con signo dobles y se envan a D00201 y D00200.
S+1: D00101
F345

D+1: D00201
FFCB

408

S: D00100
6789

Datos BCD con signo dobles (-3.456.789)

D: D00200
40EB

Datos binarios con signo


dobles

Instrucciones de conversin

Seccin 3-12

3-12-16 BINARIO-A-BCD CON SIGNO: BCDS(471)


Funcin

Convierte un canal de datos binarios con signo en otro con datos BCD con signo.

Smbolo de diagrama de
rels

Variacio-- nes

BCDS(471)

Variacio-nes

C: Canal de control

S: Canal fuente

D: Canal de destino

Ejecutado cada ciclo para condicin ON

BCDS(471)

Ejecutado una vez para diferencial ascendente

@BCDS(471)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Canal de control
Especifica el formato BCD con signo. C debe ser de 0000 a 0003.
S: Canal fuente
Contiene los datos binarios con signo que se van a convertir. El contenido de S
debe estar dentro del rango vlido del formato BCD especificado en C.
Seleccin

Valores permitidos para S

C=0000

FC19 a FFFF o 0000 a 03E7

C=0001

E0C1 a FFFF y 0000 a 1F3F

C=0002

FC19 a FFFF o 0000 a 270F

C=0003

F831 a FFFF o 0000 a 270F

D: Canal de destino
Contiene los datos BCD con signo convertidos. Consulte la descripcin que
aparece ms abajo para obtener una explicacin de los formatos BCD.

409

Instrucciones de conversin
Especificaciones de
operandos

Seccin 3-12
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #0003

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a 1--2048 a +2047,IR5
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

BCDS(471) convierte los datos binarios con signo en datos BCD con signo. En
primer lugar, los datos binarios con signo del canal S se comprueban para verificar que estn dentro del rango vlido para el formato BCD con signo especificado en el canal de control (C). Si los datos fuente son correctos, los datos binarios
con signo de S se convierten en BCD con signo y se envan a D. Si los datos
fuente no son correctos, el indicador de error se pondr en ON y la instruccin
no se ejecutar.

Descripcin

Formato BCD con signo


especificado en C
Binario con signo

Nota

BCD con signo

1. Los valores de --0 en los datos fuente se considerarn 0 y no producirn ningn error.
2. Algunas unidades de E/S especiales requieren entradas de datos BCD con
signo. BCDS(471) puede utilizarse para convertir los datos binarios con signo y enviarlos a estas unidades.
El canal de control especifica el formato BCD con signo que se utilizar para el
resultado, como se muestra a continuacin.

410

Instrucciones de conversin

Seccin 3-12
C = 0000 (Rango de datos de salida: --999 a 999 BCD)

3 dgitos BCD, 12 bits


Bit con signo (0: Positivo; 1: Negativo)
Estado de 3 bits: 0

C = 0001 (Rango de datos de salida: --7999 a 7999 BCD)

3 dgitos BCD, 12 bits


3 bits de dgito 4 (0 a 7)
Bit con signo (0: Positivo; 1: Negativo)

C = 0002 (Rango de datos de salida: --999 a 9999 BCD)

3 dgitos BCD, 12 bits


0 a 9: Cuarto dgito BCD
F: Negativo (--)

C = 0003 (Rango de datos de salida: --1999 a 9999 BCD)

3 dgitos BCD, 12 bits


0 a 9: Cuarto dgito BCD
A: Negativo (--1)
F: Negativo (--)

La siguiente tabla muestra los posibles valores binarios con signo de cada formato BCD con signo. Puede producirse un error si los datos fuente no estn
dentro del rango permitido para el formato BCD con signo especificado.
Seleccin

Valores binarios con signo

Valores BCD con signo

C=0000

FC19 a FFFF y 0000 a 03E7

--999 a --1 y 0 a 999

C=0001

E0C1 a FFFF y 0000 a 1F3F

--7999 a --1 y 0 a 7999

C=0002

FC19 a FFFF y 0000 a 270F

--999 a --1 y 0 a 9999

C=0003

F831 a FFFF y 0000 a 270F

--1999 a --1 y 0 a 9999

411

Instrucciones de conversin
Indicadores

Seccin 3-12
Nombre

Etique
Operacin
ta
ER
ON si C no est dentro del rango especificado de 0000 a
0003.

Indicador de
error

ON si C=0000 y los datos fuente no estn dentro de los


rangos permitidos (FC19 a FFFF o 0000 a 03E7).
ON si C=0001 y los datos fuente no estn dentro de los
rangos permitidos (E0C1 a FFFF o 0000 a 1F3F).
ON si C=0002 y los datos fuente no estn dentro de los
rangos permitidos (FC19 a FFFF o 0000 a 270F).
ON si C=0003 y los datos fuente no estn dentro de los
rangos permitidos (F831 a FFFF o 0000 a 270F).
Indicador de
igual

Indicador de
negativo

OFF en todos los dems casos.


ON si D es 0000 despus de la ejecucin.
OFF en todos los dems casos.
ON si C=0000 0001 y el bit con signo del resultado se
pone en ON despus de la ejecucin.
ON si C=0002 y el dgito de la izquierda del resultado es
F.
ON si C=0003 y el dgito de la izquierda del resultado es
A o F.
OFF en todos los dems casos.

3-12-17 DOBLE BINARIO-A-BCD CON SIGNO: BDSL(473)


Funcin

Convierte los datos dobles binarios con signo en datos dobles BCD con signo.

Smbolo de diagrama de
rels

Variacio-- nes

BDSL(473)

Variacio-nes

C: Canal de control

S: Primer canal fuente

D: Primer canal de destino

Ejecutado cada ciclo para condicin ON

BDSL(473)

Ejecutado una vez para diferencial ascendente

@BDSL(473)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

Operandos

No soportado

C: Canal de control
Especifica el formato BCD con signo. C debe ser de 0000 a 0003.
S: Primer canal fuente
Los canales fuente S+1 y S contienen los datos binarios dobles con signo que
se van a convertir. Su contenido debe estar dentro del rango vlido del formato
BCD especificado en C.
Seleccin

Valores permitidos para S+1 y S

C=0000

FF67 6981 a FFFF FFFF o 0000 0000 a 0098 967F

C=0001

FB3B 4C01 a FFFF FFFF o 0000 0000 a 04C4 B3FF

C=0002

FF67 6981 a FFFF FFFF o 0000 0000 a 05F5 E0FF

C=0003

FECE D301 a FFFF FFFF o 0000 0000 a 05F5 E0FF

D: Primer canal de destino


Los canales de destino D+1 y D contienen los datos BCD dobles con signo convertidos. Consulte la descripcin que aparece ms abajo para obtener una explicacin de los formatos BCD.
Especificaciones de
operandos

rea
rea CIO
rea de trabajo

412

C
CIO 0000 a
CIO 6143
W000 a W511

S
CIO 0000 a CIO 6142
W000 a W510

Instrucciones de conversin

Seccin 3-12
rea
rea de bits de
retencin
rea de bits auxiliares

C
H000 a H511

S
H000 a H510

A000 a A959

A000 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

D00000 a D32766

rea EM sin banco


rea EM con banco

A448 a A958

E00000 a E32766
En_00000 a En_32766
(n = 0 a C)

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #0003

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

BDSL(473) convierte los datos dobles binarios con signo en datos dobles BCD
con signo. En primer lugar, los datos binarios dobles con signo de S+1 y S se
comprueban para verificar que estn dentro del rango vlido para el formato
BCD con signo especificado en el canal de control (C). Si los datos fuente son
correctos, los datos binarios dobles con signo en S+1 y S se convierten en BCD
dobles con signo y se envan a D+1 y D. Si los datos fuente no son correctos, el
indicador de error se pondr en ON y la instruccin no se ejecutar.

Descripcin

Formato BCD con signo


especificado en C

Nota

Binario con signo

BCD con signo

Binario con signo

BCD con signo

1. Los valores de --0 en los datos fuente se tratarn como 0 y no producirn


ningn error.
2. Algunas unidades de E/S especiales requieren entradas de datos BCD con
signo. BDSL(473) puede utilizarse para convertir los datos binarios con signo dobles y enviarlos a estas unidades.

413

Instrucciones de conversin

Seccin 3-12
El canal de control especifica el formato BCD con signo que se utilizar para el
resultado, como se muestra a continuacin.
C = 0000 (Rango de datos de salida: --999 9999 a 999 9999 BCD)

S+1

S
7 dgitos BCD, 28 bits
Bit con signo (0: Positivo; 1: Negativo)
Estado de 3 bits: 0

C = 0001 (Rango de datos de salida: --7999 9999 a 7999 9999 BCD)


S+1

S
7 dgitos BCD, 28 bits
3 bits de dgito 8 (0 a 7)
Bit con signo (0: Positivo; 1: Negativo)

C = 0002 (Rango de datos de salida: --999 9999 a 9999 9999 BCD)


S+1

S
7 dgitos BCD, 28 bits
0 a 9: Octavo dgito BCD
F: Negativo (--)

C = 0003 (Rango de datos de salida: --1999 9999 a 9999 9999 BCD)


S+1

S
7 dgitos BCD, 28 bits
0 a 9: Octavo dgito BCD
A: Negativo (-1)
F: Negativo (--)

La siguiente tabla muestra los posibles valores binarios dobles con signo de cada formato BCD con signo. Si los datos fuente no estn dentro del rango permitido para el formato BCD con signo especificado, se producir un error.
Seleccin
C=0000
C=0001
C=0002
C=0003

414

Valores binarios con signo

Valores BCD con signo

FF67 6981 a FFFF FFFF

--999 9999 a --1

0000 0000 a 0098 967F

0 a 999 9999

FB3B 4C01 a FFFF FFFF

--7999 9999 a --1

0000 0000 a 04C4 B3FF

0 a 7999 9999

FF67 6981 a FFFF FFFF

--999 9999 a --1

0000 0000 a 05F5 E0FF

0 a 999 9999

FECE D301 a FFFF FFFF

--1999 9999 a --1

0000 0000 a 05F5 E0FF

0 a 999 9999

Instrucciones de conversin
Indicadores

Seccin 3-12
Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si C no est dentro del rango especificado de 0000 a
0003.
ON si C=0000 y los datos fuente no estn dentro del
rango :
FF67 6981 a FFFF FFFF o 0000 0000 a 0098 967F.
ON si C=0001 y los datos fuente no estn dentro del
rango:
FB3B 4C01 a FFFF FFFF o 0000 0000 a 04C4 B3FF.
ON si C=0002 y los datos fuente no estn dentro del
rango:
FF67 6981 a FFFF FFFF o 0000 0000 a 05F5 E0FF.
ON si C=0003 y los datos fuente no estn dentro del
rango:
FECE D301 a FFFF FFFF o 0000 0000 a 05F5 E0FF.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON si D es 0000 despus de la ejecucin.


OFF en todos los dems casos.
ON si C=0000 0001 y el bit con signo del resultado se
pone en ON despus de la ejecucin.
ON si C=0002 y el dgito de la izquierda del resultado es
F.
ON si C=0003 y el dgito de la izquierda del resultado es
A o F.
OFF en todos los dems casos.

Ejemplo

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el formato de los


binarios con signo dobles D00101 y D00100 se comparan con el formato especificado en el canal de control (0003). Los datos fuente son correctos, de modo
que los datos binarios con signo de D00101 y D00100 se convierten a BCD con
signo dobles y se envan a D00201 y D00200.
S+1: D00101
FF8B

D+1: D00201
F765

S: D00100
344F

Datos binarios con signo dobles

D: D00200
4321

Datos BCD con signo dobles


(-7.654.321)

415

Instrucciones lgicas

Seccin 3-13

3-13 Instrucciones lgicas


Esta seccin describe las instrucciones que realizan operaciones lgicas en los
datos de canal.
Instruccin

Mnemnico

Cdigo de
funcin

Pgina

LOGICAL AND

ANDW

034

416

DOUBLE LOGICAL AND

ANDL

610

418

LOGICAL OR

ORW

035

419

DOUBLE LOGICAL OR

ORWL

611

421

EXCLUSIVE OR

XORW

036

423

DOUBLE EXCLUSIVE OR

XORL

612

425

EXCLUSIVE NOR

XNRW

037

426

DOUBLE EXCLUSIVE NOR

XNRL

613

428

COMPLEMENT

COM

029

430

DOUBLE COMPLEMENT

COML

614

431

3-13-1 AND LGICA: ANDW(034)


Funcin

Realiza la operacin lgica AND de los bits correspondientes en los canales de


datos y/o constantes.

Smbolo de diagrama de
rels

Variacio-- nes

ANDW(034)

Variacio-nes

I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

ANDW(034)

Ejecutado una vez para diferencial ascendente

@ANDW(034)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK
rea

reas de programa
de pasos
OK
I1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

416

No soportado.
Subrutinas

OK
I2

Tareas de
interrupcin
OK
R

A448 a A959

Instrucciones lgicas

Seccin 3-13
rea
Direcciones de DM/EM
indirectas en binario

I1
@ D00000 a @ D32767

I2

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ANDW(034) realiza la operacin lgica AND de los datos especificados en I1 e


I2 y enva el resultado a R.
La AND lgica se toma de los bits correspondientes en I 1 e I2 de forma sucesiva.
Cuando el contenido de los bits correspondientes en I1 e I 2 es 1 o cuando alguno es 0, se enva un 0 al bit correspondiente en R.
I1, I2 R

Indicadores

I1

I2

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Precauciones

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

ON cuando el bit de la izquierda de R es 1.


OFF en todos los dems casos.

Cuando se ejecute ANDW(034), el indicador de error se pondr en OFF.


Si, como resultado de AND, el contenido de R es 0000 hex., el indicador de igual
se pondr en ON.
Si, como resultado de AND, el bit de la izquierda de R es 1, el indicador de negativo se pondr en ON.

417

Instrucciones lgicas

Seccin 3-13

3-13-2 DOBLE AND LGICA: ANDL(610)


Funcin

Realiza la operacin lgica AND de los bits correspondientes en dos canales de


datos y/o constantes.

Smbolo de diagrama de
rels

Variacio-- nes

ANDL(610)

Variacio-nes

I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

ANDL(610)

Ejecutado una vez para diferencial ascendente

@ANDL(610)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

I1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Tareas de
interrupcin
OK

I2

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

418

ANDL(610) realiza la operacin lgitoma el AND lgico de los datos especificados en I1, I1+1 e I2, I2+1 y enva el resultado a R, R+1.

Instrucciones lgicas

Seccin 3-13
(I1, I1+1), (I2, I2+1) (R, R+1)

Indicadores

I1, I1+1

I2, I2+1

R, R+1

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Precauciones

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

ON cuando el bit de la izquierda de R es 1.


OFF en todos los dems casos.

Cuando se ejecute ANDL(610), el indicador de error se pondr en OFF.


Si, como resultado de AND, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si, como resultado de AND, el bit de la izquierda de R+1 es 1, el indicador de
negativo se pondr en ON.

Ejemplos

Cuando la condicin de ejecucin CIO 00000000 se pone en ON, el AND lgico


se toma de los bits correspondientes en CIO 0011, CIO 0010 y CIO 0021,
CIO 0020 y los resultados se envan a los bits correspondientes en D00201 y
D00200.

S1:
0010 CH
S1+1: 0011 CH

0020 CH
S2:
S2+1: 0021 CH

D:
D+1:

D00200
D00201

Nota: La flecha vertical indica la AND lgica.

3-13-3 OR LGICA: ORW(035)


Funcin
Smbolo de diagrama de
rels

Realiza la operacin lgica OR de los bits correspondientes en canales de datos


y/o constantes.
ORW(035)
I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

419

Instrucciones lgicas
Variacio-- nes

Seccin 3-13
Variacio-nes

Ejecutado cada ciclo para condicin ON

ORW(035)

Ejecutado una vez para diferencial ascendente

@ORW(035)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

I1

Tareas de
interrupcin
OK

I2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
@ D00000 a @ D32767

Direcciones de DM/EM
indirectas en binario

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a+2047,IR0 a --2048 a+2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

420

ORW(035) realiza la operacin lgica OR de los datos especificados en I1 e I2 y


enva el resultado a R.
La OR lgica se toma de los bits correspondientes en I1 e I2 de forma sucesiva.
Cuando uno de los bits correspondientes en I1 e I2 es 1 o cuando ambos son 0,
se enva un 0 al bit correspondiente en R.
I1 + I2 R
I1

I2

Instrucciones lgicas
Indicadores

Seccin 3-13
Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
negativo

Precauciones

Operacin

ON cuando el bit de la izquierda de R es 1.


OFF en todos los dems casos.

Cuando se ejecute ORW(035), el indicador de error se pondr en OFF.


Si, como resultado de OR, el contenido de R es 0000 hex., el indicador de igual
se pondr en ON.
Si, como resultado de OR, el bit de la izquierda de R es 1, el indicador de negativo se pondr en ON.

3-13-4 DOBLE OR LGICA: ORWL(611)


Funcin

Realiza la operacin lgica OR de los bits correspondientes en dos canales de


datos y/o constantes.

Smbolo de diagrama de
rels

Variacio-- nes

ORWL(611)

Variacio-nes

I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

ORWL(611)

Ejecutado una vez para diferencial ascendente

@ORWL(611)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK
rea

reas de programa
de pasos
OK
I1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

No soportado.
Subrutinas

OK
I2

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

421

Instrucciones lgicas

Seccin 3-13
rea
Direcciones de DM/EM
indirectas en BCD

I1
*D00000 a *D32767

I2

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ORWL(611) realiza la OR lgica de los datos especificados en I1 e I2 como datos


de dos canales y enva el resultado a R, R+1.
Cuando alguno de los bits correspondientes en I1, I1+1, I2, y I2 +1 es 1, se enva
un 1 al bit correspondiente en R+1. Cuando alguno de ellos es 0, se enva un 0
al bit correspondiente en R+1.
(I1, I1+1) + (I2, I2+1) (R, R+1)

Indicadores

I1, I1+1

I2, I2+1

R, R+1

Nombre
Indicador de
error

Precauciones

Etique
ta
ER
OFF

Indicador de
igual

Indicador de
negativo

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Cuando se ejecute ORWL(611), el indicador de error se pondr en OFF.


Si, como resultado de OR, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si, como resultado de OR, el bit de la izquierda de R+1 es 1, el indicador de negativo se pondr en ON.

Ejemplos

422

Cuando la condicin de ejecucin CIO 00000000 se pone en ON, el OR lgico


se toma de los bits correspondientes en CIO 0021, CIO 0020 y CIO 0301,

Instrucciones lgicas

Seccin 3-13
CIO 0300 y los resultados se envan a los bits correspondientes en D00501 y
D00500.
S1:
0020 CH
S1+1: 0021 CH

0300 CH
S2:
S2+1: 0301 CH

D:
D+1:

D00500
D00501

Nota: La flecha vertical indica el OR lgico.

3-13-5 OR EXCLUSIVA: XORW(036)


Funcin

Realiza la operacin lgica OR exclusiva de los bits correspondientes en canales de datos y/o constantes.

Smbolo de diagrama de
rels

Variacio-- nes

XORW(036)

Variacio-nes

I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

XORW(036)

Ejecutado una vez para diferencial ascendente

@XORW(036)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK
rea

reas de programa
de pasos
OK
I1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

No soportado.
Subrutinas

OK
I2

A000 a A959

Tareas de
interrupcin
OK
R

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

423

Instrucciones lgicas

Seccin 3-13
rea
Direcciones de DM/EM
indirectas en BCD

I1
*D00000 a *D32767

I2

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

#0000 a #FFFF

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XORW(036) realiza la OR exclusiva de los datos especificados en I1 e I2 y enva


el resultado a R.
La OR exclusiva se realiza de los bits correspondientes en I1 e I2 de forma sucesiva.
Cuando el contenido de los bits correspondientes de I1 e I2 es diferente, se
enva un 1 al bit correspondiente de R y cuando son diferentes, se enva un 0 al
bit correspondiente de R.
I1, I2 + I1, I2 R

Indicadores

Precauciones

I1

I2

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado es 0.

Indicador de
negativo

OFF en todos los dems casos.


ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Cuando se ejecute XORW(036), el indicador de error se pondr en OFF.


Si, como resultado de la operacin OR exclusiva, el contenido de R es 0000
hex., el indicador de igual se pondr en ON.
Si, como resultado de la operacin OR exclusiva, el bit de la izquierda de R es 1,
el indicador de negativo se pondr en ON.

424

Instrucciones lgicas

Seccin 3-13

3-13-6 DOBLE OR EXCLUSIVA: XORL(612)


Funcin

Realiza la operacin lgica OR exclusiva de los bits correspondientes en dos


canales de datos y/o constantes.

Smbolo de diagrama de
rels

Variacio-- nes

XORL(612)

Variacio-nes

I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

XORL(612)

Ejecutado una vez para diferencial ascendente

@XORL(612)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

I1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Tareas de
interrupcin
OK

I2

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XORL(612) realiza la OR exclusiva de los datos especificados en I1 e I2 como


datos de dos canales y enva el resultado a R, R+1.

425

Instrucciones lgicas

Seccin 3-13
Cuando el contenido de alguno de los bits correspondientes en I1, I1+1, I2 y I2
+1 es 1, se enva un 1 al bit correspondiente en R, R+1. Cuando alguno de
ellos es igual, se enva un 0 al bit correspondiente en R, R+1.
(I1, I1+1), (I2, I2+1) + (I1, I1+1), (I2, I2+1) (R, R+1)

Indicadores

I1, I1+1

I2, I2+1

R, R+1

Nombre

Etique
ta

Operacin

Indicador de
error
Indicador de
igual

ER

OFF

ON si el resultado es 0.

Indicador de
negativo

OFF en todos los dems casos.


ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Precauciones

Cuando se ejecute XORL(612), el indicador de error se pondr en OFF.


Si, como resultado de la OR exclusiva, el contenido de R, R+1 es 00000000
hex., el indicador de igual se pondr en ON.
Si, como resultado de la OR exclusiva, el bit de la izquierda de R+1 es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando la condicin de ejecucin CIO 00000000 es ON, se realiza la OR exclusiva de los bits correspondientes en CIO 0901, CIO 0900 y D01001, D01000
y los resultados se envan a los bits correspondientes en D01201 y D01200.
S:
0900 CH
S1+1: 0901 CH

S:
D01000
S2+1: D01001

D:
D+1:

D01200
D01201

Nota: El smbolo indica OR exclusiva.

3-13-7 NOR EXCLUSIVA: XNRW(037)


Funcin
Smbolo de diagrama de
rels

426

Realiza la oepracin lgica NOR exclusiva de los canales correspondientes de


datos y/o constantes.
XNRW(037)
I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Instrucciones lgicas
Variacio-- nes

Seccin 3-13
Variacio-nes

Ejecutado cada ciclo para condicin ON

XNRW(037)

Ejecutado una vez para diferencial ascendente

@XNRW(037)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

Subrutinas
OK

I1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

No soportado.

Tareas de
interrupcin
OK

I2

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XNRW(037) realiza la NOR exclusiva de los datos especificados en I1 e I2 y enva el resultado a R.


La NOR exclusiva se toma de los bits correspondientes en I1 e I2 de forma sucesiva.
Cuando el contenido de los bits correspondientes de I1 e I2 es diferente, se
enva un 0 al bit correspondiente de R y cuando son diferentes, se enva un 1 al
bit correspondiente de R.

427

Instrucciones lgicas

Seccin 3-13
I1, I2 + I1, I2 R

Indicadores

I1

I2

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

ON si el resultado es 0.
OFF en todos los dems casos.

Indicador de
negativo

Precauciones

Operacin

ON cuando el bit de la izquierda de R es 1.


OFF en todos los dems casos.

Cuando se ejecute XNRW(037), el indicador de error se pondr en OFF.


Si, como resultado de NOR, el contenido de R es 0000 hex., el indicador de igual
se pondr en ON.
Si, como resultado de NOR, el bit de la izquierda de R es 1, el indicador de negativo se pondr en ON.

3-13-8 DOBLE NOR EXCLUSIVA: XNRL(613)


Funcin

Realiza la operacin lgica NOR exclusiva de los bits correspondientes en dos


canales de datos y/o constantes.

Smbolo de diagrama de
rels

Variacio-- nes

XNRL(613)

Variacio-nes

I1

I1: Entrada 1

I2

I2: Entrada 2

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

XNRL(613)

Ejecutado una vez para diferencial ascendente

@XNRL(613)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

428

reas de programa
de bloques
OK
rea

reas de programa
de pasos
OK
I1

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W 510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

A000 a A958

No soportado.
Subrutinas

OK
I2

Tareas de
interrupcin
OK
R

A448 a A958

Instrucciones lgicas

Seccin 3-13
rea
rea EM con banco

I1
En_00000 a En_32766

I2

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

XNRL(613) realiza la NOR exclusiva de los datos especificados en I1 e I2 y enva el resultado a R, R+1.
Cuando el contenido de alguno de los bits correspondientes en I1, I1+1, I2 y I2
+1 es diferente, se enva un 0 al bit correspondiente en R, R+1. Cuando alguno
de ellos es igual, se enva un 1 al bit correspondiente en R, R+1.
(I1, I1+1), (I2, I2+1) + (I1, I1+1), (I2, I2+1) (R, R+1)

Indicadores

Precauciones

I1, I1+1

I2, I2+1

R, R+1

Nombre

Etique
ta

Operacin

Indicador de
error
Indicador de
igual

ER

OFF

ON si el resultado es 0.

Indicador de
negativo

OFF en todos los dems casos.


ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Cuando se ejecute XNRL(613), el indicador de error se pondr en OFF.


Si, como resultado de la NOR exclusiva, el contenido de R, R+1 es 00000000
hex., el indicador de igual se pondr en ON.
Si, como resultado de la NOR exclusiva, el bit de la izquierda de R+1 es 1, el
indicador de negativo se pondr en ON.

Ejemplos

Cuando la condicin de ejecucin CIO 00000000 se pone en ON, la NOR exclusiva se toma de los bits correspondientes en CIO 0801, CIO 0800 y CIO 0101,

429

Instrucciones lgicas

Seccin 3-13
CIO 0100 y los resultados se envan a los bits correspondientes en D00501 y
D00500.
S1:
0800 CH
S1+1: 0801 CH

0100 CH
S2:
S2+1: 0101 CH

D:
D+1:

D00500
D00501

Nota: El smbolo indica NOR lgico exclusivo.

3-13-9 COMPLEMENTO: COM(029)


Funcin

Pone en OFF todos los bits en ON y viceversa, en Wd.

Smbolo de diagrama de
rels

COM(029)
Wd

Variacio-- nes

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

COM(029)

Ejecutado una vez para diferencial ascendente

@COM(029)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

rea

Wd

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

430

Tareas de
interrupcin
OK

Instrucciones lgicas

Seccin 3-13
rea
Constantes

---

Wd

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

COM(029) invierte el estado de todos los bits especificados en Wd.


WdWd: 1 0 y 0 1

Descripcin

Nota Cuando utilice la instruccin COM, tenga en cuenta que el estado de cada bit
cambiar cada ciclo en el que la condicin de ejecucin sea ON.
Indicadores

Nombre
Indicador de
error
Indicador de
igual
Indicador de
negativo

Etique
ta
ER
OFF
=

Operacin

ON si el resultado es 0.
OFF en todos los dems casos.

ON cuando el bit de la izquierda de R es 1.


OFF en todos los dems casos.

Precauciones

Cuando se ejecute COM(029), el indicador de error se pondr en OFF.


Si, como resultado de COM, el contenido de R es 0000 hex., el indicador de
igual se pondr en ON.
Si, como resultado de COM, el bit de la izquierda de R es 1, el indicador de negativo se pondr en ON.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el estado de cada


bit de D00100 se invierte.

3-13-10 DOBLE COMPLEMENTO: COML(614)


Funcin

Pone en OFF todos los bits en ON y viceversa, en Wd y Wd+1.

Smbolo de diagrama de
rels

COML(614)
Wd

Variacio-- nes

Variacio-nes

Wd: Canal

Ejecutado cada ciclo para condicin ON

COML(614)

Ejecutado una vez para diferencial ascendente

@COML(614)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

431

Instrucciones lgicas
Especificaciones de
operandos

Seccin 3-13
rea

Wd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

COML(614) invierte el estado de todos los bits especificados en Wd y Wd+1.


(Wd+1, Wd)(Wd+1, Wd)
Nota Cuando utilice la instruccin COM, tenga en cuenta que el estado de cada bit
cambiar cada ciclo en el que la condicin de ejecucin sea ON.

Indicadores

Precauciones

Nombre

Etique
ta

Operacin

Indicador de
error

ER

OFF

Indicador de
igual

ON si el resultado es 0.

Indicador de
negativo

OFF en todos los dems casos.


ON cuando el bit de la izquierda de R es 1.
OFF en todos los dems casos.

Cuando se ejecute COML(614), el indicador de error se pondr en OFF.


Si, como resultado de COML, el contenido de R, R+1 es 00000000 hex., el indicador de igual se pondr en ON.
Si, como resultado de COML, el bit de la izquierda de R+1 es 1, el indicador de
negativo se pondr en ON.

432

Instrucciones matemticas especiales


Ejemplos

Seccin 3-14

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, el estado de cada


bit de D00100 y D00101 se invierte.

3-14 Instrucciones matemticas especiales


Esta seccin describe las instrucciones utilizadas para clculos matemticos
especiales.
Instruccin

Mnemnico

BINARY ROOT

ROTB

Cdigo de
funcin
620

Pgina

BCD SQUARE ROOT

ROOT

072

435

ARITHMETIC PROCESS

APR

069

438

FLOATING POINT DIVIDE

FDIV

079

442

BIT COUNTER

BCNT

067

446

433

3-14-1 RAZ CUADRADA BINARIA: ROTB(620)


Funcin

Calcula la raz cuadrada del contenido binario con signo de 32 bits (valor positivo) de los canales especificados y enva la parte entera del resultado al canal de
resultado especificado.

Smbolo de diagrama de
rels

Variacio-- nes

ROTB(620)

Variacio-nes

S: Primer canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

Ejecutado una vez para diferencial ascendente


Ejecutado una vez para diferencial
descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

Subrutinas
OK

ROTB(620)
@ROTB(620)
No soportado.
No soportado.
Tareas de
interrupcin
OK
R

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H511

A000 a A958

A448 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

433

Instrucciones matemticas especiales

Seccin 3-14

rea
rea EM con banco
Direcciones de DM/EM
indirectas en binario

S
En_00000 a En_32766

R
En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ROTB(620) calcula la raz cuadrada del nmero binario de 32 bits en S+1 y S y


enva la parte entera del resultado a R. El resto no entero se elimina.

S+1

Datos binarios (32 bits)

R
Datos binarios (16 bits)

El rango de datos que puede especificarse para los canales S+1 y S es de 0000
0000 a 3FFF FFFF. Si se especifica un nmero de 4000 0000 a 7FFF FFFF, se
tratar como 3FFF FFFF para el clculo de la raz cuadrada. Si el contenido de
los canales fuente es superior a 7FFF FFFF, es decir, si el bit 15 de S+1 es 1, se
producir un error.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el bit 15 de S+1 es 1 (ON).
OFF en todos los dems casos.

Indicador de
igual

ON si el resultado es 0000.

Indicador de
overflow

OF

Indicador de
underflow

UF

OFF

Indicador de
negativo

OFF

OFF en todos los dems casos.


ON si el contenido de S+1 y S es de 4000 0000 a
7FFF FFFF.
OFF en todos los dems casos.

Precauciones

434

El contenido de S+1 y S debe ser inferior a 8000 0000.


Todos los operandos de esta instruccin (S+1, S y R) se tratan como valores
binarios. Si los datos de entrada son BCD, utilice la instruccin ROOT(072).

Instrucciones matemticas especiales


Ejemplo

Seccin 3-14

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, ROTB(620) calcula la raz cuadrada de los datos en CIO 0002 y CIO 0001, y escribe la parte entera del resultado en D00100.
CIO 0002

CIO 0001

014B

5A91
Clculo de la raz cuadrada
(resto eliminado)

D00100
1234

3-14-2 RAZ CUADRADA BCD: ROOT(072)


Funcin

Calcula la raz cuadrada de un nmero BCD de 8 dgitos y enva la parte entera


del resultado al canal de resultado especificado

Smbolo de diagrama de
rels

Variacio-- nes

ROOT(072)

Variacio-nes

S: Primer canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

ROOT(072)

Ejecutado una vez para diferencial ascendente

@ROOT(072)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H511

A000 a A958

A448 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766

En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #99999999

---

(BCD)
Registros de datos

---

DR0 a DR15

435

Instrucciones matemticas especiales

Seccin 3-14

rea
Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

ROOT(072) calcula la raz cuadrada del nmero BCD de 8 bits en S+1 y S y enva la parte entera del resultado a R. El resto no entero se elimina.

S+1

Datos BCD (8 dgitos)

Indicadores

Nombre
Indicador de
error
Indicador de
igual

R
Datos BCD (4 dgitos)

Etique
Operacin
ta
ER
ON si los datos de S+1 y S no son BCD.
OFF en todos los dems casos.
=

ON si el resultado es 0000.
OFF en todos los dems casos.

Precauciones

Todos los operandos de esta instruccin (S+1, S y R) se tratan como valores


BCD. Si los datos de entrada son binarios, utilice la instruccin ROTB(620).

Ejemplos

Raz cuadrada de un nmero con 8 dgitos


Cuando CIO 000000 se pone en ON en el siguiente ejemplo, ROOT(072) calcula la raz cuadrada de los datos en D00001 y D00000, y escribe la parte entera
del resultado en D00100.
Nota Las cifras que aparecen despus de la coma decimal se dividen para nmeros
de 8 dgitos.

Dividido

Raz cuadrada de un nmero de 4 dgitos


El siguiente ejemplo muestra cmo tomar la raz cuadrada de un nmero de 4
dgitos y redondear el resultado. Este programa ejemplo calcula la raz cuadrada de un nmero de 4 dgitos en CIO 0010, redondea el resultado y lo escribe en
CIO 0011. (Bsicamente, el nmero de 4 dgitos se multiplica por 10.000 (1002)
y el resultado se divide entre 100, aumentando la precisin del clculo por un
factor de 100).
Nota Las cifras que aparecen despus de la coma decimal se redondean para nmeros de 4 dgitos.

436

Instrucciones matemticas especiales

Seccin 3-14

Los valores que aparecen


despus de la coma decimal
deben redondearse.
@BSET

@MOV

@ROOT

@MOV

4
@MOV

@MOVD

@MOVD

@INC

1, 2, 3...

1. Los futuros canales fuente (D00101 y D00100) se borran dejndolos a


0000 0000.
D00101
0 0 0

D00100
0 0 0
0000

0000

2. El nmero de 4 dgitos se mueve a D00101.

6 0

010
1

D00101
6 0 1 7

D00100
0 0 0

437

Instrucciones matemticas especiales

Seccin 3-14

3. ROOT(072) calcula la raz cuadrada de D00101 y D00100, y escribe el resultado en D00102.


D00101

D00100

6017

0000

60, 170, 000 = 7, 756.932


D00100

Clculo de la raz cuadrada


(Resto eliminado)

7756

4. D00103 y el canal de resultado CIO 0011 se borran dejndolos a


0000 0000.
D00103
0 0 0

0000

CIO 0011
0 0 0
0000

5. El resultado del clculo de la raz cuadrada se divide entre 100, escribiendo


la parte entera en CIO 0011 y enviando el resto a D00103.
D00102
7 7 5 6

CIO 0011
0 0 7

D00103
6 0 0

6. Si el contenido de D00103 es mayor que 4900, CIO 0011 aumenta en 1. Es


este caso, el resultado es 78.
5600 > 4900?
CIO 0011
0 0 7 8

3-14-3 PROCESOS ARITMTICOS: APR(069)


Funcin

Calcula el seno, el coseno o una extrapolacin lineal de los datos fuente.


La funcin de extrapolacin lineal permite que cualquier relacin entre X e Y se
aproxime a los segmentos de lnea.

Smbolo de diagrama de
rels

Variacio-- nes

APR(069)

Variacio-nes

C: Canal de control

S: Datos fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

APR(069)

Ejecutado una vez para diferencial ascendente

@APR(069)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

438

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

Instrucciones matemticas especiales


Operandos

Seccin 3-14

C: Canal de control
El valor del canal de control determina el proceso aritmtico realizado. C debe
ser #0000, #0001 o una direccin de canal.
Si C es #0000 o #0001, APR(069) calcula el seno o el coseno de S.
Si C es una direccin de canal, APR(069) extrapola el valor Y para el valor X en
S basado en coordenadas (segmentos de lnea) introducidas previamente en
una tabla que comienza en C.
S: Datos fuente
Cuando C es #0000 (funcin de seno) o #0001 (funcin de coseno), S debe estar entre 0000 y 0900 BCD (de 0,0_ a 90,0_).

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
Valores especificados
exclusivamente

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

La operacin de APR(069) depende del canal de control C. Si C es 0000 0001,


APR(069) calcula el seno o el coseno de S con S en unidades de dcimos de
grados.
Si C es una direccin de canal, APR(069) extrapola el valor Y para el valor X en
S basado en coordenadas (segmentos de lnea) introducidas previamente en
una tabla que comienza en C.
Funcin de seno (C=0000)
Cuando C es 0000, APR(069) calcula el SIN(S) y escribe el resultado en R. El
rango para S es de 0000 a 0900 BCD (de 0,0_ a 90,0_) y el rango para R es de
0000 a 9999 BCD (de 0,0000 a 0,9999). El resto del resultado que exceda del
cuarto decimal se elimina.

439

Instrucciones matemticas especiales

Seccin 3-14

Funcin de coseno (C=0001)


Cuando C es 0001, APR(069) calcula el COS(S) y escribe el resultado en R. El
rango para S es de 0000 a 0900 BCD (de 0,0_ a 90,0_) y el rango para R es de
0000 a 9999 BCD (de 0,0000 a 0,9999). El resto del resultado que exceda del
cuarto decimal se elimina.
Extrapolacin lineal
La extrapolacin lineal APR(069) se especifica cuando C es una direccin de
canal.
El contenido del canal C especifica el nmero de coordenadas en una tabla de
datos comenzando por C+2, la forma de los datos fuente y si los datos son BCD
o binarios. Los bits del 00 al 07 contienen el nmero (binario) de coordenadas
de fila menos 1, m--1. Los bits del 08 al 12 no se utilizan. El bit 13 especifica
f(x)=f(S) o f(x)=f(Xm--S): OFF especifica f(x)=f(S) y ON especifica f(x)=f(Xm--S).
El bit 14 determina si la salida es BCD o binario: OFF especifica binario y ON
especifica BCD. El bit 15 determina si la entrada es BCD o binario: OFF especifica binario y ON especifica BCD.
Nota Las coordenadas X deben estar en orden ascendente: X1 < X2 < ... < Xm.
C: 15 14 13

no utilizado. 07 06 05 04 03 02 01 00
Forma de datos fuente
1 (ON): f(x)=f(Xm--S)
0 (OFF): f(x)=f(S)

Nmero de coordenadas
menos uno (m--1)

Forma de salida
Forma de entrada

La siguiente tabla muestra la funcin de los bits en C:


Bit(s) en C

Funcin

de 0 a 7

Entrada m--1, es decir, el nmero de segmentos de lnea (m) menos1.

de 8 a 12

No utilizado Seleccionar a 0.

13

Procesamiento de datos de entrada:

14

0: S se utiliza tal cual como datos de entrada.


1: Xm--S se utiliza como los datos de entrada. Xm es el mximo valor
X.
Formato de datos de salida (0: binario, 1: BCD)

15

Formato de datos de entrada (0: binario, 1: BCD)

La siguiente tabla muestra la funcin de los bits de C+1 a C+2m +2. Introduzca
las coordenadas de los puntos finales m+1, que definen los segmentos de lnea
m. Introduzca todas las coordenadas en binario. (X0 es siempre 0, de modo que
no se introduce).
Canal

Ym

Xm (mx. valor X)

C+2

Y0

C+3

X1

Y3

C+4

Y1

Y1

C+5

X2

C+6

Y2

Y4

Y2

Y0
X
X0

440

Coordenada

C+1

X1

X2

X3

X4

Xm

C+(2m+1)

Xm (mx. valor X)

C+(2m+2)

Ym

Instrucciones matemticas especiales

Seccin 3-14

Yn = f(Xn), Y0 = f(X0)
Asegrese de que Xn--1 < Xn en todos los casos.
Introduzca todos los valores de (Xn, Yn) como datos binarios.
Indicadores

Nombre

Etique
Operacin
ta
ER
ON si C es una constante mayor que 0001.

Indicador de
error

ON si C es una direccin de canal pero las coordenadas


X no estn en orden ascendente (X 1 < X2 < ... < Xm.
ON si C es una direccin de canal y el bit 15 de C indica
la entrada BCD, pero S no es BCD.
ON si C es 0000 0001 pero S no es BCD entre 0000 y
0900.

Precauciones

Indicador de
igual

Indicador de
negativo

OFF en todos los dems casos.


ON si el resultado es 0000.
OFF en todos los dems casos.
ON si el bit 15 de R se pone en ON.
OFF en todos los dems casos.

El resultado real para SIN(90_) y COS(0_) es 1, pero 9999 (0,9999) se enviar a


R.
Se producir un error si C es una constante mayor que 0001.
Se producir un error si se especifica la extrapolacin lineal, pero las coordenadas X no estn en orden ascendente (X1 < X2 < ... < Xm).
Se producir un error si se especifica la extrapolacin lineal y la entrada BCD
(bit 15 de C en ON) pero S no es BCD.
Se producir un error si se especifica una funcin trigonomtrica (C=0000
0001) pero S no es BCD entre 0000 y 0900.

Ejemplo

Funcin de seno (C: #0000)


El siguiente ejemplo muestra APR(069) utilizado para calcular el seno de 30.
Datos fuente
0
0

S: D00000
101
100
3
0

Resultado
10--1
0

Seleccione los datos fuente en 10--1


grados. (0000 a 0900, BCD)

10--1
5

R: D00100
10--2
10--3
0
0

10--4
0

Los datos resultantes tienen cuatro


dgitos significativos, del quinto en
adelante son ignorados.
(de 0000 a 9999, BCD)

Funcin de coseno (C: #0001)


El siguiente ejemplo muestra APR(069) utilizado para calcular el coseno de 30.
(SIN(30) = 0,8660)
Datos fuente

Resultado

S: D00010
0
0

101
3

100
0

R: D00200
10--1
0

Seleccione los datos fuente en 10--1


grados. (0000 a 0900, BCD)

10--1
8

10--2
6

10--3
6

10--4
0

Los datos resultantes tienen cuatro


dgitos significativos, del quinto en
adelante son ignorados.
(de 0000 a 9999, BCD)

Extrapolacin lineal (C: Direccin de canal)


El siguiente ejemplo muestra cmo crear una extrapolacin lineal con 12 coordenadas. El bloque de datos es continuo, como debe ser, de D00000 a D00026

441

Instrucciones matemticas especiales

Seccin 3-14

(C a C + (2 12 + 2)). Los datos de entrada se toman de CIO 0010 y el resultado


se enva a CIO 0011.
Contenido

Bit
15

Coordenada

0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1

D00000 000B hex.


D00001
D00002
D00003
D00004

05F0 hex.
0000 hex.
0005 hex.
0F00 hex.

X12
Y0
X1
Y1

x=S

(m--1 = 11: 12 segmentos de lnea)

Entrada y salida binarias

D00005 001A hex. X2


D00006 0402 hex. Y2

Bit
00

D00025 05F0 hex.

X12

D00026 1F20 hex.

Y12

En este caso, el canal fuente, CIO 0010, contiene 0014 y f(0014) = 0726 se enva a R, CIO 0011.
Y
$1F20

$0F00

(x,y)

$0726
$0402

X
(0,0)

$0005

$0014

$001A

$05F0

El clculo de la extrapolacin lineal se muestra a continuacin.


Y = 0F00 + 0402 0F00 (0014 0005)
001A 0005
= 0F00 (0086 000F)
Todos los valores son decimales (hex.).

= 0726

3-14-4 DIVISIN EN COMA FLOTANTE: FDIV(079)


Funcin

Divide un nmero de coma flotante de 7 dgitos por otro. Los nmeros de coma
flotante se expresan en notacin cientfica (mantisa de 7 dgitos y exponente de
1 dgito).

Smbolo de diagrama de
rels

Variacio-- nes

FDIV(079)

Variacio-nes

Dd

Dd: Primer canal de dividendo

Dr

Dr: Primer canal de divisor

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

FDIV(079)

Ejecutado una vez para diferencial ascendente

@FDIV(079)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

442

No soportado.
No soportado.

Instrucciones matemticas especiales


reas de programa
aplicables

Seccin 3-14

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos

Subrutinas

OK

rea

OK

Dd

Tareas de
interrupcin
OK

Dr

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FDIV(079) divide el valor de coma flotante en Dd y Dd+1 por el de Dr y Dr+1 y


sita el resultado en R y R+1.

Cociente

Dr+1

Dr

R+1

Dd+1

Dd

Para representar los valores de coma flotante, los siete dgitos de la derecha se
utilizan para la mantisa y el dgito de la izquierda se utiliza para el exponente,
como se muestra en el diagrama siguiente. El dgito de la izquierda puede osci-

443

Instrucciones matemticas especiales

Seccin 3-14

lar de 0 a F; rango de exponentes positivos de 0 a 7 y rango de exponentes negativos de 8 a F (de 0 a --7). Los 7 dgitos de la derecha deben ser BCD.
Primer canal
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
1

exponente (de 0 a 7)

Segundo canal
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0

mantisa (4 dgitos de la derecha)

mantisa (3 dgitos de la izquierda)

signo de exponente 0: +
1: --

= 0,1111113 x 10--2

Dos ejemplos ms de valores de coma flotante son:


(6 = 0110 binario)
6123 4567: 0,1234567 106
B123 4567: 0,1234567 10--3 (B = 1011 binario)
La siguiente tabla muestra los valores mximo y mnimo permitidos.
Lmite

Indicadores

Hexadecimal de 8 dgitos

Coma flotante

Valor mximo

7999 9999

0,9999999 107

Valor mnimo
(Divisor y dividendo)
Valor mnimo
(Resultado)

F000 0001

0,0000001 10--7

F100 0000

0,1000000 10--7

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si la mantisa (7 dgitos de la izquierda) en Dd+1 y
Dd no es BCD.
ON si la mantisa (7 dgitos de la izquierda) en Dr+1 y Dr
no es BCD.
ON si el divisor (Dr+1 y Dr) es 0.
ON si el resultado no est entre 0,1000000 10--7 y
0,9999999 107.

Indicador de
igual

OFF en todos los dems casos.


ON si el resultado es 0.
OFF en todos los dems casos.

Precauciones

El resultado se expresa como valor de coma flotante, de modo que tiene 7 dgitos significativos. Se eliminan los dgitos del octavo en adelante.
El resultado debe estar entre 0,1000000 10--7 y 0,9999999 107.

Ejemplos

Divisin en coma flotante bsica


Cuando CIO 000000 est en ON en el siguiente ejemplo, FDIV(079) divide el
nmero de coma flotante en D00101 y D00100 entre el nmero de coma flotante
en CIO 0021 y CIO 0020, y escribe el resultado en D00301 y D00300.

D00101
A 5 6 7

D00100
0 0 0

0,5670000 10--2

CIO 0021
B 1 2 3

CIO 0020
5 6 7

0,1234567 10--3

D00301
2 4 5 9

D00300
7 0 3

0,4592703 102

Divisin en coma flotante de dos nmeros BCD


En este ejemplo, el nmero BCD de 4 dgitos en D00000 se divide entre el nmero BCD de 4 dgitos en D00001 y el resultado de coma flotante se escribe en
D00003 y D00002.

444

Instrucciones matemticas especiales

Seccin 3-14

Para realizar la divisin en coma flotante, el valor BCD en D00000 se convierte a


formato de coma flotante en D00101 y D00100, y el valor BCD en D00001 se
convierte a formato de coma flotante en D00103 y D00102.

@MOV

@MOV

@MOV

2
@MOV

1, 2, 3...

@MOVD

@MOVD

@MOVD

@MOVD

@FDIV

1. D00100 y D00102 se seleccionan a 0000.


2. D00101 y D00103 se seleccionan a 4000.
D00101
4 0 0 0

4000

D00100
0 0 0

0000

D00103
4 0 0 0

4000

D00102
0 0 0

0000

445

Instrucciones matemticas especiales

Seccin 3-14

3. MOVD(083) se utiliza para mover los dgitos de los canales fuente originales a los dgitos apropiados de los formatos de coma flotante de dos canales.
D00000
3 4 5 2
D00101
4 3 4 5

D00001
0 0 7 9
D00100
0 0 0

D00103
4 0 0 7

D00102
0 0 0

4. FDIV(079) divide el nmero de coma flotante de D00101 y D00100 entre el


nmero de coma flotante de D00103 y D00102.

D00101
4 3 4 5

D00100
0 0 0

0,3452000 104

D00103
4 0 0 7

D00102
0 0 0

0,0079000 104

D00003
2 4 3 6

D00002
6 2 0

0,4369620 102

3-14-5 CONTADOR DE BITS: BCNT(067)


Funcin

Cuenta el nmero total de bits ON de los canales especificados.

Smbolo de diagrama de
rels

Variacio-- nes

BCNT(067)

Variacio-nes

N: Nmero de canales

S: Primer canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

BCNT(067)

Ejecutado una vez para diferencial ascendente

@BCNT(067)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

Especificaciones de
operandos

446

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de canales
El nmero de canales debe ser de 0001 a FFFF (1 a 65.535 canales).
S: Primer canal fuente
S y S+(N--1) deben estar en la misma rea de datos.
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

A448 a A959

Instrucciones matemticas especiales

Seccin 3-14

rea
rea EM sin banco

N
E00000 a E32767

rea EM con banco

En_00000 a En_32767

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

#0000 a #FFFF
(binario) o &1
&65.535

---

Registros de datos

DR0 a DR15

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

DR0 a DR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

BCNT(067) cuenta el nmero total de bits en ON de todos los canales entre S y


S+(N--1) y sita el resultado en R.

N canales
a

Cuenta el nmero
de bits ON.

S+(N--1)

Resultado binario
R

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N es 0000.
ON si el resultado excede de FFFF.
OFF en todos los dems casos.

Indicador de
igual

Precauciones

ON si el resultado es 0000.
OFF en todos los dems casos.

Si N=0000 o el resultado excede de FFFF, se producir un error.

447

Instrucciones matemticas de coma flotante

Seccin 3-15

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, BCNT(067) cuenta


el nmero total de bits en ON en los 10 canales de CIO 0100 a CIO 0109 y escribe el resultado en D00100.

Ejemplo

&10

S
R

Cuenta el nmero
de bits ON (35).

23 hexadecimal
(35 decimal)

R: D00100

3-15 Instrucciones matemticas de coma flotante


Las instrucciones matemticas de coma flotante convierten los datos y realizan
operaciones aritmticas de coma flotante. Las CPU de la serie CS1 soportan las
siguientes instrucciones.
Instruccin

Formato de datos

Mnemnico

FLOATING TO 16 BIT

FIX

Cdigo de
funcin
450

Pgina

FLOATING TO 32 BIT

FIXL

451

455

16-BIT TO FLOATING

FLT

452

456

32-BIT TO FLOATING

FLTL

453

458

FLOATING POINT ADD

+F

454

459

FLOATING POINT
SUBTRACT
FLOATING POINT MULTIPLY

--F

455

461

*F

456

463

FLOATING POINT DIVIDE

/F

457

465

DEGREES TO RADIANS

RAD

458

467

RADIANS TO DEGREES

DEG

459

469

SINE

SIN

460

471

COSINE

COS

461

472

TANGENT

TAN

462

474

ARC SINE

ASIN

463

476

ARC COSINE

ACOS

464

478

ARC TANGENT

ATAN

465

480

SQUARE ROOT

SQRT

466

482

EXPONENT

EXP

467

484

LOGARITHM

LOG

468

486

EXPONENTIAL POWER

PWR

840

488

453

Los catos de coma flotante expresan los nmeros reales utilizando signo, exponente y mantisa. Cuando los datos se expresan en formato de coma flotante, se
aplica la siguiente frmula.
Nmero real = (--1)s 2e--127 (1.f)
s: Signo
e: Exponente
f: Mantisa
El formato de datos de coma flotante cumple los estndares IEEE754. Los datos se expresan en 32 bits del siguiente modo:

448

Instrucciones matemticas de coma flotante


Signo

Exponente

s
31

Datos

Seccin 3-15
Mantisa

30

23

22

N de bits

Contenido

s:signo

0: positivo; 1: negativo

e:exponente

f: mantisa

23

Los valores de los exponentes (e) varan de 0 a


255. El exponente real es el valor que
permanece despus de restar 127 de e,
originando un rango de --127 a 128. e=0 y
e=255 expresan nmeros especiales.
La parte de mantisa de los datos de coma
flotante binarios se adaptan a 2,0 > 1,f 1,0.

Nmero de dgitos

El nmero de dgitos efectivos para datos de coma flotante es 24 bits para binarios (siete dgitos decimales aproximadamente).

Datos de coma flotante

Los siguientes datos pueden expresarse mediante datos de coma flotante:


--
--3,402823 x 1038 valor --1,402398 x 10--45
0
1,402398 x 10--45 valor 3,402823 x 1038
+
No un nmero (NaN)
--1,402398 x 10--45

--

Nmeros especiales

--3,402823 x 1038

--1

1,402398 x 10--45

3,402823 x 1038

Los formatos para NaN, y 0 son como sigue:


NaN*:
+:
--:
0:

e = 255, f 0
e = 255, f = 0, s= 0
e = 255, f = 0, s= 1
e=0

*NaN (no un nmero) no es un nmero de coma flotante vlido. La ejecucin


de las instrucciones de clculo de coma flotante no resultarn en NaN.
Escritura de datos de coma
flotante

Cuando se especifique la coma flotante para el formato de datos en el display de


edicin de memoria de E/S en CX-Programmer, los nmeros decimales estndar introducidos en el display se convertirn automticamente al formato de coma flotante mostrado anteriormente (formato IEEE754) y se escribirn en la
memoria de E/S. Los datos escritos en el formato IEEE754 se convertirn automticamente al formato decimal estndar cuando se monitoricen en el display.
15

7 6

n
n+1 s

f
e

No es necesario para el usuario tener en cuenta el formato de datos IEEE754 a


la hora de leer y escribir datos de coma flotante. Slo es necesario recordar que
los valores de coma flotante ocupan dos canales cada uno.

Nmeros expresados como valores de coma flotante

Pueden utilizarse los siguientes tipos de nmeros de coma flotante.

449

Instrucciones matemticas de coma flotante

Seccin 3-15
Exponente (e)

Mantisa (f)
()
0
0

No 0

Nmero sin
normalizar

No 0 ni
todo unos
Nmero normal

Todo unos (255)


Infinito
NaN

Nota Un nmero sin normalizar es aquel cuyo valor absoluto es demasiado pequeo
para expresarse como nmero normal. Los nmeros sin normalizar tienen menos dgitos significativos. Si el resultado del clculo es un nmero sin normalizar
(incluidos los resultados intermedios), se reducir el nmero de dgitos significativos.
Nmeros normalizados

Los nmeros normalizados expresan nmeros reales. El bit con signo ser 0
para un nmero positivo y 1 para un nmero negativo.
El exponente (e) se expresar de 1 a 254 y el exponente real ser menor que
127, es decir, --126 a 127.
La mantisa (f) se expresar de 0 a 233 -- 1, y se asume que, en la mantisa real, el
bit 233 es 1 y la coma binaria va inmediatamente detrs.
Los nmeros normalizados se expresan del siguiente modo:
(--1)(signo s) x 2(exponente e)--127 x (1 + mantisa x 2--23)
Ejemplo
3130
2322
0
1 1 0 0 0 0 0 0 0 01 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Signo:
Exponente:
Mantisa:
Valor:
Nmeros sin normalizar

-128 -- 127 = 1
1 + (222 + 221) x 2--23 = 1 + (2--1 + 2--2) = 1 + 0,75 = 1,75
--1,75 x 21 = --3,5

Los nmeros sin normalizar expresan nmeros reales con valores absolutos
muy pequeos. El bit con signo ser 0 para un nmero positivo y 1 para un nmero negativo.
El exponente (e) ser 0 y el exponente real ser --126.
La mantisa (f)se expresar de 1 a 233 -- 1, y se asume que, en la mantisa real, el
bit 233 es 0 y la coma binaria va inmediatamente detrs.
Los nmeros sin normalizar se expresan del siguiente modo:
(--1)(signo s) x 2--126 x (mantisa x 2--23)
Ejemplo
3130
2322
0
0 0 0 0 0 0 0 0 0 01 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Signo:
Exponente:
Mantisa:
Valor:

---126
0 + (222 + 221) x 2--23 = 0 + (2--1 + 2--2) = 0 + 0,75 = 0,75
--0,75 x 2--126

Cero

Los valores de +0,0 y --0,0 pueden expresarse seleccionando el signo como 0


para positivo y 1 para negativo. El exponente y la mantisa sern 0. Tanto +0,0
como --0,0 equivalen a 0,0. Consulte Resultados aritmticos de coma flotante,
ms adelante, para averiguar las diferencias producidas por el signo de 0,0.

Infinito

Los valores de + y -- pueden expresarse seleccionando el signo 0 para positivo o 1 para negativo. El exponente ser 255 (28 -- 1) y la mantisa 0.

NaN

NaN (no un nmero) se produce cuando el resultado de los clculos, como


0,0/0,0, / o --, no corresponde a un nmero o a infinito. El exponente
ser 255 (28 -- 1) y la mantisa no ser 0.

450

Instrucciones matemticas de coma flotante

Seccin 3-15

Nota No hay ninguna especificacin para el signo de NaN o el valor del campo de la
mantisa (salvo distinto a 0).

Resultados aritmticos de coma flotante


Redondeo de resultados

El siguiente mtodo se utilizar para redondear los resultados cuando el nmero de dgitos del resultado preciso de la aritmtica de coma flotante sobrepasa
los dgitos significativos de las expresiones de procesamiento interno.
Si el resultado est prximo a una de dos expresiones internas de coma flotante, se utilizar la expresin ms cercana. Si el resultado est a medio camino
entre dos expresiones de coma flotante, se redondear, de modo que el ltimo
dgito de la mantisa sea 0.

Overflow, underflow y
clculos no vlidos

Los overflow se enviarn como infinito positivo o negativo, dependiendo del signo del resultado. Los underflow se enviarn como cero positivo o negativo, dependiendo del signo del resultado.
Los clculos no vlidos originarn un NaN. Los clculos no vlidos incluirn la
suma de infinito a un nmero con el signo opuesto, la resta de infinito de un nmero con el signo opuesto, la multiplicacin de cero e infinito, la divisin de cero
entre cero o la divisin de infinito entre infinito.
Es posible que el valor del resultado no sea correcto si se produce un overflow al
convertir un nmero de coma flotante en uno entero.

Precauciones en el
tratamiento de valores
especiales

Las siguientes precauciones hacen referencia al tratamiento de cero, infinito y


NaN.
La suma de cero positivo y cero negativo es cero positivo.
La diferencia entre ceros del mismo signo es cero positivo.
Si existe algn operando NaN, el resultado ser NaN.
Los ceros positivos y negativos se tratan como equivalentes en las comparaciones.
Las pruebas de equivalencia o comparacin de uno o ms NaN sern siempre
verdaderas para != y falsas para las dems instrucciones.

Resultados de clculo de coma flotante

Cuando el valor absoluto del resultado sea mayor que el valor mximo que puede expresarse para los datos de coma flotante, el indicador de overflow se pondr en ON y el resultado se enviar como . Si el resultado es positivo, se enviar como +; si es negativo, como --.
El indicador de igual slo se pondr en ON cuando el exponente (e) y la mantisa
(f) sean cero despus de un clculo. Tambin se enviar el resultado del clculo
como cero cuando el valor absoluto del resultado sea inferior al valor mnimo
que pueda expresarse para los datos de coma flotante. En ese caso, el indicador de underflow se pondr en ON.

Ejemplo

En este ejemplo de programa, las coordenadas de los ejes X e Y (x, y) tienen


contenido BCD de 4 dgitos de D00000 y D00001. La distancia (r) del origen y el
ngulo (, en grados) se encuentran y se envan a D00100 y D00101. En el resultado, se divide todo lo que se encuentra a la derecha de la coma decimal.
P (100, 100)

451

Instrucciones matemticas de coma flotante

Seccin 3-15

D00000
D00200

(1)

D00001
D00201

D00201
D00204

(2)
D00202
D00202
D00206

D00204
D00204
D00208

D00206
D00208
D00210
D00210
D00212
D00204
D00202
D00214

(3)

D00214
D00216

D00216
D00218
D00212
D00220

D00218
D00221
D00220
D00100
D00221
D00101

452

(4)

Instrucciones matemticas de coma flotante

Seccin 3-15

Clculos

Ejemplo

Distancia r = x 2 + y 2
y
ngulo = tan--1 ( x )

Distancia r =1002 + 1002 = 141,4214


100
ngulo = tan--1 (100

) = 45,0

Contenidos de DM
D00000

#0100
(BCD)

D00100

0141

D00001

#0100
(BCD)

D00101

0045

1. Esta seccin del programa convierte los datos de BCD a coma flotante.
a) El rea de datos de D00200 en adelante se utiliza como rea de trabajo.
b) En primer lugar, BIN(023) se utiliza para convertir temporalmente los datos BCD en binarios y FLT(452) para convertir los datos binarios en datos de coma flotante.
c) El valor de x convertido a datos de coma flotante se enva a D00203 y
D00202.
d) El valor de y convertido a datos de coma flotante se enva a D00205 y
D00204.
2. Con el fin de encontrar la distancia r, las instrucciones matemticas de coma flotante se utilizan para calcular la raz cuadrada de x2+y2. A continuacin, el resultado se enva a D00213 y D00212 como datos de coma flotante.
3. Para encontrar el ngulo , las instrucciones matemticas de coma flotante
se utilizan para calcular tan--1 (y/x). ATAN(465) enva el resultado en radianes, de modo que DEG(459) se utiliza para convertirlo en grados. A continuacin, el resultado se enva a D00219 y D00218 como datos de coma flotante.
4. Los datos se convierten de nuevo de coma flotante a BCD.
a) En primer lugar, FIX(450) se utiliza para convertir los datos de coma flotante en datos binarios y, a continuacin, BCD(024) se utiliza para convertir los datos binarios en datos BCD.
b) La distancia r se enva a D00100.
c) El ngulo se enva a D00101.

3-15-1 COMA FLOTANTE A 16 BIT: FIX(450)


Funcin

Convierte un valor de coma flotante de 32 bits en datos binarios con signo de 16


bits y sita el resultado en el canal de resultado especificado.

Smbolo de diagrama de
rels

Variacio-- nes

FIX(450)

Variacio-nes

S: Primer canal fuente

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

FIX(450)

Ejecutado una vez para diferencial ascendente

@FIX(450)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.
No soportado.

453

Instrucciones matemticas de coma flotante


reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

Seccin 3-15
reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H511

A000 a A958

A448 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766

En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

Registros de datos

(binario)
---

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FIX(450) convierte la parte entera del nmero de coma flotante de 32 bits de


S+1 y S (formato IEEE754) a datos binarios con signo de 16 bits y sita el resultado en R.
S+1

Datos de coma flotante (32 bits)

Datos binarios con signo (16 bits)

Slo se convierte la parte entera de los datos de coma flotante y la parte correspondiente a la fraccin se divide. La parte entera de los datos de coma flotante
debe estar en el rango de --32.768 a 32.767.
Conversiones de ejemplo:
Un valor de coma flotante de 3,5 se convierte en 3.
Un valor de coma flotante de --3,5 se convierte en --3.

454

Instrucciones matemticas de coma flotante


Indicadores

Nombre

Seccin 3-15
Etique
Operacin
ta
ER
ON si los datos de S+1 y S no son un nmero (NaN).

Indicador de
error

ON si la parte entera de S+1 y S no est dentro del


rango de --32.768 a 32.767.
OFF en todos los dems casos.

Precauciones

Indicador de
igual

Indicador de
negativo

ON si el resultado es 0000.
OFF en todos los dems casos.
ON si el bit 15 del resultado se pone en ON.
OFF en todos los dems casos.

El contenido de S+1 y S debe ser datos de coma flotante y la parte entera debe
estar en el rango de --32.768 a 32.767.

3-15-2 COMA FLOTANTE A 32-BIT: FIXL(451)


Funcin

Convierte un valor de coma flotante de 32 bits en datos binarios con signo de 32


bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

FIXL(451)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

FIXL(451)

Ejecutado una vez para diferencial ascendente

@FIXL(451)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

455

Instrucciones matemticas de coma flotante

Seccin 3-15

rea
Constantes

S
#00000000 a #FFFFFFFF

R
---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --()IR15

Descripcin

FIXL(451) convierte la parte entera del nmero de coma flotante de 32 bits de


S+1 y S (formato IEEE754) a datos binarios con signo de 32 bits y sita el resultado en R+1 y R.
S+1

Datos de coma flotante (32 bits)

R+1

Datos binarios con signo (32 bits)

Slo se convierte la parte entera de los datos de coma flotante y la parte correspondiente a la fraccin se divide. (La parte entera de los datos de coma flotante
debe estar en el rango de --2.147.483.648 a 2.147.483.647).
Conversiones de ejemplo:
Un valor de coma flotante de 2.147.483.640,5 se convierte en 2.147.483.640.
Un valor de coma flotante de --214.748.340,5 se convierte en --214.748.340.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si los datos de S+1 y S no son un nmero (NaN).
ON si la parte entera de S+1 y S no est dentro del
rango de --2.147.483.648 a 2.147.483.647.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
negativo

ON si el resultado es 0000 0000.


OFF en todos los dems casos.
ON si el bit 15 de R+1 est en ON despus de la
ejecucin.
OFF en todos los dems casos.

Precauciones

El contenido de S+1 y S deben ser datos de coma flotante y la parte entera debe
estar en el rango de --2.147.483.648 a 2.147.483.647.

3-15-3 16-BIT A COMA FLOTANTE: FLT(452)


Funcin

Convierte un valor binario con signo de 16 bits en datos de coma flotante de 32


bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

FLT(452)

Variacio-nes

S: Canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

FLT(452)

Ejecutado una vez para diferencial ascendente

@FLT(452)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

456

No soportado.
No soportado.

Instrucciones matemticas de coma flotante


reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

Seccin 3-15
reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK
R

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a CIO 6142

rea de trabajo

W000 a W511

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

D00000 a D32766

rea EM sin banco

E00000 a E32767

E00000 a E32766

rea EM con banco

En_00000 a En_32767

En_00000 a En_32766

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FLT(452) convierte el valor binario con signo de 16 bits de S en datos de coma


flotante de 32 bits (formato IEEE754) y sita el resultado en R+1 y R. Se aade
un solo 0 despus de la coma decimal del resultado de coma flotante.

R+1

Datos binarios con signo (16 bits)

Datos de coma flotante (32 bits)

Slo pueden especificarse para S los valores comprendidos dentro del rango
--32.768 a 32.767. Para convertir los datos binarios con signo fuera de dicho
rango, utilice FLTL(453).
Conversiones de ejemplo:
Un valor binario con signo de 3 se convierte en 3,0.
Un valor binario con signo de --3 se convierte en --3.0.

457

Instrucciones matemticas de coma flotante


Indicadores

Nombre

Etique
ta
ER
OFF

Indicador de
error
Indicador de
igual

Indicador de
negativo

Precauciones

Seccin 3-15
Operacin

ON si tanto el exponente como la mantisa del resultado


son 0.
OFF en todos los dems casos.
ON si el resultado es negativo.

OFF en todos los dems casos.

El contenido de S debe contener datos binarios con signo con un valor (decimal)
dentro del rango de --32.768 a 32.767.

3-15-4 32-BIT A COMA FLOTANTE: FLTL(453)


Funcin

Convierte un valor binario con signo de 32 bits en datos de coma flotante de 32


bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

FLTL(453)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

FLTL(453)

Ejecutado una vez para diferencial ascendente

@FLTL(453)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

Subrutinas
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

No soportado.

A000 a A958

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

458

Tareas de
interrupcin
OK

---

Instrucciones matemticas de coma flotante

Seccin 3-15

rea
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FLTL(453) convierte el valor binario con signo de 32 bits de S+1 y S en datos de


coma flotante de 32 bits (formato IEEE754) y sita el resultado en R+1 y R. Se
aade un solo 0 despus de la coma decimal del resultado de coma flotante.
S+1

Datos binarios con signo (32 bits)

R+1

Datos de coma flotante (32 bits)

Pueden especificarse datos binarios con signo dentro del rango de


--2.147.483.648 a 2.147.83.647 para S+1 y S. El valor de coma flotante tiene 24
dgitos binarios significativos (bits). El resultado no ser exacto si un nmero
mayor de 16.777.215 (el valor mximo que puede expresarse en 24 bits) se convierte mediante FLTL (453).
Conversiones de ejemplo:
Un valor binario con signo de 16.777.215 se convierte en 16.777.215,0.
Un valor binario con signo de --16.777.215 se convierte en --15.777.215,0.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER
OFF

Indicador de
igual

Indicador de
negativo

Operacin

ON si tanto el exponente como la mantisa del resultado


son 0.
OFF en todos los dems casos.

Precauciones

ON si el resultado es negativo.
OFF en todos los dems casos.

El resultado no ser exacto si se convierte un nmero con un valor absoluto mayor de 16.777.215 (el valor mximo que puede expresarse en 24 bits).

3-15-5 SUMA COMA FLOTANTE: +F(454)


Funcin

Suma dos nmeros de coma flotante de 32 bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

+F(454)

Variacio-nes

Au

Au: Primer canal de sumando

Ad

AD: Primer canal de sumando

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

+F(454)

Ejecutado una vez para diferencial ascendente

@+F(454)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.
No soportado.

459

Instrucciones matemticas de coma flotante


reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

Seccin 3-15
reas de programa
de pasos
OK

rea

OK

Au

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

Subrutinas

Tareas de
interrupcin
OK

Ad

A000 a A958

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

+F(454) aade el nmero de coma flotante de 32 bits de Ad+1 y Ad al nmero de


coma flotante de 32 bits de Au+1 y Au y sita el resultado en R+1 y R. (Los datos
de coma flotante deben estar en formato IEEE754).

Descripcin

Au+1

Au

Sumando (datos de coma flotante, 32 bits)

Ad+1

Ad

Sumando (datos de coma flotante, 32 bits)

R+1

Resultado (datos de coma flotante, 32 bits)

Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.
Las diferentes combinaciones de datos de sumando y de nmero adicional generarn los resultados mostrados en la siguiente tabla.

460

Instrucciones matemticas de coma flotante

Seccin 3-15
Sumando Au

Note

Sumando
Ad
0

Numrico

--

NaN

Numrico

--

Numrico

Numrico

Ver nota 1.

--

Ver nota 2.

--
NaN

--

--

Ver nota 2.

--
Ver nota 2.

1. Los resultados pueden ser cero (incluidos los underflow), un numrico, +1


o --1.
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores

Nombre
Indicador de
error

Etique
ta

Operacin

ER

ON si los datos de los sumandos Au y Ad no se


reconocen como datos de coma flotante.
ON si los datos de los sumandos Au y Ad no son un
nmero (NaN).
ON si se suman + y --.
OFF en todos los dems casos.
ON si tanto el exponente como la mantisa del resultado
son 0.

Indicador de
igual

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.

Precauciones

ON si el valor absoluto del resultado es demasiado


grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos de los sumandos (Au+1 y Au) y (Ad+1 y Ad) deben estar en el formato
de datos de coma flotante IEEE754.

3-15-6 RESTA EN COMA FLOTANTE: --F(455)


Funcin

Resta un nmero de coma flotante de 32 bits a otro y sita el resultado en los


canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

--F(455)

Variacio-nes

Mi

Mi: Primer canal de minuendo

Su

Su: Primer canal de sustraendo

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

--F(455)

Ejecutado una vez para diferencial ascendente

@--F(455)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

461

Instrucciones matemticas de coma flotante


Especificaciones de
operandos

Seccin 3-15

rea

Mi

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Su

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

+F(455) resta el nmero de coma flotante de 32 bits de Su+1 y Su al nmero de


coma flotante de 32 bits de Mi+1 y Mi y sita el resultado en R+1 y R. (Los datos
de coma flotante deben estar en formato IEEE754).

Descripcin

--

Mi+1

Mi

Minuendo (datos de coma flotante, 32 bits)

Su+1

Su

Sustraendo (datos de coma flotante, 32 bits)

R+1

Resultado (datos de coma flotante, 32 bits)

Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.
Las diferentes combinaciones de datos de minuendo y de sustraendo generarn los resultados mostrados en la siguiente tabla.

462

Instrucciones matemticas de coma flotante

Seccin 3-15
Minuendo

Note

Sustraendo

Numrico

--

Numrico

--

Numrico

Numrico

Ver nota 1.

--

NaN

--

--

Ver nota 2.

--

--
NaN

Ver nota 2.
Ver nota 2.

1. Los resultados pueden ser cero (incluidos los underflow), un numero, +1 o


--1.
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si los datos del minuendo o del sustraendo no se
reconocen como datos de coma flotante.
ON si los datos del minuendo o del sustraendo no son
un nmero (NaN).
ON si + se resta de +.
ON si + se resta de --.

Precauciones

Indicador de
igual

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.


ON si tanto el exponente como la mantisa del resultado
son 0.
OFF en todos los dems casos.
ON si el valor absoluto del resultado es demasiado
grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos del minuendo (Mi+1 y Mi) y del sustraendo (Su+1 y Su) deben estar en
formato de datos de coma flotante IEEE754.

3-15-7 MULTIPLICACIN EN COMA FLOTANTE: *F(456)


Funcin

Multiplica dos nmeros de coma flotante de 32 bits y sita el resultado en los


canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

*F(456)

Variacio-nes

Md

Md: Primer canal de multiplicando

Mr

Mr: Primer canal de multiplicador

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

*F(456)

Ejecutado una vez para diferencial ascendente

@*F(456)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

463

Instrucciones matemticas de coma flotante


Especificaciones de
operandos

Seccin 3-15

rea

Md

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Mr

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

*F(456) multiplica el nmero de coma flotante de 32 bits de Md+1 y Md por el


nmero de coma flotante de 32 bits de Mr+1 y Mr y sita el resultado en R+1 y R.
(Los datos de coma flotante deben estar en formato IEEE754).

Descripcin

Md+1

Md

Multiplicando (datos de coma flotante, 32 bits)

Mr+1

Mr

Multiplicador (datos de coma flotante, 32 bits)

R+1

Resultado (datos de coma flotante, 32 bits)

Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.
Las diferentes combinaciones de multiplicando y multiplicador generarn los resultados mostrados en la siguiente tabla.

464

Instrucciones matemticas de coma flotante

Seccin 3-15
Multiplicando

Note

Multiplica
dor
0

Numrico

--

NaN

Ver nota 2.

Ver nota 2.

Numrico

Ver nota 1.

+/--

+/--

Ver nota 2.

+/--

--

--
NaN

Ver nota 2.

+/--

--

+
Ver nota 2.

1. Los resultados pueden ser cero (incluidos los underflow), un numro, +1 o


--1.
2. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el multiplicando o el multiplicador no se
reconocen como datos de coma flotante.
ON si el multiplicando o el multiplicador no es un
nmero (NaN).
ON si se multiplican + y 0.
ON si se multiplican -- y 0.

Indicador de
igual

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.


ON si tanto el exponente como la mantisa del resultado
son 0.
OFF en todos los dems casos.

Precauciones

ON si el valor absoluto del resultado es demasiado


grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos del multiplicando (Md+1 y Md) y del multiplicador (Mr+1 y Mr) deben
estar en formato de datos de coma flotante IEEE754.

3-15-8 DIVISIN EN COMA FLOTANTE: /F(457)


Funcin

Divide un nmero de coma flotante de 32 bits por otro y sita el resultado en los
canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

/F(457)

Variacio-nes

Dd

Dd: Primer canal de dividendo

Dr

Dr: Primer canal de divisor

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

/F(457)

Ejecutado una vez para diferencial ascendente

@/F(457)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

465

Instrucciones matemticas de coma flotante


Especificaciones de
operandos

Seccin 3-15

rea

Dd

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Dr

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

/F(457) divide el nmero de coma flotante de 32 bits de Dd+1 y Dd por el nmero


de coma flotante de 32 bits de Dr+1 y Dr y sita el resultado en R+1 y R. (Los
datos de coma flotante deben estar en formato IEEE754).

Descripcin

Dd+1

Dd

Dividendo (datos de coma flotante, 32 bits)

Dr+1

Dr

Divisor (datos de coma flotante, 32 bits)

R+1

Resultado (datos de coma flotante, 32 bits)

Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.
Las diferentes combinaciones de datos de dividendo y de divisor generarn los
resultados mostrados en la siguiente tabla.

466

Instrucciones matemticas de coma flotante

Seccin 3-15
Dividendo

Note

Divisor

Numrico

--

Ver nota 3.

+/--

--

NaN

Numrico

Ver nota 1.

+/--

+/--

Ver nota 2.

Ver nota 3.

Ver nota 3.

--
NaN

Ver nota 2.

Ver nota 3.

Ver nota 3.
Ver nota 3.

1. Los resultados pueden ser cero (incluidos los underflow), un nmero, +1 o


--1.
2. Los resultados sern cero para los underflow.
3. El indicador de error se pondr en ON y la instruccin no se ejecutar.

Indicadores

Nombre
Indicador de
error

Etique
ta

Operacin

ER

ON si los datos del dividendo o del divisor no se


reconocen como datos de coma flotante.
ON si los datos del dividendo o del divisor no son un
nmero (NaN).
ON si el dividendo y el divisor son 0.
ON si el dividendo y el divisor son +/--.
OFF en todos los dems casos.
ON si tanto el exponente como la mantisa del resultado
son 0.

Indicador de
igual

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.

Precauciones

ON si el valor absoluto del resultado es demasiado


grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos del dividendo (Dd+1 y Dd) y del divisor (Dr+1 y Dr) deben estar en
formato de datos de coma flotante IEEE754.

3-15-9 GRADOS A RADIANES: RAD(458)


Funcin

Cambia un nmero de coma flotante de 32 bits de grados a radianes y sita el


resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

RAD(458)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

RAD(458)

Ejecutado una vez para diferencial ascendente

@RAD(458)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

467

Instrucciones matemticas de coma flotante


Especificaciones de
operandos

Seccin 3-15

rea

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

RAD(458) convierte el nmero de coma flotante de 32 bits de S+1 y S de grados


a radianes y sita el resultado en R y R+1. (Los datos fuente de coma flotante
deben estar en formato IEEE754).

Descripcin

S+1

Fuente (grados, datos de coma flotante de 32 bits)

R+1

Resultado (radianes, datos de coma flotante de 32 bits)

Los grados se convierten en radianes por medio de la siguiente frmula:


Grados /180 = radianes
Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.

468

Instrucciones matemticas de coma flotante


Indicadores

Nombre

Seccin 3-15
Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.

Indicador de
error

ON si los datos fuente no son un nmero (NaN).


OFF en todos los dems casos.
Indicador de
igual

Precauciones

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.


ON si el valor absoluto del resultado es demasiado
grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-10 RADIANES A GRADOS: DEG(459)


Funcin

Convierte un nmero de coma flotante de 32 bits de radianes a grados y sita el


resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

DEG(459)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

DEG(459)

Ejecutado una vez para diferencial ascendente

@DEG(459)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)

469

Instrucciones matemticas de coma flotante

Seccin 3-15

rea
Direcciones de DM/EM
indirectas en binario

S
@ D00000 a @ D32767

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a+2047,IR0 a --2048 a+2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

DEG(459) convierte el nmero de coma flotante de 32 bits de S+1 y S de radianes a grados y sita el resultado en R y R+1. (Los datos fuente de coma flotante
deben estar en formato IEEE754).

Descripcin

S+1

Fuente (radianes, datos de coma flotante de 32 bits)

R+1

Resultado (grados, datos de coma flotante de 32 bits)

Los radianes se convierten en grados por medio de la siguiente frmula:


Radianes 180/ = grados
Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.
ON si los datos fuente no son un nmero (NaN).

470

Indicador de
igual

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.


ON si tanto el exponente como la mantisa del resultado
son 0.
OFF en todos los dems casos.
ON si el valor absoluto del resultado es demasiado
grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

Instrucciones matemticas de coma flotante


Precauciones

Seccin 3-15

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-11 SENO: SIN(460)


Funcin

Calcula el seno de un nmero de coma flotante de 32 bits (en radianes) y sita el


resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

SIN(460)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

SIN(460)

Ejecutado una vez para diferencial ascendente

@SIN(460)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF
(binario)

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

471

Instrucciones matemticas de coma flotante

Seccin 3-15

SIN(460) calcula el seno del ngulo (en radianes) expresado como un valor de
coma flotante de 32 bits de S+1 y S y sita el resultado en R+1 y R.
(Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

SIN

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de


32 bits)

Especifica el ngulo deseado (--65.535 a 65.535) en radianes de S+1 y S. Si el


valor absoluto del ngulo supera 65.535, se producir un error y la instruccin
no se ejecutar. Para obtener ms informacin sobre la conversin de grados a
radianes, consulte3-15-9 DEGREES-TO-RADIANS: RAD(458).
El siguiente diagrama muestra la relacin entre el ngulo y el resultado.
R

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

S: Datos de ngulo (radin)


R: Resultado (seno)

Operacin
ON si los datos fuente no son un nmero (NaN).
ON si el valor absoluto de los datos fuente supera
65.535.
OFF en todos los dems casos.

Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow
Indicador de
underflow
Indicador de
negativo

OF

OFF

UF

OFF

ON si el resultado es negativo.

OFF en todos los dems casos.

Precauciones

OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-12 COSENO: COS(461)


Funcin
Smbolo de diagrama de
rels

472

Calcula el coseno de un nmero de coma flotante de 32 bits (en radianes) y sita


el resultado en los canales de resultado especificados.
COS(461)
S

S: Primer canal fuente

R: Primer canal de resultado

Instrucciones matemticas de coma flotante


Variacio-- nes

Variacio-nes

Seccin 3-15

Ejecutado cada ciclo para condicin ON

COS(461)

Ejecutado una vez para diferencial ascendente

@COS(461)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

COS(461) calcula el coseno del ngulo(en radianes) expresado como un valor


de coma flotante de 32 bits de S+1 y S y sita el resultado en R+1 y R.
(Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

COS

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de


32 bits)

Especifica el ngulo deseado (--65.535 a 65.535) en radianes de S+1 y S. Si el


valor absoluto del ngulo supera 65.535, se producir un error y la instruccin
no se ejecutar. Para obtener ms informacin sobre la conversin de grados a
radianes, consulte3-15-9 DEGREES-TO-RADIANS: RAD(458).

473

Instrucciones matemticas de coma flotante

Seccin 3-15

El siguiente diagrama muestra la relacin entre el ngulo y el resultado.


R

Indicadores

Nombre

Etique
Operacin
ta
ER
ON si los datos fuente no son un nmero (NaN).

Indicador de
error

Precauciones

S: Datos de ngulo (radin)


R: Resultado (coseno)

ON si el valor absoluto de los datos fuente supera


65.535.
OFF en todos los dems casos.
ON si tanto el exponente como la mantisa del resultado
son 0.

Indicador de
igual

Indicador de
overflow
Indicador de
underflow

OF

OFF en todos los dems casos.


OFF

UF

OFF

Indicador de
negativo

ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-13 TANGENTE: TAN(462)


Funcin

Calcula la tangente de un nmero de coma flotante de 32 bits (en radianes) y


sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

TAN(462)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

TAN(462)

Ejecutado una vez para diferencial ascendente

@TAN(462)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

474

reas de programa
de pasos
OK

rea

No soportado.
Subrutinas

OK
S

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

Instrucciones matemticas de coma flotante

Seccin 3-15

rea
rea de temporizador

S
T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

TAN(462) calcula la tangente del ngulo(en radianes) expresado como un valor


de coma flotante de 32 bits de S+1 y S y sita el resultado en R+1 y R.
(Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

TAN

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de


32 bits)

Especifica el ngulo deseado (--65.535 a 65.535) en radianes de S+1 y S. Si el


valor absoluto del ngulo supera 65.535, se producir un error y la instruccin
no se ejecutar. Para obtener ms informacin sobre la conversin de grados a
radianes, consulte3-15-9 DEGREES-TO-RADIANS: RAD(458).
Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .

475

Instrucciones matemticas de coma flotante

Seccin 3-15

El siguiente diagrama muestra la relacin entre el ngulo y el resultado.


R
S: Datos de ngulo (radin)
R: Resultado (tangente)

Indicadores

Nombre

Etique
ta

Indicador de
error

ER

Operacin
ON si los datos fuente no son un nmero (NaN).
ON si el valor absoluto de los datos fuente supera
65.535.
OFF en todos los dems casos.

Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow
Indicador de
underflow
Indicador de
negativo

OF

OFF

UF

OFF

ON si el resultado es negativo.

OFF en todos los dems casos.

Precauciones

OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-14 ARCO SENO: ASIN(463)


Funcin

Calcula el arco seno de un nmero de coma flotante de 32 bits y sita el resultado en los canales de resultado especificados. (La funcin de arco seno es la inversa a la funcin de seno; calcula el ngulo que produce un valor de seno dado
entre --1 y 1).

Smbolo de diagrama de
rels

Variacio-- nes

ASIN(463)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

ASIN(463)

Ejecutado una vez para diferencial ascendente

@ASIN(463)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

476

No soportado.
No soportado.

Instrucciones matemticas de coma flotante


reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

Seccin 3-15
reas de programa
de pasos
OK

rea

Subrutinas
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

Tareas de
interrupcin
OK
R

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

ASIN(463) calcula el ngulo (en radianes) del valor del seno expresado como
un nmero de coma flotante de 32 bits de S+1 y S y sita el resultado en R+1 y R.
(Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

SIN--1

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de 32 bits)

Los datos fuente deben estar entre --1,0 y 1,0. Si el valor absoluto de los datos
fuente supera 1,0, se producir un error y la instruccin no se ejecutar.
El resultado se enva a los canales R+1 y R como un ngulo (en radianes) dentro
del rango de --/2 a /2.
El siguiente diagrama muestra la relacin entre los datos de entrada y el resultado.

477

Instrucciones matemticas de coma flotante

Seccin 3-15
R
S: Datos de entrada (valor de seno)
R: Resultado (radianes)

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.
ON si los datos fuente no son un nmero (NaN).
ON si el valor absoluto de los datos fuente supera 1,0.
OFF en todos los dems casos.

Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow

OF

OFF

Indicador de
underflow
Indicador de
negativo

UF

OFF

ON si el resultado es negativo.

OFF en todos los dems casos.

Precauciones

OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-15 ARCO COSENO: ACOS(464)


Funcin

Calcula el arco coseno de un nmero de coma flotante de 32 bits y sita el resultado en los canales de resultado especificados. (La funcin de arco coseno es la
inversa a la funcin de coseno; calcula el ngulo que produce un valor de coseno dado entre --1 y 1).

Smbolo de diagrama de
rels

Variacio-- nes

ACOS(464)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

ACOS(464)

Ejecutado una vez para diferencial ascendente

@ACOS(464)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

478

No soportado.
No soportado.

Instrucciones matemticas de coma flotante


reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

Seccin 3-15
reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

ACOS(464) calcula el ngulo (en radianes) del valor del coseno expresado como un nmero de coma flotante de 32 bits de S+1 y S y sita el resultado en R+1
y R.
(Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

COS--1

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de 32 bits)

Los datos fuente deben estar entre --1,0 y 1,0. Si el valor absoluto de los datos
fuente supera 1,0, se producir un error y la instruccin no se ejecutar.
El resultado se enva a los canales R+1 y R como un ngulo (en radianes) dentro
del rango de 0 a .

479

Instrucciones matemticas de coma flotante

Seccin 3-15

El siguiente diagrama muestra la relacin entre los datos de entrada y el resultado.


R

Indicadores

Nombre
Indicador de
error

S: Datos de entrada (valor de coseno)


R: Resultado (radianes)

Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.
ON si los datos fuente no son un nmero (NaN).
ON si el valor absoluto de los datos fuente supera 1,0.
OFF en todos los dems casos.

Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.
OFF en todos los dems casos.

Indicador de
overflow
Indicador de
underflow
Indicador de
negativo

Precauciones

OF

OFF

UF

OFF

ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-16 ARCO TANGENTE: ATAN(465)


Funcin

Calcula el arco tangente de un nmero de coma flotante de 32 bits y sita el resultado en los canales de resultado especificados. (La funcin de arco tangente
es la inversa a la funcin de tangente; calcula el ngulo que produce un valor de
tangente dado).

Smbolo de diagrama de
rels

Variacio-- nes

ATAN(465)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

ATAN(465)

Ejecutado una vez para diferencial ascendente

@ATAN(465)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

480

No soportado.
No soportado.

Instrucciones matemticas de coma flotante


reas de programa
aplicables

reas de programa
de bloques
OK

Especificaciones de
operandos

Seccin 3-15
reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

ATAN(465) calcula el ngulo (en radianes) del valor de la tangente expresado


como un nmero de coma flotante de 32 bits de S+1 y S y sita el resultado en
R+1 y R.
(Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

TAN--1

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de 32 bits)

El resultado se enva a los canales R+1 y R como un ngulo (en radianes) dentro
del rango de --/2 a /2.

481

Instrucciones matemticas de coma flotante

Seccin 3-15

El siguiente diagrama muestra la relacin entre los datos de entrada y el resultado.


R
S: Datos de entrada (tangente)
R: Resultado (radianes)

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si los datos fuente no se reconocen como datos de
coma flotante.
ON si los datos fuente no son un nmero (NaN).
OFF en todos los dems casos.

Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow
Indicador de
underflow
Indicador de
negativo

OF

OFF

UF

OFF

ON si el resultado es negativo.

OFF en todos los dems casos.

Precauciones

OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-17 RAZ CUADRADA: SQRT(466)


Funcin

Calcula la raz cuadrada de un nmero de coma flotante de 32 bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

SQRT(466)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

SQRT(466)

Ejecutado una vez para diferencial ascendente

@SQRT(466)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

482

No soportado.
No soportado.

Instrucciones matemticas de coma flotante


reas de programa
aplicables

Seccin 3-15

reas de programa
de bloques
OK

Especificaciones de
operandos

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

Registros de datos

(binario)
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

SQRT(466) calcula la raz cuadrada del nmero de coma flotante de 32 bits de


S+1 y S y sita el resultado en R+1 y R. (Los datos fuente de coma flotante deben estar en formato IEEE754).

Descripcin

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante de 32 bits)

Los datos fuente deben ser positivos; si son negativos, se producir un error y la
instruccin no se ejecutar.
Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
El siguiente diagrama muestra la relacin entre los datos de entrada y el resultado.

483

Instrucciones matemticas de coma flotante

Seccin 3-15
R

S: Datos de entrada
R: Resultado

Indicadores

Nombre

Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.

Indicador de
error

ON si los datos fuente son negativos.


ON si los datos fuente no son un nmero (NaN).
OFF en todos los dems casos.
Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow

OF

Indicador de
underflow
Indicador de
negativo

UF

ON si el valor absoluto del resultado es demasiado


grande para expresarse como valor de coma flotante de
32 bits.
OFF

OFF

OFF en todos los dems casos.

Precauciones

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-18 EXPONENTE: EXP(467)


Funcin

Calcula la funcin exponencial natural (de base e) de un nmero de coma flotante de 32 bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

EXP(467)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

EXP(467)

Ejecutado una vez para diferencial ascendente

@EXP(467)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

484

reas de programa
de bloques
OK
rea

reas de programa
de pasos
OK
S

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK
R

Instrucciones matemticas de coma flotante

Seccin 3-15

rea
rea de bits de
retencin
rea de bits auxiliares

S
H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a 4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

A000 a A958

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

EXP(467) calcula la funcin exponencial natural (base e) del nmero de coma


flotante de 32 bits de S+1 y S y sita el resultado en R+1 y R. En otras palabras,
EXP(467) calcula ex (x = fuente) y sita el resultado en R+1 y R.

e
R+1

S+1

Fuente (datos de coma flotante de 32 bits)

Resultado (datos de coma flotante de 32 bits)

Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Si el valor absoluto del resultado es menor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON y el resultado se enviar como 0.
Nota La constante e es 2,718282.
El siguiente diagrama muestra la relacin entre los datos de entrada y el resultado.

485

Instrucciones matemticas de coma flotante

Seccin 3-15
R
S: Datos de entrada
R: Resultado

Indicadores

Nombre

Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.

Indicador de
error

ON si los datos fuente no son un nmero (NaN).


OFF en todos los dems casos.
Indicador de
igual

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.

Precauciones

ON si el valor absoluto del resultado es demasiado


grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
OFF

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-19 LOGARITMO: LOG(468)


Funcin

Calcula el logaritmo natural (de base e) de un nmero de coma flotante de 32


bits y sita el resultado en los canales de resultado especificados.

Smbolo de diagrama de
rels

Variacio-- nes

LOG(468)

Variacio-nes

S: Primer canal fuente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

LOG(468)

Ejecutado una vez para diferencial ascendente

@LOG(468)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

486

reas de programa
de bloques
OK
rea

reas de programa
de pasos
OK
S

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK
R

Instrucciones matemticas de coma flotante

Seccin 3-15

rea
rea de bits de
retencin
rea de bits auxiliares

S
H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

Direcciones de DM/EM
indirectas en binario

A000 a A958

A448 a A958

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#00000000 a #FFFFFFFF

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

LOG(468) calcula el logaritmo natural (base e) del nmero de coma flotante de


32 bits de S+1 y S y sita el resultado en R+1 y R.

Descripcin

loge

S+1

Fuente (datos de coma flotante de 32 bits)

R+1

Resultado (datos de coma flotante


de 32 bits)

Los datos fuente deben ser positivos; si son negativos, se producir un error y la
instruccin no se ejecutar.
Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON y el resultado se enviar como .
Nota La constante e es 2,718282.
El siguiente diagrama muestra la relacin entre los datos de entrada y el resultado.

487

Instrucciones matemticas de coma flotante

Seccin 3-15
R
S: Datos de entrada
R: Resultado

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si los datos fuente no se reconocen como datos de
coma flotante.
ON si los datos fuente son negativos.
ON si los datos fuente no son un nmero (NaN).
OFF en todos los dems casos.

Indicador de
igual

Precauciones

ON si tanto el exponente como la mantisa del resultado


son 0.

Indicador de
overflow

OF

Indicador de
underflow
Indicador de
negativo

UF

OFF en todos los dems casos.


ON si el valor absoluto del resultado es demasiado
grande para expresarse como valor de coma flotante de
32 bits.
OFF

ON si el resultado es negativo.
OFF en todos los dems casos.

Los datos fuente de S+1 y S deben estar en formato de datos de coma flotante
IEEE754.

3-15-20 POTENCIA EXPONENCIAL: PWR(840)


Funcin

Eleva un nmero de coma flotante de 32 bits a la potencia de otro nmero de


coma flotante de 32 bits.

Smbolo de diagrama de
rels

Variacio-- nes

PWR(840)

Variacio-nes

B: Primer canal de base

E: Primer canal de exponente

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

PWR(840)

Ejecutado una vez para diferencial ascendente

@PWR(840)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

488

No soportado.
No soportado.

Instrucciones matemticas de coma flotante


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-15

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

Subrutinas
OK

Tareas de
interrupcin
OK

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#00000000 a #FFFFFFFF

Constantes

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

PWR(840) eleva el nmero de coma flotante de 32 bits de B+1 y B a la potencia


del nmero de coma flotante de 32 bits de E+1 y E. En otras palabras,
PWR(840) calcula XY (X = B+1 y B; Y = E+1 y E).
Datos de exponente
E+1
B+1

E
R+1

Datos base

Por ejemplo, cuando los canales de base (B+1 y B) contienen 3,1 y los canales
de exponente (E+1 y E) contienen 3, el resultado es 3,13 o 29,791.
Si el valor absoluto del resultado es mayor que el valor mximo que puede expresarse como datos de coma flotante, el indicador de overflow se pondr en
ON.
Si el valor absoluto del resultado es menor que el valor mnimo que puede expresarse como datos de coma flotante, el indicador de underflow se pondr en
ON.

489

Instrucciones de procesamiento de datos de tabla


Indicadores

Nombre
Indicador de
error

Seccin 3-16

Etique
Operacin
ta
ER
ON si la base (B+1 y B) o el exponente (E+1 y E) no se
reconocen como datos de coma flotante.
ON si la base (B+1 y B) o el exponente (E+1 y E) no son
un nmero (NaN).
ON si la base (B+1 y B) es 0 y el exponente (E+1 y E)
es menor de 0. (Divisin por 0)
ON si la base (B+1 y B) es negativa y el exponente (E+1
y E) no es entero. (Raz de un nmero negativo)

Precauciones

Indicador de
igual

Indicador de
overflow

OF

Indicador de
underflow

UF

Indicador de
negativo

OFF en todos los dems casos.


ON si tanto el exponente como la mantisa del resultado
son 0.
OFF en todos los dems casos.
ON si el valor absoluto del resultado es demasiado
grande para expresarse como valor de coma flotante de
32 bits.
ON si el valor absoluto del resultado es demasiado
pequeo para expresarse como valor de coma flotante
de 32 bits.
ON si el resultado es negativo.
OFF en todos los dems casos.

La base (B+1 y B) y el exponente (E+1 y E) deben estar en formato de coma


flotante IEEE754.

3-16 Instrucciones de procesamiento de datos de tabla


Esta seccin describe las instrucciones utilizadas para manejar los datos de tabla, pilas y otros tipos de datos.
Instruccin

Mnemnico

SET STACK

SSET

Cdigo de
funcin
630

Pgina

PUSH ONTO STACK

PUSH

632

496

FIRST IN FIRST OUT

FIFO

633

499

LAST IN FIRST OUT

LIFO

634

502

DIMENSION RECORD TABLE

DIM

631

505

SET RECORD LOCATION

SETR

635

508

GET RECORD NUMBER

GETR

636

510

DATA SEARCH

SRCH

181

512

SWAP BYTES

SWAP

637

514

FIND MAXIMUM

MAX

182

516

FIND MINIMUM

MIN

183

519

SUM

SUM

184

522

FRAME CHECKSUM

FCS

180

526

493

Todas estas instrucciones definen o funcionan en un grupo de canales. El grupo


de canales de una pila se define mediante SSET(630), el grupo de canales de
una tabla de registros se define mediante DIM(631) y el grupo de canales utilizados en una instruccin de rango se definen independientemente en cada instruccin.

490

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Grupo
Pila
Tabla de
registros
Rango

Instrucciones de pila

Funcin

Instrucciones

Utiliza tablas de datos FIFO (primero


dentro primero fuera) o LIFO (ltimo
dentro primero fuera).
Utiliza tablas de datos compuestas
por registros. (El tamao de registro lo
define el usuario).
Utiliza un rango de canales para
buscar valores como el checksum, un
valor concreto, el valor mximo o el
valor mnimo en el rango.

SSET(630), PUSH(632),
FIFO(633) y LIFO(634)
DIM(631), SETR(635) y
GETR(636)
FCS(180), SRCH(181),
MAX(182), MIN(183),
SUM(184) y SWAP(637)

Las instrucciones de pila actan sobre tablas de datos definidas de forma especfica, denominadas pilas. Los dos primeros canales de la pila contienen la direccin de la memoria de E/S interna del ltimo canal de la pila y los dos segundos canales contienen el puntero de pila (la direccin de memoria de E/S interna
del canal que se sobrescribir mediante la siguiente instruccin PUSH(632)).
Memoria de E/S
Regin de pila

El diagrama siguiente muestra la estructura bsica de una pila.


Regin de pila

Ejemplo

Puntero

Direccin de memoria de E/S del


ltimo canal de la pila
Direccin de memoria de E/S del siguiente canal de datos (puntero de pila)

Regin de pila

Direccin de
memoria de E/S

Canales de la
regin de pila

16 canales

Regin de datos Puntero


Fin de
pila

Las siguientes instrucciones definen o actan en regiones de pila. Bsicamente, PUSH(632) almacena datos en el siguiente canal de datos disponibles en la
pila. FIFO(633) y LIFO(634) leen los datos de la pila. FIFO(633) lee el primer
canal almacenado, mientras que LIFO(634) lee el ltimo.
PUSH(632)
Almacena datos en la direccin indicada por el puntero de pila y aumenta el puntero en uno.
Pila

Pila

Puntero

A
Puntero

491

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

FIFO(633)
Lee el primer canal de datos (el ms antiguo) almacenado en la pila, desplaza
los datos restantes hacia abajo un canal y reduce el puntero en uno.
Pila

Pila

Puntero hacia el ltimo canal de la pila

Puntero

a
a

Regin de datos
Puntero

Regin de datos

Puntero

Lee el contenido de A, reduce el puntero en 1,


elimina A y desplaza los datos restantes hacia
abajo.

LIFO(634)
Lee el ltimo canal de datos (el ms reciente) almacenado en la pila. Reduce el
puntero en uno y lee los datos de esta direccin (los datos ms recientes almacenados en la pila). Los datos ledos no se borrarn.
Pila

Puntero

Pila

B
A

Puntero
Regin de datos

A es el ltimo canal almacenado en la pila.

Instrucciones de la tabla
de registros

B
A

Regin de datos

Reduce el puntero en uno y lee


el contenido de A.

Una serie de datos compuesta por ms de un registro con el mismo nmero de


canales en cada registro se denominan datos de tabla. Los datos de tabla almacenados en la memoria de E/S especfica pueden registrarse como rea de la
tabla utilizando la instruccin DIM. Pueden definirse hasta 16 tablas diferentes
con los nmeros de tabla del 0 al 15.

Nmero de tabla 0

Nmero de tabla 1

492

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

El diagrama siguiente muestra la estructura bsica de una tabla de registros.


Cada registro de la tabla tiene el mismo nmero de canales.
Tabla
Registro
Registro

Mismo nmero de canales en cada registro

Registro

Los registros de ndice (IR) pueden utilizarse para hacer referencia a la tabla
indirectamente. El clculo de direccin del registro puede crearse fcilmente
utilizando la instruccin SETR(635) (SET RECORD NUMBER) y GETR(636)
(GET RECORD NUMBER).
Instrucciones de rango

Rango especificado
en la instruccin

Las instrucciones de rango incluidas aqu actan en un rango especfico de canales para encontrar el valor mximo o mnimo, buscar un valor concreto, calcular la suma o FCS o intercambiar el contenido de los bytes de la derecha o la
izquierda de los canales.
Valor mx.
Valor mn.

Intercambio de
bytes de la izquierda/
derecha

Clculo de SUM
Clculo de FCS

3-16-1 ESTABLECER STACK: SSET(630)


Funcin

Define una pila de la longitud especificada comenzando en el canal especificado.

Smbolo de diagrama de
rels

Variacio-- nes

SSET(630)

Variacio-nes

TB

TB: Primera direccin de pila

N: Nmero de canales

Ejecutado cada ciclo para condicin ON

SSET(630)

Ejecutado una vez para diferencial ascendente

@SSET(630)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

TB a TB+3: Canales de control de pila


Los cuatro primeros canales de la pila contienen la direccin de memoria de E/S

493

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

interna del ltimo canal de la pila y el puntero de pila (la direccin de memoria de
E/S interna del siguiente canal que va a ser sobrescrito por PUSH(632)).
TB

TB+1

TB+2

TB+3

15

Direccin de memoria de E/S del


ltimo canal de la pila (4 dgitos de
la derecha)

15

Direccin de memoria de E/S del


ltimo canal de la pila (4 dgitos de
la izquierda)

15

Puntero de pila (4 dgitos de la derecha)

15

Puntero de pila (4 dgitos de la izquierda)

TB+4 a TB+(N--1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar los datos.
15

TB+4

Regin de almacenamiento de datos

---

TB+(N--1)

Note

Especificaciones de
operandos

1. El valor inicial del puntero de pila es siempre la direccin de memoria de E/S


interna de TB+4.
2. TB y TB+(N--1) deben estar la misma rea de datos.
rea

TB

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

494

A000 a A959

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

rea
Constantes

---

TB

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

N
#0005 a #FFFF (binario) o
&5 a &65.535
DR0 a DR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

SSET(630) garantiza una pila con N canales comenzando en TB y finalizando


en TB+(N--1). Los dos primeros canales de la pila (TB+1 y TB) contienen la direccin de memoria de E/S interna hexadecimal de 8 dgitos del ltimo canal de
la pila. Los dos canales siguientes (TB+3 y TB+2) contienen el puntero de pila.
El puntero de pila es la direccin de memoria de E/S interna del siguiente canal
de la pila que se sobrescribir mediante PUSH(632); su valor inicial es la direccin de TB+4.
SSET(630) inicializa automticamente la regin de datos de la pila (TB+4 a
TB+(N--1)) ponindolos a cero. El diagrama siguiente muestra la estructura bsica de una pila.

Descripcin

Direccin de memoria de E/S interna


TB
TB+1

ltimo canal de la
pila

m+(N--1)

N canales apilados

TB+2
TB+3

Puntero
de pila
m+(N--1)

SSET(630) establece e inicializa una pila. Utilice las siguientes instrucciones


para almacenarlas en la pila y leer los datos de la misma.
1, 2, 3...

Indicadores

1. PUSH(632) almacena los datos en la pila (un canal cada vez).


2. FIFO(633) y LIFO(634) leen los datos de la pila. FIFO(633) lee el primer canal almacenado, mientras que LIFO(634) lee el ltimo.
3. El valor del puntero de pila del canal de control de pila se actualiza automticamente cuando se ejecutan PUSH(632), FIFO(633) o LIFO(634). Normalmente, los usuarios no necesitan preocuparse por el canal de control de pila. Al acceder al contenido de la pila de un modo diferente al indicado en las
instrucciones anteriores, fije el valor del puntero de pila utilizando el registro
de ndice (IR) como referencia indirecta.
Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si N no est dentro del rango especificado de 0005
a FFFF.
OFF en todos los dems casos.

Precauciones

El valor mnimo del nmero de canales de la pila (N) es 5, ya que N incluye los
cuatro canales que contienen el puntero hasta el ltimo canal de la pila y el puntero de pila. En caso de que N no est dentro del rango de 0005 a FFFF, se producir un error.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SSET(630) garantiza una pila de 10 canales de D00000 a D00009. D00000 y D00001 contienen la

495

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

direccin de memoria de E/S interna del ltimo canal de la pila. D00002 y


D00003 contienen el puntero de pila. La propia pila comienza en D00004.

&10

Direccin de memoria de E/S interna


Direccin de memoria de E/S
del ltimo canal de la pila
Puntero de pila

ltimo canal
de la pila

10 canales

Puntero
de pila

3-16-2 MOVER AL STACK: PUSH(632)


Funcin

Escribe un canal de datos en la pila especificada.

Smbolo de diagrama de
rels

PUSH(632)
TB
S

Variacio-- nes

Variacio-nes

TB: Primera direccin de pila


S: Canal fuente

Ejecutado cada ciclo para condicin ON

PUSH(632)

Ejecutado una vez para diferencial ascendente

@PUSH(632)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

496

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

TB a TB+3: Canales de control de pila


Los cuatro primeros canales de la pila contienen la direccin de memoria de E/S

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

interna del ltimo canal de la pila y el puntero de pila (la direccin de memoria de
E/S interna del siguiente canal que va a ser sobrescrito por PUSH(632)).
TB

15

Direccin de memoria de E/S del ltimo


canal de la pila (4 dgitos de la derecha)

TB+1

15

Direccin de memoria de E/S del ltimo


canal de la pila (4 dgitos de la izquierda)

TB+2

15

Puntero de pila (4 dgitos de la derecha)

TB+3

15

Puntero de pila (4 dgitos de la izquierda)

TB+4 a TB+(N--1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar los datos.
TB+4

15

Regin de almacenamiento de datos

---

TB+(N--1)

Especificaciones de
operandos

TB

rea
rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

#0000 a #FFFF (binario)

Registros de datos

---

DR0 a DR15

497

Instrucciones de procesamiento de datos de tabla


rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Seccin 3-16
TB

--,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

PUSH(632) escribe el contenido de S en la direccin indicada por el puntero de


pila (TB+3 y TB+2) y aumenta en uno el puntero de pila.

Descripcin

Direccin de memoria de E/S interna

Direccin de memoria de E/S interna

TB

TB

TB+1

TB+1

TB+2
TB+3

TB+2

PUSH(632)

TB+3

Despus de utilizar PUSH(632) para escribir datos en una pila, pueden utilizarse FIFO(633) y LIFO(634) para leer los datos de la pila.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si la direccin especificada por el puntero de pila
(TB+3 y TB+2) supera el ltimo canal de la pila.
(ste es un error de overflow de pila).
OFF en todos los dems casos.

Precauciones

498

La pila debe definirse previamente con SSET(630).

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, PUSH(632) copia


el contenido de D00200 en la pila comenzando en D00000. En este caso, el
puntero de pila indica D00007.

Ejemplos

Direccin de memoria de E/S interna


Direccin de memoria de E/S
del ltimo canal de la pila

Puntero de pila
ltimo canal de la
pila

Puntero
de pila

PUSH(632)

Direccin de memoria de E/S interna


Direccin de memoria de E/S
del ltimo canal de la pila

Una vez escritos los datos en D00007, el puntero


de pila aumentar en uno.

Puntero de
pila

ltimo canal de la
pila

3-16-3 PRIMERO EN ENTRAR PRIMERO EN SALIR: FIFO(633)


Funcin

Lee el primer canal de datos escritos en la pila especificada (los datos ms antiguos de la pila).

Smbolo de diagrama de
rels

Variacio-- nes

FIFO(633)

Variacio-nes

TB

TB: Primera direccin de pila

D: Canal de destino

Ejecutado cada ciclo para condicin ON

FIFO(633)

Ejecutado una vez para diferencial ascendente

@FIFO(633)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

TB a TB+3: Canales de control de pila


Los cuatro primeros canales de la pila contienen la direccin de memoria de E/S

499

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

interna del ltimo canal de la pila y el puntero de pila (la direccin de memoria de
E/S interna del siguiente canal que va a ser sobrescrito por PUSH(632)).
TB

15

Direccin de memoria de E/S del


ltimo canal de la pila (4 dgitos de
la derecha)0

15

TB+1

Direccin de memoria de E/S del


ltimo canal de la pila (4 dgitos de
la izquierda)

15

TB+2

Puntero de pila (4 dgitos de la derecha)

15

TB+3

Puntero de pila (4 dgitos de la izquierda)

TB+4 a TB+(N--1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar datos.
15

TB+4

Regin de almacenamiento de datos

---

TB+(N--1)

Especificaciones de
operandos

TB

rea
rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

500

Constantes

(n = 0 a C)
---

Registros de datos

---

DR0 a DR15

Instrucciones de procesamiento de datos de tabla


rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Seccin 3-16
TB

--,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FIFO(633) lee el canal de datos ms antiguo de la pila (TB+4) y enva dichos


datos a D. A continuacin, el puntero de pila (TB+3 y TB+2) aumenta en uno, el
resto de los datos de la pila se desplaza hacia abajo mediante un canal y se eliminan los datos ledos de TB+4. Los datos situados al final de la pila (la direccin
indicada por el puntero de pila) quedan intactos.
Direccin de memoria
de E/S interna
TB

Puntero
de pila

TB+1

Datos ms
antiguos

TB
TB+1

TB+2

TB+2

TB+3

TB+3

TB+4

Direccin de memoria de E/S interna

m--1

TB+4
Puntero
de pila

m--1

Primero dentro primero fuera

Utilice FIFO(633) junto con PUSH(632). Despus de utilizar PUSH(632) para


escribir datos en una pila, puede utilizarse FIFO(633) para leer los datos de la
pila tomando como base el sistema de primero dentro primero fuera.
FIFO(633) lee el primer dato de la pila y lo elimina para desplazar el siguiente
hacia adelante.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si la direccin especificada por el puntero de pila
(TB+3 y TB+2) es inferior o igual al primer canal de la
regin de datos de la pila (TB+4).
(ste es un error de underflow de pila).
OFF en todos los dems casos.

Precauciones

La pila debe definirse previamente con SSET(630).

501

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, FIFO(633) lee el


contenido de D00004 (TB+4 para la pila que comienza en D00000) y escribe
dichos datos en D00300.

Ejemplos

TB

TB:

Direccin de memoria de E/S


del ltimo canal de la pila

Puntero de pila
ltimo ca- Puntero
de pila
nal de la
pila

Ledo por FIFO(633).


D: D00300

Una vez escritos los datos en D00300, el puntero de pila se reduce en uno y los
datos restantes se desplazan hacia abajo. (El contenido de D00005 se desplaza
hacia D00004 y el de D00006 hacia D00005).
Direccin de memoria de E/S
del ltimo canal de la pila

Puntero de pila
ltimo canal de la
pila

Puntero
de pila
D: D00300

--1

3-16-4 LTIMO EN ENTRAR PRIMERO EN SALIR: LIFO(634)


Funcin

Lee el ltimo canal de datos escritos en la pila especificada (los datos ms recientes de la pila).

Smbolo de diagrama de
rels

Variacio-- nes

LIFO(634)

Variacio-nes

TB

TB: Primera direccin de pila

D: Canal de destino

Ejecutado cada ciclo para condicin ON

LIFO(634)

Ejecutado una vez para diferencial ascendente

@LIFO(634)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

502

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

TB a TB+3: Canales de control de pila


Los cuatro primeros canales de la pila contienen la direccin de memoria de E/S

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

interna del ltimo canal de la pila y el puntero de pila (la direccin de memoria de
E/S interna del siguiente canal que va a ser sobrescrito por PUSH(632)).
TB

15

Direccin de memoria de E/S del ltimo


canal de la pila (4 dgitos de la derecha)

TB+1

15

Direccin de memoria de E/S del ltimo


canal de la pila (4 dgitos de la izquierda)

TB+2

15

Puntero de pila (4 dgitos de la derecha)

TB+3

15

Puntero de pila (4 dgitos de la izquierda)

TB+4 a TB+(N--1): Regin de almacenamiento de datos


El resto de la pila se utiliza para almacenar los datos.
15

TB+4

Regin de almacenamiento de datos

---

TB+(N--1)

Especificaciones de
operandos

rea

TB

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

DR0 a DR15

503

Instrucciones de procesamiento de datos de tabla


rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Seccin 3-16
TB

--,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

LIFO(634) lee los datos de la direccin indicada mediante el puntero de pila (el
canal de datos ms nuevo de la pila), reduce el puntero de pila en uno y enva los
datos a D. El canal ledo queda intacto.

Descripcin

Direccin de memoria de E/S interna


Puntero
de pila

TB
TB+1

Datos ms
recientes

Direccin de memoria de E/S interna

TB
TB+1

TB+2

TB+2

TB+3

TB+3

m--1

Puntero
de pila

m--1

m--1 A permanece sin cambios.

El puntero
disminuye.

Lectura

Utilice LIFO(634) junto con PUSH(632). Despus de utilizar PUSH(632) para


escribir datos en una pila, puede utilizarse LIFO(634) para leer los datos de la
pila tomando como base el sistema de ltimo dentro primero fuera. Una vez almacenados los datos por PUSH(632), el puntero de pila indica la direccin prxima a los ltimos datos.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si la direccin especificada por el puntero de pila
(TB+3 y TB+2) es inferior o igual al primer canal de la
regin de datos de la pila (TB+4).
(ste es un error de underflow de pila).
OFF en todos los dems casos.

Precauciones

504

La pila debe definirse previamente con SSET(630).

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, LIFO(634) lee el


contenido del canal indicado por el puntero de pila (D00006) y escribe dichos
datos en D00300.

Ejemplos

TB:

Direccin de memoria de E/S


del ltimo canal de la pila

Puntero de pila
ltimo canal
de la pila

Puntero
de pila
--1

Direccin de memoria de E/S


del ltimo canal de la pila

Puntero de pila
ltimo canal
de la pila

Puntero
de pila

Ledo por LIFO(634).


D: D00300

Una vez escritos los datos en D00300, el puntero de pila aumentar en uno. El
contenido de D00006 permanece sin modificaciones.

3-16-5 DIMENSIONAR TABLA DE REGISTRO: DIM(631)


Funcin

Define el rea de memoria de E/S especificada como una tabla de registros declarando la longitud de cada registro y el nmero de registros. Se pueden definir
hasta 16 tablas de registros.

Smbolo de diagrama de
rels

Variacio-- nes

DIM(631)

Variacio-nes

N: Nmero de tabla

LR

LR: Longitud de cada registro

NR

NR: Nmero de registros

TB

TB: Primer canal de la tabla

Ejecutado cada ciclo para condicin ON

DIM(631)

Ejecutado una vez para diferencial ascendente

@DIM(631)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

505

Instrucciones de procesamiento de datos de tabla


Operandos

Seccin 3-16

N: Nmero de tabla
Indica el nmero de tabla. N debe estar entre 0 y 15.
LR: Longitud de cada registro
Indica el nmero de canales de cada registro. LR debe ser de 0001 a FFFF hexadecimal (de 1 a 65.535 canales).
NR: Nmero de registros
Indica el nmero de registros de la tabla. NR debe ser de 0001 a FFFF hexadecimal (de 1 a 65.535 canales).
TB: Primer canal de la tabla
Indica el primer canal de la tabla. Todos los canales de la tabla deben estar en la
misma rea de datos. En otras palabras, TB y TB+LRNR--1 deben estar en la
misma rea de datos.

Especificaciones de
operandos

rea

LR

NR

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A000 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

TB

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

0 a 15

Registros de datos

---

(n = 0 a C)
#0000 a #FFFF (binario) o &1
a &65.535
DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

---

,IR0 a ,IR15

-----

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15 ,IR0+(++) a
,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

DIM(631) registra los canales de TB a TB+LRNR--1 como nmero de tabla N.


El nmero de tabla N tiene registros NR y cada registro tiene una longitud de LR
canales. Los datos de esta regin no pueden cambiarse una vez que la regin
ha sido declarada como registros.
Utilice DIM(631) en combinacin con SETR(635) (SET RECORD NUMBER) o
GETR(636) (GET RECORD NUMBER) para simplificar el clculo de direcciones en las tablas de datos. Utilice DIM(631) para dividir los datos en registros y
utilice SETR(635) para almacenar la primera direccin del registro deseado en
un registro de ndice. A continuacin, el registro de ndice puede utilizarse como

506

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

puntero en otras instrucciones, como leer, escribir, buscar o comparar instrucciones.


Como ejemplo, si las temperaturas, presiones u otros valores seleccionados se
almacenan como registros y los registros de los diversos modelos se combinan
en una tabla, resulta fcil leer los valores seleccionados de cada modelo para
cualquier condicin concreta.
Nmero de tabla (N)
Registro 0
Registro 1
Nmero de registros

Canales LR NR

Registro NR--1

Las dos instrucciones de la tabla de registros asociadas al DIM(631) son


SETR(635) y GETR(636). SETR(635) selecciona la primera direccin de memoria de E/S interna del nmero de registro especificado en el registro de ndice
especificado. GETR(636) enva el nmero de registro del registro que contiene
el valor del registro de ndice especificado (direccin de memoria de E/S interna).
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si LR o NR es 0000.
OFF en todos los dems casos.

Precauciones

Los registros de una tabla registrada se identifican mediante los nmeros de registro, que varan de 0 a NR--1.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, DIM(631) define el


nmero 2 de la tabla de registros con tres registros de 10 canales. La tabla comienza en D00300.

N
LR
NR

LR: D00100
NR: D00200

TB

Registro 0

Longitud de registro:
10 canales
Nmero de registros:
Nmero de tabla 2 3

10 canales

Registro 1

10 canales

Registro 2

10 canales

507

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

3-16-6 FIJAR LOCALIZACIN DE REGISTRO: SETR(635)


Funcin

Escribe la ubicacin del registro especificado (la direccin de memoria de E/S


interna del principio del registro) en el registro de ndice especificado.

Smbolo de diagrama de
rels

Variacio-- nes

SETR(635)

Variacio-nes

N: Nmero de tabla

R: Nmero de registro

D: Registro de ndice de destino

Ejecutado cada ciclo para condicin ON

SETR(635)

Ejecutado una vez para diferencial ascendente

@SETR(635)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de tabla
Indica el nmero de tabla. N debe estar entre 0 y 15.
R: Nmero de registro
Indica el nmero de registro del registro deseado. R debe ser de 0000 a FFFF
hexadecimal (de 0 a 65.535). Los nmeros de registro comienzan en 0, de modo
que los nmeros de registro vlidos son de 0 a NR--1 para una tabla con registros NR.
D: Registro de ndice de destino
Indica el registro de ndice deseado. D debe ser de IR0 a IR15.

Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

---

rea de trabajo

---

W000 a W511

---

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

---

A000 a A959

---

rea de temporizador

---

T0000 a T4095

---

rea de contador

---

C0000 a C4095

---

rea DM

---

D00000 a D32767

---

rea EM sin banco

---

E00000 a E32767

---

rea EM con banco

---

En_00000 a En_32767

---

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767

---

@ E00000 a @ E32767

Direcciones de DM/EM
indirectas en BCD

---

Constantes

0 a 15

Registros de datos

---

@ En_00000 a @ En_32767
*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767

508

#0000 a #FFFF (binario) o


&0 a 65535
DR0 a DR15

-----

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

rea
Registros de ndice

D
IR0 a IR15

---

Direccionamiento
indirecto utilizando
registros de ndice

---

,IR0 a ,IR15

---

--2048 a +2047, IR0 a --2048


a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,-- (-- --)IR0 a, -- (-- --)IR15

Descripcin

SETR(635) almacena la direccin de memoria de E/S interna del primer canal


del registro especificado en el registro de ndice especificado. El diagrama siguiente muestra la operacin bsica de SETR(635).

Nmero de tabla (N)


Direccin de memoria de
E/S interna
R

SETR(635) escribe la direccin de memoria de E/S interna (m)


del primer canal del registro R en el registro de ndice D.

Nmero de
registro (R)
IRj

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si el nmero de la tabla especificada (N) no se ha
definido con DIM(631).
ON si el nmero de registro especificado (R) supera el
nmero de registro ms alto de la tabla (NR--1).
OFF en todos los dems casos.

Precauciones

La tabla de registros debe definirse previamente con DIM(631).


Los nmeros de registro oscilan de 0 a NR--1, donde NR es el nmero de registros especificados cuando la tabla se defini con DIM(631).

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SETR(635) busca


la direccin de memoria de E/S interna del primer canal del registro 3 del nmero de tabla 10 y almacena esta direccin en el registro de ndice IR11.

Nmero de tabla 10

Direccin de memoria de E/S interna

Nmero registro: 0
a
Nmero registro 3

509

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

3-16-7 OBTENER NMERO DE REGISTRO: GETR(636)


Funcin

Devuelve el nmero de registro del registro situado en la direccin de memoria


de E/S interna contenida en el registro de ndice especificado.

Smbolo de diagrama de
rels

Variacio-- nes

GETR(636)

Variacio-nes

N: Nmero de tabla

IR

IR: Registro de ndice

D: Canal de destino

Ejecutado cada ciclo para condicin ON

GETR(636)

Ejecutado una vez para diferencial ascendente

@GETR(636)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de tabla
Indica el nmero de tabla. N debe estar entre 0 y 15.
IR: Registro de ndice
Indica el registro de ndice deseado. D debe ser de IR0 a IR15.
D: Canal de destino
Indica el canal donde debe escribirse el nmero de registro.

Especificaciones de
operandos

rea

IR

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A448 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767

510

Constantes

0 a 15

Registros de datos

---

---

(n = 0 a C)
--DR0 a DR15

Instrucciones de procesamiento de datos de tabla


rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Seccin 3-16
N
---

IR
IR0 a IR15

---

D
--,IR0 a ,IR15
--2048 a +2047, IR0 a
--2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

GETR(636) busca el registro que contiene la direccin de memoria de E/S interna contenida en el registro de ndice especificado y escribe dicho nmero de
registro en D. La direccin de memoria de E/S interna contenida en el registro de
ndice no tiene que ser el primer canal del registro; puede ser cualquier canal del
registro.
El diagrama siguiente muestra la operacin bsica de GETR(636).
Nmero de tabla (N)
Direccin de memoria
de E/S interna

Nmero de registro (R)

IR

GETR(636) escribe el nmero de registro del registro que incluye la direccin


de memoria de E/S interna (m) en D.

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si la direccin de memoria de E/S interna del
registro de ndice especificado no est en la tabla
especificada (N).
ON si el nmero de la tabla especificada (N) no se ha
definido con DIM(631).
OFF en todos los dems casos.

Precauciones

La tabla de registros debe definirse previamente con DIM(631) y la direccin de


memoria de E/S interna del registro de ndice especificado debe estar dentro de
la tabla especificada.

Ejemplos

Cuando CIO 000000 est en ON en el siguiente ejemplo, GETR(636) busca el


nmero de registro del registro que contiene la direccin de memoria de E/S interna del registro de ndice IR11 y escribe este nmero de registro en D01000.

IR

Nmero de tabla 10

Direccin de memoria de E/S interna

Nmero registro: 0
a
Nmero registro3

Registro que contiene


la direccin 10000.

511

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

3-16-8 BUSCAR DATO: SRCH(181)


Busca un canal de datos dentro de un rango de canales.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

SRCH(181)

Variacio-nes

C: Primer canal de control

R1

R1:Primer canal del rango

Cd

Cd: Datos de comparacin

Ejecutado cada ciclo para condicin ON

SRCH(181)

Ejecutado una vez para diferencial ascendente

@SRCH(181)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C y C+1: Canales de control


C especifica el nmero de canales del rango y el bit 15 de C+1 indica si se debe
enviar o no el nmero de coincidencias a DR00.
15

Nmero de canales del rango


15 14

C+1

000

0000

0000

0000
0

Seleccin de salida

Seleccin de salida

0: No enva el nmero de
coincidencias
1: Enva el nmero de
coincidencias.

0000Hex: No enva el nmero de coincidencias.


8000 hex.: Enva el nmero de coincidencias.

Nota C y C+1 deben estar en la misma rea.


R1: Primer canal del rango
R1 especifica el primer canal del rango de bsqueda. Se realiza la bsqueda de
los datos deseados en los canales del R1 a R1+(C--1). (C es el nmero de canales especificados en C).
15

R1
Rango de bsqueda
a

---

R1+(C--1)

Nota R1 y R1+C--1 deben estar en la misma rea.


Especificaciones de
operandos

512

rea

R1

rea CIO

CIO 0000 a
CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

Cd

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

rea
rea de bits de
retencin
rea de bits auxiliares

C
H000 a H510

R1
H000 a H511

A000 a A958

A000 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

D00000 a D32767

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

Cd

E00000 a E32767
En_00000 a En_32767 (n = 0 a C)

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
Valores
especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

---

#0000 a #FFFF
(binario)
DR0 a DR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SRCH(181) busca canales que contengan datos de comparacin en el rango de


memoria de R1 a R1+C--1 (Cd). En caso de encontrar una coincidencia,
SRCH(181) escribe la direccin de memoria de E/S interna del canal en IR00 y
pone en ON el indicador de igual.
(En caso de que haya dos o ms coincidencias, slo se escribir en IR00 la direccin del primer canal que contenga los datos de comparacin).
Cuando el bit 15 de C+1 se haya seleccionado a 1, SRCH(181) escribe el nmero de coincidencias en DR00. Cuando el bit 15 de C+1 es 0, DR00 permanece
sin modificaciones.
Direccin de memoria
de E/S interna
R1

Buscar
C

Cd

R1+(C--1)
Coincidencia

SRCH(181) busca datos de tabla que contienen un canal en cada registro. Para
realizar la bsqueda de datos que contengan ms de un canal por registro, utili-

513

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

ce DIM(631), SETR(635), GETR(636), FOR(512)--NEXT(513) o BREAK(514)


junto con el ndice de registro (IR).
El estado del indicador de igual puede comprobarse inmediatamente despus
de la ejecucin para determinar si se produjo una coincidencia.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el contenido de C no est dentro del rango
especificado de 0001 a FFFF.
OFF en todos los dems casos.

Indicador de
igual

ON si hay uno o ms canales del rango de bsqueda


que contengan datos de comparacin.
OFF en todos los dems casos.

Precauciones

En caso de que no se produzca ninguna coincidencia, el contenido de IR00 y


DR00 queda intacto.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SRCH(181) busca


los canales con el mismo contenido que D00200 en el rango de 10 canales comenzando en D00100. La direccin de memoria de E/S interna del primer canal
que contiene una coincidencia se escribe en IR00 y el nmero total de coincidencias se escribe en DR00.
Direccin de memoria de E/S interna
Buscar

&10
R1
Cd

D00200
Nmero de coincidencias

Nmero de coincidencias

3-16-9 INTERCAMBIAR BYTES: SWAP(637)


Funcin

Intercambia los bits de la izquierda y de la derecha en todos los canales del rango.

Smbolo de diagrama de
rels

Variacio-- nes

SWAP(637)

Variacio-nes

N: Nmero de canales

R1

R1:Primer canal del rango

Ejecutado cada ciclo para condicin ON

SWAP(637)

Ejecutado una vez para diferencial ascendente

@SWAP(637)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

514

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

Instrucciones de procesamiento de datos de tabla


Operandos

Seccin 3-16

N: Nmero de canales
N especifica el nmero de canales del rango y debe ser de 0001 a FFFF hexadecimal (o de &1 a &65.535).
R1: Primer canal del rango
R1 especifica el primer canal del rango. R1 y R1+(N--1) deben estar en la misma
rea de datos.

Byte de la izquierda
de la derecha

15

Byte

8 7

R1

a
R1+(N--1)

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

R1

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

#0000 a #FFFF (binario) o


&1 a &65.535

---

Registros de datos

DR00 a DR15

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047, IR0 a --2048 a +2047, IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

515

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

SWAP(637) intercambia la posicin de los dos bytes en todos los canales del
rango de memoria de R1 a R1+N--1. Esta instruccin puede utilizarse para invertir el orden de los caracteres en cdigo ASCII de cada canal.

Descripcin

Intercambio de la posicin de los bytes.

R1
N

Indicadores

Nombre
Indicador de
error

Etique
ta
ER
ON si N es 0000.

Operacin

OFF en todos los dems casos.

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SWAP(637) cambia la posicin de los bytes de cada canal del rango de 10 canales de W000 a
W009.

Ejemplos

&10

R1

3-16-10 ENCONTRAR MXIMO: MAX(182)


Funcin

Busca el valor mximo del rango.

Smbolo de diagrama de
rels

Variacio-- nes

MAX(182)

Variacio-nes

C: Primer canal de control

R1

R1:Primer canal del rango

D: Canal de destino

Ejecutado cada ciclo para condicin ON

MAX(182)

Ejecutado una vez para diferencial ascendente

@MAX(182)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

516

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C y C+1: Canales de control


C especifica el nmero de canales del rango, el bit 15 de C+1 indica si los datos
se tratarn como binarios con signo o binarios sin signo y el bit 14 de C+1 indica
si se enviar a IR00 la direccin de memoria de E/S interna del canal que contiene el valor mximo.

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Nota C y C+1 deben estar en la misma rea.


15

Nmero de canales del rango


15 14 13

00 0000

C+1

0000

0000

0
Seleccin de salida
0: No enva la direccin a IR00.
1: Enva la direccin a IR00.
Tipo de datos
0: Datos binarios sin signo
1: Datos binarios con signo

La siguiente tabla muestra los valores posibles de C.


C+1

Tipo de datos

Salida de
direccin

0000

Binario sin signo

No

4000

Binario sin signo

8000

Binario con signo

No

C000

Binario con signo

R1: Primer canal del rango


R1 especifica el primer canal del rango de bsqueda. Se realiza la bsqueda del
valor mximo en los canales del R1 a R1+(C--1). (C es el nmero de canales
especificados en C).
15

Rango de bsqueda

R1
a

---

R1+(C--1)

Nota R1 y R1+C--1 deben estar en la misma rea.


Especificaciones de
operandos

rea

R1

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

H000 a H511

A000 a A958

A000 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766 En_00000 a En_32767


(n = 0 a C)
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767

A448 a A959

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

517

Instrucciones de procesamiento de datos de tabla


rea
Direcciones de DM/EM
indirectas en BCD

Seccin 3-16
C
*D00000 a *D32767

R1

*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
Valores especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

--DR0 a DR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MAX(182) busca el valor mximo en el rango de memoria de R1 a R1+C--1 y


enva dicho valor a D.
Cuando el bit 14 de C+1 se ha seleccionado a 1, MAX(182) escribe en IR00 la
direccin de memoria de E/S interna del canal que contiene el valor mximo.
(En caso de que haya dos o ms canales dentro del rango que contengan el
valor mximo, la direccin del primer canal que contenga el valor mximo se
escribir en IR00).
Cuando el bit 15 de C+1 se haya seleccionado a 1, MAX(182) tratar los datos
situados dentro del rango como datos binarios con signo.
Direccin de memoria de E/S interna
C

Canales C
R1+(W--1)

Indicadores

Nombre
Indicador de
error

Valor mx.

Etique
Operacin
ta
ER
ON si el contenido de C no est dentro del rango
especificado de 0001 a FFFF.

Indicador de
igual

Indicador de
negativo

OFF en todos los dems casos.


ON si el valor mximo es 0000.
OFF en todos los dems casos.
ON si el bit 15 se pone en ON en el canal que contiene
el valor mximo.
OFF en todos los dems casos.

Precauciones

Cuando el bit 15 de C+1 se ha seleccionado a 1, los datos que se encuentran


dentro del rango se tratarn como datos binarios con signo, mientras que los
valores hexadecimales de 8000 a FFFF se considerarn negativos. Por lo tanto,
los resultados de la bsqueda variarn dependiendo de la seleccin del tipo de
datos.

Ejemplos

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MAX(182) busca


el valor mximo en el rango de 10 canales comenzando en D00200. El valor m-

518

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

ximo se escribe en D00300 y la direccin de memoria de E/S interna del canal


que contiene el valor mximo se escribe en IR00.

R1

C: D00100

10 canales
Nmero de canales

C+1: D00101 1
Siempre 0.
1: Enva la direccin a IR00.
1: Trata los datos como binarios con signo.
Decimal
equivalente
R1:

Direccin de memoria de E/S interna

Valor mx.

--2
--1
--3

D: D00300

3-16-11 ENCONTRAR MNIMO: MIN(183)


Funcin

Busca el valor mnimo del rango.

Smbolo de diagrama de
rels

Variacio-- nes

MIN(183)

Variacio-nes

C: Primer canal de control

R1

R1:Primer canal del rango

D: Canal de destino

Ejecutado cada ciclo para condicin ON

MIN(183)

Ejecutado una vez para diferencial ascendente

@MIN(183)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

519

Instrucciones de procesamiento de datos de tabla


Operandos

Seccin 3-16

C y C+1: Canales de control


C especifica el nmero de canales del rango, el bit 15 de C+1 indica si los datos
se tratarn como binarios con signo o binarios sin signo y el bit 14 de C+1 indica
si se enviar a IR00 la direccin de memoria de E/S interna del canal que contiene el valor mnimo.
Nota C y C+1 deben estar en la misma rea.
15

Nmero de canales del rango


15 14 13

C+1

00

0000

0000

0000

0
Seleccin de salida
0: No enva la direccin a IR00.
1: Enva la direccin a IR00.
Tipo de datos
0: Datos binarios sin signo
1: Datos binarios con signo

La siguiente tabla muestra los valores posibles de C.


C+1

Tipo de datos

Salida de
direccin

0000

Binario sin signo

No

4000

Binario sin signo

8000

Binario con signo

No

C000

Binario con signo

R1: Primer canal del rango


R1 especifica el primer canal del rango de bsqueda. Se realiza la bsqueda del
valor mnimo en los canales del R1 a R1+(C--1). (C es el nmero de canales especificados en C).
15

R1

Rango de bsqueda

---

R1+(C--1)

Nota R1 y R1+C--1 deben estar en la misma rea.


Especificaciones de
operandos

520

rea

R1

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin

H000 a H510

H000 a H511

rea de bits auxiliares

A000 a A958

A000 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766 En_00000 a En_32767


(n = 0 a C)
(n = 0 a C)

A448 a A959

Instrucciones de procesamiento de datos de tabla


rea
Direcciones de DM/EM
indirectas en binario

Seccin 3-16
C
@ D0000 a @ D32767

R1

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
Valores especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

--DR0 a DR15

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MIN(183) busca el valor mnimo en el rango de memoria de R1 a R1+C--1 y enva dicho valor a D.
Cuando el bit 14 de C+1 se ha seleccionado a 1, MIN(183) escribe en IR00 la
direccin de memoria de E/S interna del canal que contiene el valor mnimo. (En
caso de que haya dos o ms canales dentro del rango que contengan el valor
mnimo, la direccin del primer canal que contenga el valor mnimo se escribir
en IR00).
Cuando el bit 15 de C+1 se haya seleccionado a 1, MIN(183) tratar los datos
situados dentro del rango como datos binarios con signo.
R1

Direccin de memoria
de E/S interna
C

Canales C

R1+(W--1)

Indicadores

Nombre
Indicador de
error

Valor mn.

Etique
Operacin
ta
ER
ON si el contenido de C no est dentro del rango
especificado de 0001 a FFFF.

Indicador de
igual

Indicador de
negativo

OFF en todos los dems casos.


ON si el valor mnimo es 0000.
OFF en todos los dems casos.
ON si el bit 15 se pone en ON en el canal que contiene
el valor mnimo.
OFF en todos los dems casos.

Precauciones

Cuando el bit 15 de C+1 se ha seleccionado a 1, los datos que se encuentran


dentro del rango se tratarn como datos binarios con signo, mientras que los
valores hexadecimales de 8000 a FFFF se considerarn negativos. Por lo tanto,
los resultados de la bsqueda variarn dependiendo de la seleccin del tipo de
datos.

521

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, MIN(183) busca el


valor mnimo en el rango de 10 canales comenzando en D00200. El valor mnimo se escribe en D00300 y la direccin de memoria de E/S interna del canal que
contiene el valor mnimo se escribe en IR00.

Ejemplos

R1

10 canales

C: D00100

Nmero de canales
C+1: D00101 1
Siempre 0.
1: Enva la direccin a IR00.
1: Trata los datos como binarios con signo.
Decimal
equivalente
R1:

--2
Direccin de memoria de E/S interna

--1
--3

Valor mn.

D: D00300

3-16-12 SUMA: SUM(184)


Funcin

Suma los bytes o canales del rango y enva el resultado a dos canales.

Smbolo de diagrama de
rels

Variacio-- nes

SUM(184)

Variacio-nes

C: Primer canal de control

R1

R1:Primer canal del rango

D:Primer canal de destino

Ejecutado cada ciclo para condicin ON

SUM(184)

Ejecutado una vez para diferencial ascendente

@SUM(184)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

522

No soportado.
No soportado.

Instrucciones de procesamiento de datos de tabla


reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

Seccin 3-16
reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

C y C+1: Canales de control


C especifica el nmero de unidades (bytes o canales) que se van a sumar. (El bit
13 de C+1 determina si se estn sumando los bytes o canales).
Los bits de 12 a 15 de C+1 indican el tipo de datos que se est sumando, como
se muestra en el siguiente diagrama.
15

Nmero de canales/bytes del rango


15 14 13 12 11

0000 0000 0000

C+1

0
Byte de inicio
0: Byte de la izquierda
1: Byte de la derecha
Unidades
0: Canales
1: Bytes
Tipo de datos
0: Binario
1: BCD
Tipo de datos
0: Datos binarios sin signo
1: Datos binarios con signo

Nota C y C+1 deben estar en la misma rea.


R1: Primer canal del rango
R1 especifica el primer canal del rango. La longitud del rango depende del nmero de unidades, as como del byte de inicio, en caso de que se hayan aadido
bytes.
15

R1
a

Rango de clculo
---

R1+(Unidades C --1)

Nota Todos los canales del rango de clculo deben estar en la misma rea de datos.
D: Primer canal de destino
El resultado del clculo se enva a D+1 y D. Los cuatro dgitos de la izquierda se
almacenan en D+1 y los cuatro dgitos de la derecha se almacenan en D.
Especificaciones de
operandos

rea

R1

rea CIO

CIO 0000 a
CIO 6142

CIO 0000 a
CIO 6143

CIO 0000 a
CIO 6142

rea de trabajo

W000 a W510

W000 a W511

W000 a W510

rea de bits de
retencin

H000 a H510

H000 a H511

H000 a H510

rea de bits auxiliares

A000 a A958

A000 a A959

A448 a A958

rea de temporizador

T0000 a T4094

T0000 a T4095

T0000 a T4094

523

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

rea
rea de contador

C
C0000 a C4094

R1
C0000 a C4095

D
C0000 a C4094

rea DM

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

rea EM sin banco


rea EM con banco

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)
*D00000 a *D32767

Direcciones de DM/EM
indirectas en BCD

*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
Valores
especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

---

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SUM(184) suma C unidades de datos comenzando con los datos de R1 y enva el resultado a D+1 y D. Las selecciones de C+1 determinan si las unidades
estn en canales o en bytes, si los datos son binarios (con o sin signo) o BCD, y
si comenzar por el byte de la derecha o el de la izquierda de R1 en caso de que
se estn sumando bytes.
Cuando el bit 14 de C+1 se ha seleccionado a 0, SUM(184) trata los datos como
binarios. En este caso, el bit 15 determina si los datos son con signo (bit 15 = 1) o
sin l (bit 15 = 0).
Cuando el bit 13 de C+1 se ha seleccionado a 1, SUM(184) suma bytes de datos. En este caso, el bit 12 determina si el clculo comienza con el byte de la
derecha de R1 (bit 12 = 1) o el de la izquierda de R1 (bit 12 = 0).

R1
Canales W
)

524

R1+(W--1)

Instrucciones de procesamiento de datos de tabla


Indicadores

Nombre
Indicador de
error

Seccin 3-16

Etique
Operacin
ta
ER
ON si el contenido de C no est dentro del rango
especificado de 0001 a FFFF.
ON si se han especificado datos BCD pero el rango
contiene datos binarios.
OFF en todos los dems casos.
ON si el resultado es 0000.

Indicador de
igual

Indicador de
negativo

OFF en todos los dems casos.


ON si el bit 15 se pone en ON en el resultado.
OFF en todos los dems casos.

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, SUM(184) aade


10 bytes de datos binarios sin signo comenzando con el byte de la derecha de
D00100 y escribe el resultado en D00201 y D00200.

Ejemplos

Nmero de canales/bytes:
R1

C+1: D00301
Siempre 0.
Byte de inicio
1: Byte de la derecha
Unidades
1: Bytes
Tipo de datos
0: Binarios
Tipo de datos
0: Datos binarios sin signo
C: D00300

10 bytes
Longitud de tabla
2

D: D00200

D+1: D00201

R1:

Se aaden los bytes sombreados.

525

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

3-16-13 CALCULAR FCS: FCS(180)


Calcula el valor FCS de ASCII para el rango especificado.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

FCS(180)

Variacio-nes

C: Primer canal de control

R1

R1:Primer canal del rango

D:Primer canal de destino

Ejecutado cada ciclo para condicin ON

FCS(180)

Ejecutado una vez para diferencial ascendente

@FCS(180)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

Tareas de
interrupcin
OK

OK

C y C+1: Canales de control


C especifica el nmero de unidades (bytes o canales) que se van a utilizar en el
clculo de FCS. (El bit 13 de C+1 determina si se estn utilizando los bytes o
canales).
Cuando el bit 13 de C+1 se ha seleccionado a 1, FCS(180) calcula el valor de
FCS para los bytes de datos. En este caso, el bit 12 determina si el clculo comienza con el byte de la derecha de R1 (bit 12 = 1) o el de la izquierda de R1 (bit
12 = 0).
15

Nmero de canales/bytes del rango


15 14 13 12 11

C+1

00

0000 0000 0000


0
Byte de inicio (Vlido slo cuando el bit 13 es 1).
0: Byte de la izquierda
1: Byte de la derecha
Unidades de clculo
0

0: Canales
1: Bytes

Nota C y C+1 deben estar en la misma rea.


R1: Primer canal del rango
R1 especifica el primer canal del rango. La longitud del rango depende del nmero de unidades, as como del byte de inicio, en caso de que se hayan utilizado
bytes en el clculo.
15

R1
a
R1+(Unidades C --1)

526

Rango de clculo
a

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Nota Todos los canales del rango de clculo deben estar en la misma rea de datos.
D: Primer canal de destino
El resultado del clculo se enva a D si se han seleccionado bytes.
El resultado del clculo se enva a D+1 y D si se han seleccionado canales. En
este caso, los cuatro dgitos de la izquierda se almacenan en D+1 y los cuatro
dgitos de la derecha en D.
Especificaciones de
operandos

rea

R1

rea CIO

CIO 0000 a CIO 6142

CIO 0000 a CIO 6143

rea de trabajo

W000 a W510

W000 a W511

rea de bits de
retencin

H000 a H510

H000 a H511

rea de bits auxiliares

A000 a A958

A000 a A959

rea de temporizador

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4094

C0000 a C4095

rea DM

D00000 a D32766

D00000 a D32767

rea EM sin banco

E00000 a E32766

E00000 a E32767

rea EM con banco

En_00000 a En_32766 En_0000 a En_32767


(n = 0 a C)
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767

A448 a A959

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
Valores especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

---

--2048 a +2047, IR0 a --2048 a +2047, IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FCS(180) calcula el valor de FCS para las unidades C de datos comenzando


por los datos de R1, convierte el valor en cdigo ASCII y enva el resultado a D
(para bytes) o D+1 y D (para canales). Las selecciones de C+1 determinan si las
unidades son canales o bytes, si los datos son binarios (con o sin signo) o BCD y
si empezar con el byte de la derecha o de la izquierda de R1 si se estn sumando bytes.

527

Instrucciones de procesamiento de datos de tabla

Seccin 3-16

Cuando el bit 13 de C+1 se ha seleccionado a 1, FCS(180) opera en bytes de


datos. En este caso, el bit 12 determina si el clculo comienza con el byte de la
derecha de R1 (bit 12 = 1) o el de la izquierda de R1 (bit 12 = 0).

R1
C (Longitud de tabla)

Conversin ASCII
Valor FCS

Clculo

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el contenido de C no est dentro del rango
especificado de 0001 a FFFF.
OFF en todos los dems casos.

Cuando CIO 000000 se pone en ON en el siguiente ejemplo, FCS(180) calcula


el valor FCS de los 10 bytes de datos comenzando con el byte de la derecha de
D00100 y escribe el resultado en D00200.

Ejemplos

R1

C+1: D00301
Siempre 0.
Byte de inicio
1: Byte de la derecha
Unidades
1: Bytes
Siempre 0.

C: D00300

10 bytes
Longitud de tabla

R1:

D: D00200

528

El valor de FCS de los


bytes sombreados se calcula y convierte en ASCII.

Instrucciones de control de datos

Seccin 3-17

3-17 Instrucciones de control de datos


3-17-1

CONTROL PID: PID(190)

Funcin

Ejecuta el control PID de acuerdo con los parmetros especificados.

Smbolo de diagrama de
rels

Variacio-- nes

PID(190)

Variacio-nes

S: Canal de entrada

C: Primer canal de parmetro

D: Canal de salida

Ejecutado cada ciclo para condicin ON

PID(190)

Ejecutado una vez para diferencial ascendente

No soportado.
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Parmetros

reas de programa
de bloques
No se admite

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
No se admite

Los diagramas siguientes muestran la ubicacin de los datos de parmetro. Para ms detalles sobre parmetros, consulte Seleccin de parmetro PID en esta
seccin.
Valor seleccionado (SV)
Banda proporcional (P)
Constante integral (Tik)
Constante derivada (Tdk)
Periodo de muestreo ()
15

C+5

32

0 0
Designacin directa/inversa

Seleccin de salida de variable manipulada


Parmetro 2--PID ()

Rango de salida
Unidad integral y derivada
Rango de entrada
Control de lmite de salida de variable manipulada
Lmite inferior de salida variable manipulada
Lmite superior de salida variable manipulada
rea de trabajo
(30 canales: no utilizable por el usuario).

529

Instrucciones de control de datos


Especificaciones de
operandos

Seccin 3-17
rea

rea CIO

CIO 0000 a
CIO 6143

CIO 0000 a
CIO 6105

CIO 0000 a
CIO 6143

rea de trabajo

W000 a W511

W000 a W473

W000 a W511

rea de bits de
retencin

H000 a H511

H000 a H473

H000 a H511

rea de bits auxiliares

A000 a A959

A000 a A921

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4057

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4057

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32729

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32729

E00000 a
E32767

rea EM con banco

En_00000 a
En_32767

En_00000 a
En_32729

En_00000 a
En_32767

(n = 0 a C)

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Descripcin

Constantes

DR0 a DR15

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15

Cuando la condicin de ejecucin es ON, PID(190) lleva a cabo un control PID


con dos grados de libertad, segn los parmetros designados por C (valores
consigna, constante PID, etc.). Coge el rango de entrada de datos binarios especificado del canal de entrada S y lleva a cabo la accin PID, segn los parmetros seleccionados. Se almacena el resultado como variable manipulada en
el canal de salida D.
Estos parmetros se obtienen cuando la condicin de ejecucin pasa de OFF a
ON, y el indicador de error se pondr en ON si las selecciones estn fuera del
rango permitido.
Si, por el contrario, estn dentro del rango permitido, se ejecutar el procesamiento PID utilizando los valores iniciales. No se lleva a cabo la operacin de
supresin de perturbaciones en este momento. Se utilizar para variables manipuladas en la ejecucin subsiguiente de procesamiento PID. La operacin de
supresin de perturbaciones es un procesamiento que cambia de forma gradual y continua la variable manipulada para evitar los efectos negativos de cambios sbitos.

530

Instrucciones de control de datos

Seccin 3-17

Cuando la condicin de ejecucin se pone en ON, se introduce el PV del periodo


de muestreo especificado y se lleva a cabo el procesamiento.
Parmetros (C a C+8)

Entrada de PV (S)

Control PID

Variable manipulada (D)

La seleccin del rango de entrada en C+6 (bits 08 a 11) es la que designa el


nmero de bits de datos de entrada vlidos en los 16 bits de la entrada de PV
(S). Por ejemplo, si se designan 12 bits (4 hex.) para el rango de entrada, el rango de 0000 hexadecimal a 0FFF hexadecimal se activar como PV (los valores
superiores a 0FFF hex. se considerarn como 0FFF hex.):
El rango de valores seleccionados tambin depende del rango de entrada.
Los valores medidos (PV) y los valores seleccionados (SV) estn en binario sin
signo, desde 0000 hexadecimal hasta el valor mximo del rango de entrada.
La seleccin del rango de salida en C+6 (bits 00 a 03) es la que designa el nmero de bits de datos de salida vlidos en los 16 bits de la salida de la variable manipulada. Por ejemplo, si se designan 12 bits (4 hex.) para el rango de salida, el
rango de 0000 hex. a 0FFF hex. se enviar como variable manipulada.
Se puede designar la salida de la variable manipulada (cuando PV es igual a
SV) como 0% o 50%, pero slo para la operacin proporcional.
Se puede designar la direccin de la operacin proporcional como directa o inversa.
Se pueden designar los lmites superior e inferior de la salida de variable manipulada.
Se puede designar el periodo de muestreo en unidades de 10 ms (0,01 a 99,99
s), pero la accin PID real la determina la combinacin del periodo de muestreo
y el tiempo de la ejecucin de la instruccin PID(190) (con cada ciclo).
De los parmetros PID (C a C+38), slo se puede cambiar el valor seleccionado
(SV) cuando la condicin de ejecucin es ON. Asegrese de cambiar la condicin de ejecucin de OFF a ON cuando cambie otros valores.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si los datos C estn fuera del rango.
ON si el periodo de muestreo real es ms del doble del
periodo de muestreo designado.
OFF en todos los dems casos.

Precauciones

Indicador de
mayor que

>

Indicador de
menor que

<

Indicador de
acarreo

CY

ON si la variable manipulada despus de la accin PID


supera el lmite superior.
OFF en todos los dems casos.
ON si la variable manipulada despus de la accin PID
es menor que el lmite inferior.
OFF en todos los dems casos.
ON mientras se ejecuta el control PID.
OFF en todos los dems casos.

PID(190) se ejecuta como si la condicin de ejecucin fuera una seal STOPRUN. Los clculos PID se ejecutan cuando la condicin de ejecucin permanece en ON para el ciclo siguiente despus de que se inicie C+9 a C+38. Por consiguiente, cuando utilice el indicador de siempre en ON (ON) como condicin de
ejecucin para PID(190), adjunte un proceso separado en el que se inicialice
C+9 a C+38 cuando comience la operacin.

531

Instrucciones de control de datos

Seccin 3-17

Si los datos C estn fuera del rango, se generar un error y el indicador de error
se pondr en ON.
Si el periodo de muestreo real es ms del doble del periodo de muestreo designado, se generar un error y se pondr en ON el indicador de error. Sin embargo, se ejecutar el control PID.
El indicador de acarreo se pone en ON mientras se ejecuta el control PID.
El indicador de mayor que, se pondr en ON si la variable manipulada despus
de la accin PID supera el lmite superior. En este momento los resultados estarn disponibles en el lmite superior.
El indicador de menor que, se pondr en ON si la variable manipulada despus
de la accin PID es menor que el lmite inferior. En este momento los resultados
estarn disponibles en el lmite inferior.
Dentro de los parmetros PID (C a C+38), el nico valor que se puede cambiar
mientras la condicin de entrada est en ON es el valor seleccionado para C. Si
se cambia cualquier otro valor, asegrese de cambiar la condicin de entrada
de OFF a ON para permitir un nuevo valor.
En el flanco ascendente de CIO 000000 (OFF a ON), el rea de trabajo en
D00209 a D00238 se inicialice de acuerdo con los parmetros seleccionados
(aparecen ms abajo) en D00200 a D00208. Una vez inicializado el rea de
trabajo, se ejecuta el control PID y se enva la variable manipulada a CIO 0020.

Ejemplo

Cuando CIO 000000 se pone en ON, se ejecuta el control PID en los intervalos
del periodo de muestreo de acuerdo con los parmetros seleccionados en
D00200 a D00208. La variable manipulada se enva a CIO 0020.

C+2: D00202

Valor seleccionado: 300


Banda proporcional: 10,0%
Tiempo integral: 120,0 s

C+3: D00203

Tiempo derivada: 40,0 s

C+4: D00204

Periodo de muestreo: 0,5 s


Operacin inversa (bit 00: 0) / valor seleccionado = salida de variable manipulada 50% (bit 03: 1) / Parmetro de 2 PID = 0,65 (bits 04 a 15: 000 hex.)

C: D00200
C+1: D00201

Parmetros

C+5: D00205
C+6: D00206
PV: canal
0010

C+7: D00207
Control PID

C+8: D00208
C+9: D00209
a
C+38: D00238

Salida de variable manipulada: CIO 0020

Valores de entrada y rangos


de variable manipulada

532

Rango de salida de variable manipulada: 12 bits (bits 00 a 03: 4 hex.)


Constante integral/derivada: designacin de tiempo (bits 04 a 07: 9 hex.)
Rango de entrada: 12 bits (bits 08 a 11: 4 hex.)
Control de lmite de salida de variable manipulada: No (bits 12: 0 hex.)

Nota Cuando CIO 000000 est en OFF, se puede igualar la operacin a una operacin manual escribiendo en CIO 0020.

El nmero de bits de datos de entrada vlidos para el valor medido viene determinado por la seleccin del rango de entrada en C+6, bits 08 a 11, y el nmero
de bits de datos de salida vlidos para la salida de variable manipulada viene
dado por la seleccin del rango de salida en C+6, bits 0 a 3. Estos rangos aparecen en la tabla siguiente.

Instrucciones de control de datos

Seccin 3-17

C+6, bits 08 a 11 o
C+6, bits 00 a 03

Nmero de bits
vlidos

Rango

0000 a 00FF hex.

0000 a 01FF hex.

10

0000 a 03FF hex.

11

0000 a 07FF hex.

12

0000 a 0FFF hex.

13

0000 a 1FFF hex.

14

0000 a 3FFF hex.

15

0000 a 7FFF hex.

16

0000 a FFFF hex.

Si la seleccin del nmero de bits vlidos no permite fijar de forma precisa el


rango de datos que controla la unidad de entrada analgica o la unidad de salida
analgica, entonces se puede utilizar APR(069) (ARITHMETIC PROCESS) para convertirlos a los rangos adecuados antes y despus de PID(190).
La siguiente seccin del programa muestra un ejemplo de la unidad de entrada
analgica DRT1-AD04 y de la unidad de salida analgica DRT1-DA02 funcionando como esclavas CompoBus/D. El rango de datos para estas dos unidades
es 0000 a 1770 hex., rangos que no se pueden especificar seleccionando simplemente el nmero vlido de dgitos. Por tanto, se utiliza APR(069) para convertir el rango 0000 a 1770 hex. de la unidad de entrada analgica al rango 0000
a FFFF hex. para la entrada a PID(190); posteriormente, se convierte la salida
de la variable manipulada de PID(190) al rango 0000 a 1770 hex., utilizando de
nuevo APR(069) para la salida de la unidad de salida analgica.
Desde unidad de entrada analgica
Condicin de
ejecucin
ARP
D01000
Valor entrada analgica

D02000

PID
D02000
D02500
D03000

ARP
D01500
D03000
Valor salida analgica

Datos de control
C (D01000):
0000 hex. (binario con una tabla)
C+1 (D01001): 1770 hex. (Xm)
C+2 (D01002): 0000 hex. (Yo)
C+3 (D01003): 1770 hex. (Xl)
C+4 (D01004): FFFF hex. (Y1)
Datos de control
C+6 (D02506):
j8j8
Nmero vlido de bits 16 (0000 a FFFF hex.)
Nmero vlido de bits 16 (0000 a FFFF hex.)
Datos de control
C (D01500):
0000 hex. (binario con una tabla)
C+1 (D01501): FFFF hex. (Xm)
C+2 (D01502): 0000 hex. (Yo)
C+3 (D01503): FFFF hex. (Xl)
C+4 (D01504): 1770 hex. (Y1)

A unidad de salida analgica

533

Instrucciones de control de datos

Seccin 3-17

Especificaciones de prestaciones
Elemento

Especificaciones

Mtodo de control PID

---

Mtodo PID con dos grados de libertad (directo/inverso)

Nmero de lazos de control PID

---

No restringido (1 lazo por instruccin)

Periodo de muestreo

0,01 a 99,99 s

Constante PID

Banda proporcional

0,1 a 999,9%

Constante integral

Tik

Constante derivada

Tdk

1 a 8191, 9999 (accin no integral para periodo de muestreo mltiple,


9999).
0 a 8191 (accin no derivada para periodo de muestreo mltiple, 0).

Valor seleccionado

SV

0 a 65535 (vlido hasta el valor mximo del rango de entrada).

Valor medido

PV

0 a 65535 (vlido hasta el valor mximo del rango de entrada).

Variable manipulada

MV

0 a 65535 (vlido hasta el valor mximo del rango de entrada).

El control de filtro del valor de destino con dos grados de libertad es el que realiza los clculos en el control PID.

Mtodo de clculo

Diagrama de bloque para PID del valor objeto con dos grados de libertad
Filtro del valor objeto
1 + (1 -- ) Ti S

Valor seleccionado
(valor objeto)

1 + Ti S

Elementos proporcional + derivada


+

Kp +

Kp

Variable manipulada

Ti S

--

--

Elementos de tipo
derivada previos

Kp: Constante proporcional


Ti: Tiempo integral
Td: Tiempo derivado
: Periodo de muestreo
: Parmetro 2--PID
: Coeficiente derivado incompleto

Kp S Td S

Valor medido (PV)

1 + S Td S

Cuando la sobreoscilacin se previene mediante el control PID convencional,


se ralentiza la estabilizacin de perturbaciones (1). Si, por el contrario, se acelera la estabilizacin de perturbaciones, se produce una sobreoscilacin y se ralentiza la respuesta al valor consigna (2).
Por el contrario, cuando se utiliza el control PID con dos grados de libertad no
existe sobreoscilacin y se pueden acelerar tanto la respuesta al valor consigna
como la estabilizacin de perturbaciones (3).
Control PID convencional

Control PID anticipativo


(3)

(1)

La respuesta a perturbacin empeora como consecuencia de la ralentizacin de la respuesta a la consigna.

Respuesta a consigna

Respuesta a perturbacin

(2)

Superacin

La respuesta a la consigna empeora como consecuencia de la ralentizacin de la respuesta a perturbaciones.

Selecciones del parmetro PID


Datos de
control

Elemento

Contenido

Valor consigna (SV) Se est controlando el valor de consigna


del proceso.

C+1

Banda proporcional

534

El parmetro para la accin P que expresa


el rango de control proporcional/rango de
control total.

Rango de seleccin
Datos binarios (del mismo nmero
de bits que el especificado para el
parmetro de entrada)
0001 a 270F hex. (1 a 9999);
(0,1% a 999,9%, en unidades de
0,1%)

Instrucciones de control de datos


Datos de
control
C+2

Tik

C+3

Tdk

C+4

Periodo de
muestreo ()

Bits 04 a 15 de
C+5

Parmetro 2--PID
()

El coeficiente del filtro de entrada. Utiliza


normalmente 0,65 (es decir, una seleccin
de 000). La eficacia del filtro disminuye a
medida que el coeficiente se acerca a 0.

Bit 03 de C+5

Designacin de
salida de variable
manipulada
Designacin
directa/inversa de
PID
Control de lmite de
salida de variable
manipulada

Designa la salida de variable manipulada


para el momento en que PV es igual a SV.

0001 a 270F hex. (1 a 9999);


(0,01 a 99,99 s, en unidades de
10 ms)
000 hex.: = 0,65
Seleccionar de 100 a 163 hex.
significa que el valor de los dos
dgitos de la derecha se cambia
de = 0,00 a = 0,99. (Ver nota
2).
0: Salida 0%
1: Salida 50%

Determina la direccin de la accin


proporcional.

0: Accin inversa
1: Accin directa

Determina si se aplicar o no el lmite de


control a la salida de variable manipulada.

Bits 08 a 11 de
C+6
Bits 04 a 07 de
C+6

Rango de entrada

Nmero de bits de datos de entrada.

Rango de salida

Bits 00 a 03 de
C+6
C +7

Unidad integral y
derivada
Lmite inferior de
salida de variable
manipulada
Lmite superior de
salida de variable
manipulada

Nmero de bits de datos de salida (el


nmero de bits de salida es,
automticamente, el mismo que el nmero
de bits de entrada).
Determina la unidad para expresar las
constantes derivada e integral.
Lmite inferior cuando est habilitado lmite
de salida de variable manipulada

0: Inhabilitada (sin control de


lmite)
1: Habilitada (con control de
lmite)
0: 8 bits
5: 13 bits
1: 9 bits
6: 14 bits
2: 10 bits
7: 15 bits
3: 11 bits
8: 16 bits
4: 12 bits

Bit 00 de C+5
Bit 12 de C+6

C +8

Elemento

Seccin 3-17

Note

Contenido
Una constante que expresa la intensidad
de la accin integral. La intensidad integral
disminuye a medida que aumenta este
valor.
Una constante que expresa la intensidad
de la accin derivada. La intensidad
derivada disminuye a medida que aumenta
este valor.
Selecciona el periodo para ejecutar la
accin PID.

Lmite superior cuando est habilitado


lmite de salida de variable manipulada

Rango de seleccin
0001 a 1FFF hex. (1 a 8191);
(9999 = operacin integral no
ejecutada) (Ver nota 1).
0001 a 1FFF hex. (1 a 8191);
(0000 = operacin derivada no
ejecutada) (Ver nota 1).

1: Periodo de muestreo mltiple


9: Tiempo (unidad: 100 ms)
0000 a FFFF (binario)
(Ver nota 3).
0000 a FFFF (binario)
(Ver nota 3).

1. Cuando se designa la unidad como 1, el rango es de 1 a 8.191 veces el periodo. Cuando se designa la unidad como 9, el rango es de 0,1 a 819,1 s.
Cuando se designa 9, seleccione los tiempos derivada e integral dentro de
un rango de 1 a 8.191 veces el periodo de muestreo.
2. Al seleccionar el parmetro de 2 PID () a 000 el resultado es 0,65, el valor
normal.
3. Cuando est habilitado el lmite de salida de variable manipulada (es decir,
se selecciona en 1), seleccione los valores tal y como se indica a continuacin:

Periodo de muestreo y
tiempo de ciclo

Se puede designar el periodo de muestreo en unidades de 10 ms (0,01 a 99,99


s), pero la accin PID real la determina la combinacin del periodo de muestreo
y el tiempo de la ejecucin de la instruccin PID (con cada ciclo). La relacin
entre el periodo de muestreo y el tiempo de ciclo es la que sigue:
Si el periodo de muestreo es inferior al tiempo de ciclo, se ejecutar el control
PID con cada ciclo y no con cada periodo de muestreo.

535

Instrucciones de control de datos

Seccin 3-17

Si el periodo de muestreo es mayor o igual que el tiempo de ciclo, no se ejecutar el control PID con cada ciclo, pero se ejecutar PID(190) cuando el valor
totalizado del tiempo de ciclo (el tiempo entre instrucciones PID) es mayor o
igual que el periodo de muestreo. La parte excedente del valor totalizado (es
decir, el valor totalizado del tiempo de ciclo menos el periodo de muestreo) se
aade al siguiente valor totalizado.
Por ejemplo, supongamos que el periodo de muestreo es de 100 ms y que el
tiempo de ciclo es 60 ms constantemente. En el primer ciclo, tras la ejecucin
inicial, no se ejecutar PID(190) porque 60 ms es menos que 100 ms. En el
segundo ciclo, 60 ms + 60 ms es mayor que 100 ms, as que se ejecutar
PID(190). Los 20 ms sobrantes (120 ms -- 100 ms = 20 ms) se irn aadiendo.
En el tercer ciclo se aaden los 20 ms sobrantes a 60 ms. Dado que la suma de
80 ms es menor que 100 ms, no se ejecutar PID(190). En el cuarto ciclo se
suman 80 ms a 60 ms. Puesto que 140 ms es ms que 100 ms, se ejecutar
PID(190) y los 40 ms que sobran (140 ms -- 100 ms = 40 ms) se irn aadiendo. Este procedimiento se repetir en los ciclos subsiguientes.

1 ciclo

1 ciclo

Procesamiento
Procesamiento
inicial (procesamiento PID con
valores iniciales)
Lectura del
tiempo de medida

(60 ms)
No ejecutado.

Menos de 100 ms, as


que no se ejecuta
PID.

Acciones de control

1 ciclo

(60 ms + 60 ms = 120 ms)


Ejecutado

Ms de 100 ms, as
que se ejecuta PID y
se aaden 20 ms.

1 ciclo

1 ciclo

(80 ms + 60 ms = 140 ms)


(20 ms + 60 ms = 80 ms)
No ejecutado.
Ejecutado

Menos de 100 ms, as


que no se ejecuta
PID.

Ms de 100 ms, as
que se ejecuta PID y
se aaden 40 ms.

Accin proporcional (P)


La accin proporcional es una operacin en la que se establece una banda proporcional con respecto al valor seleccionado (SV) y, dentro de esa banda, la variable manipulada (MV) se hace proporcional a la desviacin. En la siguiente
ilustracin se muestra un ejemplo de operacin inversa.
Si se utiliza la accin proporcional y el valor actual (PV) es menor que la banda
proporcional, la variable manipulada (MV) es el 100% (es decir, el valor mximo). Dentro de la banda proporcional, MV es proporcional a la desviacin (la
diferencia entre SV y PV) y disminuye gradualmente hasta que SV y PV coinciden (es decir, hasta que la desviacin es 0), momento en el que el MV estar en
al valor mnimo 0% (o 50%, dependiendo de la seleccin del parmetro de de-signacin de la salida de variable manipulada). MV tambin ser 0% cuando PV
sea mayor que SV.
La banda proporcional se expresa como un tanto por ciento del rango de entrada total. Cuanto ms pequea sea la banda proporcional, mayor ser la constante proporcional y ms fuerte la medida correctiva. Con la accin proporcional
tiene lugar un offset (desviacin residual), pero se puede reducir disminuyendo
el tamao de la banda proporcional. Sin embargo, si reduce demasiado el tamao de la banda se producir una oscilacin.

536

Instrucciones de control de datos

Seccin 3-17
Ajuste de la banda proporcional

Accin proporcional (accin inversa)


Salida: 0%

Banda proporcional demasiado estrecha (oscilacin)

Salida: 50%

Offset

Variable manipulada
SV
SV

Banda proporcional correcta

Banda proporcional

Banda proporcional demasiado ancha (offset importante)

Accin integral (I)


La combinacin de una accin integral con una proporcional reduce el offset en
concordancia con el tiempo que ha transcurrido, por lo que el PV coincidir con
el SV. La intensidad de la accin integral viene dada por el tiempo integral, que
es el tiempo que se necesita para que la variable manipulada de la accin integral llegue al mismo nivel que la variable manipulada de la accin proporcional
con respecto a la desviacin de paso, tal y como aparece en la siguiente ilustracin. Cuanto ms reducido sea el tiempo integral, mayor ser la intensidad de
correccin de la accin integral. Si el tiempo integral es demasiado pequeo la
correccin ser demasiado fuerte y provocar una oscilacin.

Accin integral
Desviacin

Respuesta de paso
0

Variable ma0
nipulada
Accin PI y tiempo integral
Respuesta de paso
Desviacin
Accin PI
Accin I
Variable
manipulada

Accin P
Ti: Tiempo de integral

Accin derivada (D)


Tanto la accin proporcional como la derivada realizan correcciones con respecto a los resultados de control, con lo que, inevitablemente, se producir un
retardo en la respuesta. La accin derivada compensa esta desventaja. Como
respuesta a una perturbacin repentina, enva una variable manipulada grande
y restablece rpidamente el estado original. Se lleva a cabo una correccin con
la variable manipulada proporcional a la inclinacin (coeficiente de derivada)
provocado por la desviacin.

537

Instrucciones de control de datos

Seccin 3-17

La intensidad de la accin derivada viene dada por el tiempo derivado, que es el


tiempo que se necesita para que la variable manipulada de la accin derivada
alcance el mismo nivel que la variable manipulada de la accin proporcional con
respecto a la desviacin de paso, tal y como aparece en la siguiente ilustracin.
Cuanto ms prolongado sea el tiempo de derivada, mayor ser la intensidad de
la correccin de la accin derivada.
Accin derivada
Desviacin

Respuesta de paso

Variable ma0
nipulada
Accin PD y tiempo de derivada
Desviacin

Respuesta de rampa

Accin PD
Accin P
Accin D

Variable ma0
nipulada
Td: Tiempo de derivada

Accin PID
La accin PID combina la accin proporcional (P), integral (I) y derivada (D).
Produce mejores resultados de control, incluso para objetos de control con
tiempo muerto. Utiliza la accin proporcional para generar un control sin oscilacin, la accin integral para corregir automticamente cualquier offset y la accin derivada para acelerar la respuesta frente a las perturbaciones.
Respuesta de paso para salida de accin de control PID
Desviacin 0

Respuesta de paso

Accin PID
Accin I
Accin P
Accin D

Variable ma0
nipulada

Respuesta de rampa de salida de accin de control PID


Respuesta de rampa
Desviacin

Variable manipulada

Direccin de la accin

538

Accin PID
Accin I
Accin P
Accin D

Seleccione una de las dos direcciones de control siguientes cuando est utilizando el control PID. En cualquier direccin el MV aumenta al mismo tiempo
que la diferencia entre SV y PV.

Instrucciones de control de datos

Seccin 3-17

Accin directa: MV aumenta cuando PV es mayor que SV.


Accin inversa: MV aumenta cuando PV es menor que SV.
Accin inversa

Accin directa

Salida

Salida

Baja
SV
temperatura

Alta
temperatura

Baja
SV
temperatura

Alta
temperatura

La relacin general entre los parmetros PID y el estado de control se muestra a


continuacin.

Ajuste de parmetros PID

Cuando no es un problema que se necesite un espacio de tiempo dado para la


estabilizacin (tiempo de asentamiento), pero es importante no originar una
sobreoscilacin. En ese caso, aumente la banda proporcional.
Control por PID medidas
SV
Cuando se aumenta P

Cuando la sobreoscilacin no es un problema pero es preferible estabilizar el


control rpidamente. En ese caso, reduzca la anchura de la banda proporcional. Sin embargo, si reduce demasiado el ancho de la banda proporcional puede producirse oscilaciones.
Cuando se reduce P
SV

Control por PID medidas

Cuando existe una oscilacin amplia o cuando la operacin est bloqueada


por exceso o por defecto se debe probablemente a que la accin integral es
demasiado fuerte. Se puede reducir la oscilacin aumentando el tiempo integral o la banda proporcional.
Control por PID medidas
(cuando tiene lugar una oscilacin amplia)
SV
Aumentar I o P.

Si el periodo es corto y se produce una oscilacin, puede ser debido a que la


respuesta del sistema de control es rpida y la accin derivada es demasiado
fuerte. En ese caso, seleccione la accin derivada en un nivel ms bajo.

539

Instrucciones de control de datos

Seccin 3-17

Control por PID medidas


(cuando se produce una oscilacin en un periodo breve)
SV
D inferior.

3-17-2

CONTROL DE LMITE: LMT(680)

Funcin

Controla los datos de salida en funcin de si los datos de entrada estn o no


dentro de los lmites superior e inferior.

Smbolo de diagrama de
rels

Variacio-- nes

LMT(680)

Variacio-nes

S: Canal de entrada

C: Primer canal de lmite

D: Canal de salida

Ejecutado cada ciclo para condicin ON

LMT(680)

Ejecutado una vez para diferencial ascendente

@LMT(680)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK
rea
rea CIO

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

H000 a H511

A000 a 959

A000 a A958

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4094

C0000 a C4095

rea DM

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

540

Tareas de
interrupcin
OK

---

(n = 0 a C)

Instrucciones de control de datos

Seccin 3-17

rea
Registros de datos

S
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

C
---

D
DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Cuando la condicin de ejecucin est en ON, LMT(680) controla los datos de


salida dependiendo de si los datos de entrada especificados (binario de 16 bits
con signo) estn o no dentro de los lmites superior e inferior. El contenido de los
canales C y C+1 es el siguiente:
C

Datos del lmite inferior (datos de salida mnimos)

C+1

Datos del lmite superior (datos de salida mximos)

C y C+1 deben tener la misma clasificacin de rea.


Si los datos de entrada (S) son inferiores al lmite inferior (C), se enviarn los
datos del lmite inferior a D y se pondr en ON el indicador de menor que.
Si los datos de entrada (S) son inferiores al lmite superior (C+1), se enviarn los
datos del lmite superior a D y se pondr en ON el indicador de mayor que.
Si los datos de entrada (S) son mayores o iguales que el lmite inferior (C) y menores o iguales que el lmite superior (C+1), se enviarn a D.

Lmite superior C+1

Lmite inferior C

Indicadores

Nombre

Etique
ta

Indicador de
error

ER

Indicador de
mayor que

>

Indicador de
igual

Indicador de
menor que

<

Indicador de
negativo

Operacin
ON si el lmite superior es menor que el lmite inferior.
OFF en todos los dems casos.
ON si los datos de entrada (S) son mayores que el
lmite superior.
OFF en todos los dems casos.
ON si el resultado es 0.
OFF en todos los dems casos.
ON si los datos de entrada (S) son menores que el
lmite inferior.
OFF en todos los dems casos.

Precauciones

ON cuando el bit de la izquierda del resultado es 1.


OFF en todos los dems casos.

Si el lmite superior es menor que el lmite inferior, se producir un error y el indicador de error se pondr en ON.

541

Instrucciones de control de datos

Seccin 3-17

Si los datos de entrada (S) son mayores que el lmite superior, se pondr en ON
el indicador de mayor que.
Si el canal de salida D es 0000 hex., el indicador de igual se pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior, se pondr en ON el
indicador de menor que.
Si el estado del bit de la izquierda del canal de salida D es 1, se pondr en ON
el indicador de negativo.
Si D00100 es 0050 hex. (80), entonces 0064 hex. (100) se enviar a D00300
porque 80 es menor que el lmite inferior de 100.
Si D00100 es 00C8 hex. (200), entonces 0064 hex. (100) se enviar a D00300
porque 200 est entre los lmites superior e inferior.
Si D00100 es 012C hex. (300), entonces 015E hex. (350) se enviar a D00300
porque 350 es mayor que el lmite superior de 300.

Ejemplo

C:

Lmite inferior: 100


Lmite superior: 300

3-17-3

CONTROL DE BANDA MUERTA: BAND(681)

Funcin

Controla los datos de salida en funcin de si los datos de entrada estn o no


dentro del rango de banda muerta.

Smbolo de diagrama de
rels

Variacio-- nes

BAND(681)

Variacio-nes

S: Canal de entrada

C: Primer canal de lmite

D: Canal de salida

Ejecutado cada ciclo para condicin ON

BAND(681)

Ejecutado una vez para diferencial ascendente

@BAND(681)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

542

No soportado.
No soportado.

Instrucciones de control de datos


reas de programa
aplicables

Especificaciones de
operandos

Seccin 3-17

reas de programa
de bloques
OK

reas de programa
de pasos
OK

rea

Subrutinas
OK

rea CIO

Tareas de
interrupcin
OK

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

H000 a H511

A000 a A959

A000 a A958

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4094

C0000 a C4095

rea DM

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Cuando la condicin de ejecucin est en ON, BAND(681) controla los datos de


salida dependiendo de si los datos de entrada especificados (binario de 16 bits
con signo) estn o no dentro de los lmites superior e inferior (banda muerta). El
contenido de los canales C y C+1 es el siguiente:
C

Datos del lmite inferior (lmite inferior de banda muerta)

C+1

Datos del lmite superior (lmite superior de banda muerta)

C y C+1 deben tener la misma clasificacin de rea.


Si los datos de entrada (S) son mayores o iguales que el lmite inferior (C) y menores o iguales que el lmite superior (C+1), se enviar 0000 (hex.) a D y se pondr en ON el indicador de igual.
Si los datos de entrada (S) son inferiores al lmite inferior (C), se enviar la diferencia entre los datos de entrada y los datos del lmite inferior a D y se pondr en
ON el indicador de menor que.

543

Instrucciones de control de datos

Seccin 3-17

Si los datos de entrada (S) son mayores que el lmite superior (C+1), se enviar
la diferencia entre los datos de entrada y los datos del lmite superior a D y se
pondr en ON el indicador de mayor que.

Salida

Lmite inferior (C)


Entrada
Lmite superior (C+1)

Si los datos de salida son inferiores a 8000 (hex.) o superiores a 7FFF, se invertir el signo. Por ejemplo, para un lmite inferior de 0100 (hex.) y datos de entrada
de 8000 (hex.), los datos de salida son los siguientes:
8000 (hex.) [--32768] -- 0100 (hex.) [256] = 7F00 (hex.) [32512]
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el lmite superior es menor que el lmite inferior.
OFF en todos los dems casos.

Indicador de
mayor que

>

Indicador de
igual

Indicador de
menor que

<

ON si los datos de entrada (S) son mayores que el


lmite superior.
OFF en todos los dems casos.

Indicador de
negativo

Precauciones

ON si el resultado es 0.
OFF en todos los dems casos.

ON si los datos de entrada (S) son menores que el


lmite inferior.
OFF en todos los dems casos.
ON si el bit de la izquierda del resultado es 1
OFF en todos los dems casos.

Si el lmite superior es menor que el lmite inferior, se producir un error y el indicador de error se pondr en ON.
Si los datos de entrada (S) son mayores que el lmite superior, se pondr en ON
el indicador de mayor que.
Si el canal de salida D es 0000 hex., el indicador de igual se pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior, se pondr en ON el
indicador de menor que.
Si el estado del bit de la izquierda del canal de salida D es 1, se pondr en ON
el indicador de negativo.

Ejemplo

Si D00100 es 00B4 hex. (180), entonces 180--200=FFEC hex. (--20) se enviar


a D00300 porque 180 es menor que el lmite inferior de 200.
Si D00100 es 00E6 hex. (230), entonces 0 se enviar a D00300 porque 230 est
entre los lmites superior e inferior.

544

Instrucciones de control de datos

Seccin 3-17

Si D00100 es 015E hex. (350), entonces 350--300=0032 hex. (50) se enviar a


D00300 porque 350 es mayor que el lmite superior de 300.
Lmite inferior: 200
Lmite superior: 300

Lmite inferior

Lmite
inferior:
200

3-17-4

Lmite
superior:
300
Lmite superior

CONTROL DE ZONA MUERTA: ZONE(682)

Funcin

Aade la desviacin especificada a los datos de entrada y enva el resultado.

Smbolo de diagrama de
rels

Variacio-- nes

ZONE(682)

Variacio-nes

S: Canal de entrada

C: Primer canal de lmite

D: Canal de salida

Ejecutado cada ciclo para condicin ON

ZONE(682)

Ejecutado una vez para diferencial ascendente

@ZONE(682)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Especificaciones de
operandos

reas de programa
de bloques
OK
rea
rea CIO

reas de programa
de pasos
OK
S

No soportado.
Subrutinas

OK
C

Tareas de
interrupcin
OK
D

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin

H000 a H511

H000 a H510

H000 a H511

rea de bits auxiliares

A000 a A959

A000 a A958

A448 a 959

rea de temporizador

T0000 a T4095

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4094

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32766

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32766

E00000 a
E32767

rea de trabajo

545

Instrucciones de control de datos

Seccin 3-17

rea
rea EM con banco

Direcciones de DM/EM
indirectas en binario

S
En_00000 a
En_32767

C
En_00000 a
En_32766

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

D
En_00000 a
En_32767
(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #FFFF

Constantes

---

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Cuando la condicin de ejecucin est en ON, ZONE(682) aade la desviacin


especificada a los datos de entrada especificados (binario de 16 bits con signo)
y ubica el resultado en un canal especificado. El contenido de los canales C y
C+1 es el siguiente:
C

Desviacin negativa

C+1

Desviacin positiva

C y C+1 deben tener la misma clasificacin de rea.


Si los datos de entrada (S) son inferiores a cero se enviarn los datos de entrada
ms la desviacin negativa a D y se pondr en ON el indicador de menor que.
Si los datos de entrada (S) son superiores a cero se enviarn los datos de entrada ms la desviacin positiva a D y se pondr en ON el indicador de mayor que.
Si los datos de entrada (S) son cero, se enviar 0000 a D y se pondr en ON el
indicador de igual.
Salida
Desviacin positiva (C+1)
Entrada
Desviacin negativa (C)

Si los datos de salida son inferiores a 8000 (hex.) o superiores a 7FFF, se invertir el signo. Por ejemplo, para un valor de desviacin negativa de FF00 (hex.) y
datos de entrada de 8000 (hex.), los datos de salida sern los siguientes:
8000 (hex.) [--32768] -- FF00 (hex.) [--256] = 7F00 (hex.) [32512]

546

Instrucciones de control de datos


Indicadores

Nombre
Indicador de
error
Indicador de
mayor que

Seccin 3-17
Etique
Operacin
ta
ER
ON si el lmite superior es menor que el lmite inferior.
OFF en todos los dems casos.
>

Indicador de
igual

Indicador de
menor que

<

Indicador de
negativo

ON si los datos de entrada (S) son mayores que el


lmite superior.
OFF en todos los dems casos.
ON si el resultado es 0.
OFF en todos los dems casos.
ON si los datos de entrada (S) son menores que el
lmite inferior.
OFF en todos los dems casos.

Precauciones

ON si el bit de la izquierda del resultado es 1.


OFF en todos los dems casos.

Si el lmite superior es menor que el lmite inferior, se producir un error y el indicador de error se pondr en ON.
Si los datos de entrada (S) son mayores que el lmite superior, se pondr en ON
el indicador de mayor que.
Si el canal de salida D es 0000 hex. el indicador de igual se pondr en ON.
Si los datos de entrada (S) son menores que el lmite inferior, se pondr en ON el
indicador de menor que.
Si el estado del bit de la izquierda del canal de salida D es 1, se pondr en ON
el indicador de negativo.

Ejemplo

Cuando CIO 000000 est en ON, se aplica un desviacin de --100 al valor de


D00100 si ese valor es inferior a 0 y el valor resultante se almacena en D00300.
Si el valor de D00100 es 0, entonces se almacenar 0000 hex. en D00300.
Si el valor de D00100 es mayor que 0, se aplicar una desviacin de +100 y el
valor resultante se almacenar en D00300.

C:

Valores decimales
--100
Desviacin negativa

Contenido de D00300

Desviacin positiva

Contenido de D00200

547

Instrucciones de control de datos

3-17-5

Seccin 3-17

ESCALADO: SCL(194)
Convierte los datos binarios sin signo en datos BCD sin signo, de acuerdo con la
funcin lineal especificada.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

SCL(194)

Variacio-nes

S: Canal fuente

P1

P1: Primer canal de parmetro

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

SCL(194)

Ejecutado una vez para diferencial ascendente

@SCL(194)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado.

Subrutinas
OK

OK

El contenido de los cuatro canales, empezando con el primer canal de parmetro (P1), se muestra en el siguiente diagrama.
15

P1

15

Valor de escala para el punto A (Ar)


0000 a 9999 (4 dgitos BCD)
0

P1+1

15

Valor sin escala para el punto A (As)


0000 a FFFF (binario)
0

P1+2

Valor de escala para el punto B (Br)


0000 a 9999 (4 dgitos BCD)
15

P1+3

Valor sin escala para el punto B (Bs)


0000 a FFFF (binario)

Nota P1 a P1+3 deben estar en la misma rea de datos.


Especificaciones de
operandos

548

rea

P1

rea CIO

CIO 0000 a
CIO 6143

CIO 0000 a
CIO 6140

CIO 0000 a
CIO 6143

rea de trabajo

W000 a W511

W000 a W508

W000 a W511

rea de bits de
retencin

H000 a H511

H000 a H508

H000 a H511

rea de bits auxiliares

A000 a A959

A000 a A956

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4092

T0000 a T4095

Instrucciones de control de datos

Seccin 3-17

rea
rea de contador

S
C0000 a C4095

P1
C0000 a C4092

R
C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32764

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32764

E00000 a
E32767

rea EM con banco

En_00000 a
En_32767

En_00000 a
En_32764

En_00000 a
En_32767

(n = 0 a C)

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SCL(194) se utiliza para convertir datos binarios sin signo del canal fuente S a
datos BCD sin signo y para ubicar el resultado en el canal R, segn la funcin
lineal definida por los puntos (As, Ad) y (Bs, Bd). Se especifica la direccin del
primer canal que contiene las coordenadas de los puntos (As, Ar) y (Bs, Br) para
el primer canal de parmetro P1. Estos puntos vienen definidos por 2 valores
(As y Bs) antes de la conversin a escala y por 2 valores (Ar y Br) despus de la
conversin a escala.
Se utilizan las siguientes ecuaciones para la conversin:

R = Bd--

(Bd -- Ad)
Conversin BCD de (Bs -- As)

Conversin BCD de (Bs -- S)

La pendiente de la lnea es la siguiente:


R = Bd--

(Bd -- Ad)
Conversin BCD de (Bs -- As)

Los puntos A y B pueden definir una lnea con pendiente tanto positiva como
negativa. La utilizacin de una pendiente negativa permite la conversin a escala inversa.

549

Instrucciones de control de datos

Seccin 3-17

Se redondear el resultado al nmero entero ms prximo. Si el resultado es


menor de 0000, se enviar 0000 como resultado. Si el resultado es mayor de
9999, se enviar 9999 como resultado.
R (BCD sin signo)

La conversin a escala se ejecuta


de acuerdo con la funcin lineal
definida por los puntos A y B.
Punto B

Punto A

P
P1+1
P1+2
P1+3

(BCD)
(BIN)
(BCD)
(BIN)

Valor convertido
Valor convertido

S (binario sin signo)

Se puede utilizar SCL(194) para escalar los valores de conversin analgica


procedentes de las unidades de entrada analgica, segn los parmetros de
escala definidos por el usuario. Por ejemplo, si una entrada de 1 a 5 V de una
unidad de entrada analgica se introduce en la memoria como 0000 a 0FA0 hexadecimal, mediante SCL(194) el valor en memoria se puede convertir en una
escala de 50 a 200C.
SCL(194) convierte de binario sin signo a BCD sin signo. Para convertir un valor
negativo hay que sumar en el programa el valor negativo mximo antes de utilizar SCL(194) (ver ejemplo).
SCL (194) no puede enviar un valor negativo al canal de resultado (R). Si el resultado es un valor negativo se escribir 0000 en R.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el contenido de C (Ar) o C+1 (Br) no es BCD.
ON si el contenido de C+1 (As) y C+3 (Bs) es igual.
OFF en todos los dems casos.

Indicador de
igual

ON si el resultado es 0.
OFF en todos los dems casos.

Precauciones

Se producir un error y se pondr en ON el indicador de error si los valores de Ar


(C) y Br (C+2) no son BCD o si los valores de As (C+1) y Bs (C+3) son iguales.
El indicador de error se pondr en ON cuando el contenido del canal resultado D
sea 0000.

Ejemplos

En el ejemplo siguiente se asume que la seal analgica de 1 a 5 V se convierte


e introduce en CIO 0200 como 0000 a 0FA0 hexadecimal. Se utiliza SCL(194)
para convertir (a escala) el valor en CIO 0200 a un valor entre 0000 y 0300
BCD.
Cuando CIO 000000 est en ON, el contenido de CIO 0200 se convierte a escala utilizando la funcin lineal definida por el punto A (0000, 0000) y por el pun-

550

Instrucciones de control de datos

Seccin 3-17

to B (0FA0, 0300). Las coordenadas de estos puntos se encuentran en D00100


a D00103 y el resultado aparece en D00200.

P1
R

Contenido de D00200 (R)

Punto B

P1:
P1+1:
P1+2:
P1+3:

D00100
D00101
D00102
D00103

(BCD)
(BIN)
(BCD)
(BIN)

Punto A
Contenido de CIO 0200 (S)

Valores negativos
Una unidad de entrada analgica introduce valores de FF38 a 1068 hexadecimal para 0,8 a 5,2 V. Sin embargo, SCL(194) slo puede manejar valores binarios sin signo entre 0000 y FFFF hexadecimal, con lo que no es posible utilizar
SCL(194) directamente para operar con valores binarios con signo inferiores a
1 V (0000 hexadecimal), es decir, FF38 a FFFF hexadecimal. En una aplicacin
real, por tanto, hay que sumar 00C8 hexadecimal a todos los valores para que
FF38 hexadecimal quede representado como 0000 hexadecimal antes de utilizar SCL(194), tal y como se muestra en el ejemplo siguiente.
+

+00C8 hex.

El valor de CIO
0200 ms 00C8
hexadecimal

Punto A (00C8 hex. 0000 (BCD)


Contenido de D00200 (R)

Punto B

Punto A

Punto B (1068 hex. 0300 (BCD)


P1:
P1+1:
P1+2:
P1+3:

D00100
D00101
D00102
D00103

(BCD)
(BIN)
(BCD)
(BIN)

Contenido de D00000 (S)

En este ejemplo se convertirn los valores desde 0000 hasta 00C8 hexadecimal
a valores negativos. Sin embargo, SCL(194) slo puede emitir valores en BCD

551

Instrucciones de control de datos

Seccin 3-17

sin signo de 0000 a 9999, por lo que se emitir 0000 BCD cada vez que el contenido de D00000 est entre 0000 y 00C8 hexadecimal.
Conversin a escala inversa
Tambin se puede utilizar la conversin a escala inversa seleccionando As < Bs
y Ar > Br. El resultado es la relacin siguiente.
R (BCD sin signo)

Punto A
Punto B
S (binario sin signo)

Se puede utilizar la conversin a escala inversa para, por ejemplo, convertir (escala inversa) 1 a 5 V (0000 a 0FA0 hexadecimal) en 0300 a 0000, respectivamente, tal y como aparece en el diagrama siguiente.
R

Punto A

Punto B

3-17-6

ESCALADO 2: SCL2(486)

Funcin

Convierte datos binarios con signo en datos BCD con signo, de acuerdo con la
funcin lineal especificada. Se puede introducir un offset cuando se define la
funcin lineal.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

552

SCL2(486)

Variacio-nes

S: Canal fuente

P1

P1: Primer canal de parmetro

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

SCL2(486)

Ejecutado una vez para diferencial ascendente

@SCL2(486)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado.

OK

Instrucciones de control de datos


Operandos

Seccin 3-17

El contenido de los tres canales, empezando con el primer canal de parmetro


(P1), se muestra en el siguiente diagrama.
15

P1
Offset de la funcin lineal
8000 a 7FFF (binario con signo)
15

P1+1
X
8000 a 7FFF (binario con signo)
15

P1+2

Y
0000 a 9999 (BCD)

Nota P1 a P1+2 deben estar en la misma rea de datos.


Especificaciones de
operandos

rea
rea CIO

P1

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6141
W000 a W509

CIO 0000 a
CIO 6143
W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H509

H000 a H511

A000 a A959

A000 a A957

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4093

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4093

C0000 a C4095

rea DM

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

D00000 a
D32765
E00000 a
E32765
En_00000 a
En_32765

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

553

Instrucciones de control de datos


Descripcin

Seccin 3-17

SCL2(486) se utiliza para convertir datos binarios con signo del canal fuente S a
datos BCD con signo y para ubicar el resultado en el canal resultado R, segn la
funcin lineal definida por la pendiente (X, Y) y un offset. La direccin del primer canal que contieneX, Y y el offset se especifican para el primer canal de
parmetro P1. El signo del resultado lo indica el estado del indicador de acarreo
(ON: negativo, OFF: positivo).
Se utilizan las siguientes ecuaciones para la conversin:
R=

Y
Conversin BCD de X

x (conversin BCD de S) -- (conversin BCD de offset)

La pendiente de la lnea es Y/X.

La pendiente y el offset pueden ser un valor positivo, 0 o un valor negativo. La


utilizacin de una pendiente negativa permite la conversin a escala inversa.
Se redondear el resultado al nmero entero ms prximo.
El resultado en R ser el valor de conversin BCD absoluto y el signo lo indicar
el indicador de acarreo. Por tanto, el resultado podr estar entre --9999 y 9999.
Si el resultado es menor de --9999, se enviar --9999 como resultado. Si el resultado es mayor de 9999, se considerar 9999 como resultado.
Offset negativo

Offset positivo

R (BCD con signo)

R (BCD con signo)

Y
Y

Offset

X
S (binario con signo)

S (binario con signo)


Offset

Offset de 0000
P1

Offset

(Binario con signo)

P1+1

(Binario con signo)

P1+2

(BCD con signo)

R (BCD con signo)

Y
Offset = 0000 hex.

S (binario con signo)

Se puede utilizar SCL2(486) para escalar los valores de conversin de la seal


analgica procedente de las unidades de entrada analgica, segn los parmetros de escala definidos por el usuario. Por ejemplo, si una entrada de 1 a 5V de
una unidad de entrada analgica se introduce en la memoria como 0000 a 0FA0
hexadecimal, mediante SCL2(486) el valor en memoria se puede convertir en
una escala de --100 a 200C.
SCL2(486) convierte binario con signo en BCD con signo. Por tanto, se puede
operar con valores negativos directamente para S. SCL2(486) tambin emitir
valores negativos.

554

Instrucciones de control de datos


Indicadores

Seccin 3-17

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el contenido de C+1 (X) es 0000.
ON si el contenido de C+2 (Y) no es BCD.
OFF en todos los dems casos.

Indicador de
igual

Indicador de
acarreo

CY

ON si el resultado es 0.
OFF en todos los dems casos.
ON si el resultado es negativo.
OFF si el resultado es cero o positivo.

Precauciones

Se producir un error y se pondr en ON el indicador de error si el valor de X


(C+1) es 0000 o si el valor de Y (C+2) no es BCD.
El indicador de error se pondr en ON cuando el contenido del canal resultado D
sea 0000.
Si el valor ubicado en el canal resultado es negativo, se pondr en ON el indicador de acarreo.

Ejemplos

Conversin a escala 0 a 300 de una entrada analgica de 1 a 5 V


En el ejemplo siguiente se asume que la seal analgica de 1 a 5 V se convierte
e introduce en CIO 0205 como 0000 a 0FA0 hexadecimal. Se utiliza SCL2(486)
para convertir (a escala) el valor en CIO 0205 a un valor entre 0000 y 0300
BCD.
Cuando CIO 000000 est en ON, se convierte a escala el contenido de CIO
0205 utilizando la funcin lineal definida por X (0FA0), Y (0300) y el offset (0).
Estos valores se encuentran en D00100 a D00102 y el resultado aparece en
D00200.

P1
R

Contenido de R (D00200)
P1:
P1+1:
P1+2:

Offset
X
Y

Contenido de S (CIO 0205)

1068 hex.
(X)

Conversin a escala --200 a 200 de una entrada analgica de 1 a 5 V


En el ejemplo siguiente se asume que la seal analgica de 1 a 5 V se convierte
e introduce en CIO 2005 como 0000 a 0FA0 hexadecimal. Se utiliza SCL2(486)
para convertir (a escala) el valor en CIO 2005 a un valor entre --0200 y 0200
BCD.
Cuando CIO 000000 est en ON, se convierte a escala el contenido de CIO
2005 utilizando la funcin lineal definida por X (0FA0), Y (0400) y el offset

555

Instrucciones de control de datos

Seccin 3-17

(07D0). Estos valores se encuentran en D00100 a D00102 y el resultado se enva a D00200.

P1
R

Contenido de R (D00200)
Offset

P1:
P1+1:

F A

P1+2:
Offset
07D0 hex.

0400 (Y)
Contenido de S (CIO 0200)

0FA0 hex.
(X)

3-17-7

ESCALADO 3: SCL3(487)

Funcin

Convierte datos BCD con signo en datos binarios con signo, de acuerdo con la
funcin lineal especificada. Se puede introducir un offset cuando se define la
funcin lineal.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

556

SCL3(487)

Variacio-nes

S: Canal fuente

P1

P1: Primer canal de parmetro

R: Canal de resultado

Ejecutado cada ciclo para condicin ON

SCL3(487)

Ejecutado una vez para diferencial ascendente

@SCL3(487)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado.

OK

Instrucciones de control de datos


Operandos

Seccin 3-17

El contenido de los cinco canales, empezando con el primer canal de parmetro


(P1), se muestra en el siguiente diagrama.

15

P1
Offset de la funcin lineal
8000 a 7FFF (binario con signo)
15

P1+1

X
0001 a 9999 (BCD)
15

P1+2

Y
8000 a 7FFF (binario con signo)
15

P1+3

Mximo
8000 a 7FFF (binario con signo)
15

P1+4

Mnimo
8000 a 7FFF (binario con signo)

Nota P1 a P1+4 deben estar en la misma rea de datos.


Especificaciones de
operandos

rea
rea CIO
rea de trabajo
rea de bits de
retencin
rea de bits auxiliares

P1

CIO 0000 a
CIO 6143
W000 a W511

CIO 0000 a
CIO 6139
W000 a W507

CIO 0000 a
CIO 6143
W000 a W511

H000 a H511

H000 a H507

H000 a H511

A000 a A447

A000 a A443

A448 a A959

A448 a A959

A448 a A955

rea de temporizador

T0000 a T4095

T0000 a T4091

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4091

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32763

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32763

E00000 a
E32767

rea EM con banco

En_00000 a
En_32767

En_00000 a
En_32763

En_00000 a
En_32767

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

557

Instrucciones de control de datos

Seccin 3-17

rea
Direcciones de DM/EM
indirectas en BCD

S
*D00000 a *D32767

P1

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SCL3(487) se utiliza para convertir datos BCD con signo del canal fuente S a
datos binarios con signo y para ubicar el resultado en el canal resultado R, segn la funcin lineal definida por la pendiente (X, Y) y un offset. Tambin se
especifican los valores de conversin mximo y mnimo. La direccin del primer
canal que contieneX, Y, el offset, la conversin mxima y la mnima se especifican para el primer canal de parmetro P1. El signo del resultado lo indica el
estado del indicador de acarreo (ON: negativo, OFF: positivo).
Se utilizan las siguientes ecuaciones para la conversin:
R=

Y
Conversin binaria de X

x (conversin binaria de S)+(offset)

La pendiente de la lnea es Y/X.

La pendiente y el offset pueden ser un valor positivo, 0 o un valor negativo. La


utilizacin de una pendiente negativa permite la conversin a escala inversa.
Se redondear el resultado al nmero entero ms prximo.
El valor fuente en S se considera un valor de BCD absoluto y el signo lo indica el
indicador de acarreo. Por tanto, el valor fuente podr estar entre --9999 y 9999.

558

Instrucciones de control de datos

Seccin 3-17

Si el resultado es inferior al valor de conversin mnimo, se tomar este ltimo


como resultado. Si el resultado es superior al valor de conversin mximo, se
enviar este ltimo.
Offset negativo

Offset positivo

R (binario con signo)

R (binario con signo)

Conversin mx.

Conversin mx.

X
Conversin mn.

Offset

X
S (BCD con signo)

Offset

S (BCD con signo)

Conversin mn.

Offset de 0000
R (binario con signo)
Conversin mx.

Y
X

S (BCD con signo)

Conversin mn.

SCL3(487) se utiliza para convertir datos que utilizan una escala definida por el
usuario a las unidades de salida analgicas. Por ejemplo, SCL3(487) puede
convertir 0 a 200 _C a 0000 a 0FA0 (hex.) y enviar una seal de salida analgica
1 a 5 V desde la unidad de salida analgica.
Indicadores

Nombre

Etique
ta

Indicador de
error

ER

Indicador de
igual

Indicador de
negativo

Operacin
ON si el contenido de S no es BCD.
ON si el contenido de C+1 (X) no est entre 0001 y
9999 BCD.
OFF en todos los dems casos.
ON si el resultado es 0.
OFF en todos los dems casos.
ON cuando el MSB de R (resultado) es 1.
OFF en todos los dems casos.

Precauciones

Se producir un error y se pondr en ON el indicador de error si el contenido de


S no es BCD o si el valor de X (C+1) no est entre 0001 y 9999 BCD.
El indicador de error se pondr en ON cuando el contenido del canal resultado D
sea 0000.
El indicador de negativo se pondr en ON si el MSB del resultado en R es 1, es
decir, si el resultado es negativo.

Ejemplos

Cuando se convierte a escala un valor de 0 a 200 en una seal analgica (por


ejemplo 1 a 5 V), se convierte (a escala) un valor BCD con signo de 0000 a 0200
en un valor binario con signo de 0000 a 0FA0 para una unidad de salida analgica. Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, se convierte a
escala el contenido de D00000 utilizando la funcin lineal definida por X
(0200), Y (0FA0) y el offset (0). Estos valores se almacenan en D00100 a

559

Instrucciones de control de datos

Seccin 3-17

D00102. El indicador de acarreo es el que indica el signo del valor BCD en


D00000. Se enva el resultado a CIO 2011.

P1
R

Contenido de R (2011, binario con signo)

P1+1:

Offset
X

P1+2:

P1+3:

Conversin mx.

P1+4:

Conversin mn.

P1:

Y (0FA0 hex.)

Contenido de S (D00000, BCD con signo)


X (0200)

3-17-8 VALOR MEDIO: AVG(195)


Funcin

Calcula el valor medio de un canal de entrada durante el nmero especificado


de ciclos.

Smbolo de diagrama de
rels

AVG(195)
S

S: Canal fuente

N: Nmero de ciclos

R: Canal de resultado
R+1: Primer canal del rea de trabajo

Variacio-- nes

reas de programa
aplicables

Operandos

Variacio-nes

Ejecutado cada ciclo para condicin ON

AVG(195)

Ejecutado una vez para diferencial ascendente

No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
No se admite

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado.

OK

N: Nmero de ciclos
El nmero de ciclos debe estar entre 0001 y 0040 hexadecimal (de 0 a 64 ciclos).
R: Canal resultado y R+1: Primer canal del rea de trabajo
R contendr el valor medio una vez especificado el nmero de ciclos. R+1 pro-

560

Instrucciones de control de datos

Seccin 3-17

porciona informacin sobre el proceso de clculo de la media, y R+2 a R+N+1


contiene los valores anteriores de S, tal y como muestra el diagrama siguiente.
R:
R+1:

Media
Informacin de proceso
15 14

R+1

0000000
No utilizado

Puntero del valor anterior


00 a 3F (mx. de 64 valores)
Este puntero aumenta cada vez que se ejecuta AVG(195) hasta
que alcanza N--1, momento en el que vuelve a empezar desde 0.

Indicador vlido de media


OFF: No vlido (AVG(195) todava no se ha ejecutado el nmero especificado de ciclos)
ON: Vlido.
R+2:

R+N+1:

Valor anterior #1

Valor anterior #N

Nota R a P+N+1 deben estar en la misma rea de datos.


Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

Descripcin

(n = 0 a C)
#0000 a #FFFF

#0001 a #0040

(binario)

(binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15

Durante los primeros N--1 ciclos en los que la condicin de ejecucin est en
ON, AVG(195) escribe los valores de S en los canales, empezando por R+2. El
puntero de valor anterior (bits 00 a 07 de R+1) aumenta cada vez que se escribe
un valor. El contenido de S se enviar sin cambiar a R y el indicador de valor
medio (bit 15 de R+1) permanecer en ON hasta que se escriba el valor N.

561

Instrucciones de control de datos

Seccin 3-17

Cuando se escribe el valor N en R+N+1, se computa la media de todos los valores almacenados, se enva a R como valor binario sin signo y se pone en ON el
indicador de valor medio (bit 15 de R+1). En los ciclos siguientes se refrescar el
valor en R para los N valores de S ms recientes.
El valor mximo de N es 64.
El puntero de valor anterior se restablecer a 0 una vez se han escrito los N--1
valores.
El valor medio enviado a R se redondear al nmero entero ms prximo.

S: Canal fuente

N: Nmero de ciclos

R
R+1

Puntero
Media

Indicador vlido de media


R+2
R+3

N valores

R+N+1

Indicadores

Nombre
Indicador de
error

Precauciones

Etique
Operacin
ta
ER
ON si el contenido de N es 0.
OFF en todos los dems casos.

Cada vez que la condicin de ejecucin cambie de OFF a ON se borrar el contenido del primer canal del rea de trabajo (D+1) a 0000.
El contenido del primer canal del rea de trabajo (D+1) no se borrar a 0000 la
primera vez que se ejecute el programa al iniciar. Si no se ejecuta AVG(195) en
la primera ejecucin del programa, borre del programa el primer canal del rea
de trabajo.
Si N (nmero de ciclos) contiene 0000 se producir un error y se pondr en ON
el indicador de error.
Cuando, en el siguiente ejemplo, CIO 000000 est en ON, se almacenar el
contenido de D00100 una vez en cada ejecucin para el nmero de ejecuciones
especificado en D00200. El contenido se almacenar en orden en los diez canales desde CIO 0302 hasta CIO 0311. La media de los contenidos de estos diez

562

Instrucciones de control de datos

Seccin 3-17

canales se ubicar en CIO 0300 y acto seguido se pondr en ON el bit 15 de CIO


0301.
S: D00100
S
N

(10 veces)

N: D00200

R
R: CIO 0300

Puntero

R+1: CIO 0301

Media

Indicador vlido de media


R+2: CIO 0302
R+3: CIO 0303

R+11: CIO 0311

Ejemplos

En el ejemplo siguiente se pone el contenido de CIO 0040 a #0000 y luego se


aumenta en 1 en cada ciclo. En los dos primeros ciclos, AVG(195) mueve el contenido de CIO 0040 a D01002 y D01003. El contenido de D01001 tambin cambiar (hecho que puede confirmar que el resultado de AVG(195) ha cambiado).
En el tercer ciclo y siguientes, AVG(195) calcula el valor medio del contenido de
D01002 a D01004 y escribe el valor medio en D01000.

@MOV

1er ciclo
CIO 0040 0000

2o ciclo
0001

3er ciclo
0002

4o ciclo
0003

D01000

0000

0001

0001

0002

Media

D01001
D01002
D01003
D01004

0001
0000
-----

0002
0000
0001
---

8000
0000
0001
0002

8001
0003
0001
0002

Puntero
3 valores anteriores de IR 40

563

Subrutinss

Seccin 3-18

3-18 Subrutinss
3-18-1 LLAMADA A SUBRUTINA: SBS(091)
Funcin

Llama a la subrutina con el nmero de subrutina especificado y ejecuta dicho


programa.

Smbolo de diagrama de
rels

SBS(091)
N

Variacio-- nes

Variacio-nes

N: Nmero de subrutina

Ejecutado cada ciclo para condicin ON

SBS(091)

Ejecutado una vez para diferencial ascendente

@SBS(091)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos
Especificaciones de
operandos

Descripcin

564

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de subrutina
Especifica el nmero de subrutina entre 0 y 1023 decimal.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin

---

rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

--0 a 1023

SBS(091) llama a la subrutina con el nmero de subrutina especificado. La subrutina es la seccin del programa entre SBN(092) y RET(093). Cuando se ha

Subrutinss

Seccin 3-18
completado la subrutina, contina la ejecucin del programa con la instruccin
siguiente a SBS(091).
Condicin de ejecucin ON

Programa
principal

Programa de
subrutina
(SBN(092) a
RET(093))

Fin del programa

565

Subrutinss

Seccin 3-18
Se pueden anidar las subrutinas hasta 16 niveles. El anidamiento se produce
cuando se designa otra subrutina dentro de un programa de subrutina, tal y como se muestra en el ejemplo siguiente (anidado a 3 niveles).
SBN 10

SBN 11

SBN 11

SBS 12

RET

RET

SBN 12

RET

Condicin de ejecucin ON

Programa principal

Programa
de subrutina
n

Condicin de ejecucin ON

Anidamiento
a dos niveles
Programa
de subrutina
m

Fin del programa

Nota Se puede designar una subrutina ms de una vez en un programa.


Subrutinas y diferencial

Observe las siguientes precauciones cuando utilice instrucciones de diferencial


(DIFU(013), DIFD(014) o instrucciones de diferencial ascendente/descendente) en subrutinas.
La operacin de las instrucciones de diferencial en una subrutina es impredecible si se ejecuta una subrutina ms de una vez en el mismo ciclo. En el ejemplo
siguiente se ejecuta la subrutina 0001 cuando CIO 000000 est en ON y DIFU(013) pone a CIO 000100 en ON una vez que CIO 000001 ha pasado de
OFF a ON. Si CIO 000001 est en ON en el mismo ciclo, se ejecutar la subruti-

566

Subrutinss

Seccin 3-18
na 0001 de nuevo, pero esta vez DIFU(013) pondr a CIO 000100 en OFF sin
comprobar el estado de CIO 000001.

Subrutina
0001

Se ejecuta la subrutina de nuevo.

En contraposicin, la salida de una instruccin de diferencial (DIFU(013 o


DIFD(014)) permanecera en ON si se ejecutara la instruccin y se pusiera la
salida en ON y si no se designara la misma subrutina por segunda vez.
1
1

3
1

000100

La subrutina no se ejecuta en
los ciclos siguientes.
2

En el ejemplo siguiente, se ejecuta la subrutina 0001 si CIO 000000 est en


ON. DIFU (013) pone la salida CIO 000100 en ON cuando CIO 000001 ha pasado de OFF a ON. En el siguiente ciclo no se ejecutar de nuevo la subrutina
0001 y la salida CIO 000100 permanecer en ON si CIO 000000 est en OFF.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el anidamiento supera los 16 niveles.
ON si el nmero de subrutina especificado no existe.
ON si una subrutina se designa a s misma.
ON si se llama a una subrutina que se est ejecutando.
ON si la subrutina especificada no est definida en la
tarea actual.
OFF en todos los dems casos.

Nota El mtodo de entrada del nmero de subrutina, N, es diferente para CX-Programmer que para la consola de programacin. Entrada de 0 a 1023 o &0 a
&127 para CX-Programmer y de 0000 a 1023 para la consola de programacin.
Precauciones

SBS(091) y el correspondiente SBN(092) se deben programar en la misma tarea. Se producir un error si el SBN(092) correspondiente no est en la tarea.
Se considerar a SBS(091) como NOP(000) cuando est en una seccin del
programa enclavada por IL(002) e ILC(003).

567

Subrutinss

Seccin 3-18
No se podr llamar a una subrutina en los siguientes casos (aunque se est ejecutando SBS(091)):
1, 2, 3...

Ejemplos

1.
2.
3.
4.

La subrutina especificada no est definida en la tarea actual.


La subrutina se est llamando a s misma.
El anidamiento de subrutinas supera los 16 niveles.
Se est ejecutando la subrutina especificada.

Ejemplo 1: Subrutinas secuenciales (no anidadas)


Cuando, en el siguiente ejemplo, CIO 000000 est en ON se ejecuta la subrutina 1 y la ejecucin del programa regresa a la instruccin siguiente a SBS(091).
A continuacin, se ejecuta el resto del programa principal (hasta la instruccin
justo anterior a SBN(092) 1).

1
CIO 000000 ON
Programa principal

Subrutina 1

Orden de ejecucin
Programa de subrutina: S

ASB
AB

Ejemplo 2: Subrutinas secuenciales (no anidadas)


Cuando, en el siguiente ejemplo, CIO 000000 est en ON se ejecuta la subrutina 1 y la ejecucin del programa regresa a la instruccin siguiente a SBS(091).

568

Subrutinss

Seccin 3-18
Cuando CIO 000001 est en ON se ejecuta la subrutina 2 y la ejecucin del programa regresa a la instruccin siguiente a SBS(091) 2.

1
CIO 000000 ON

Programa principal
3
CIO 000001 ON

Orden de ejecucin
2

AS1BS2C
AS1BC
ABS2C
ABC

Subrutinas

Fin del programa

Ejemplo 3: Subrutinas anidadas


Cuando, en el siguiente ejemplo, CIO 000000 est en ON se ejecuta la subrutina 1. Si CIO 000001 est en ON, se ejecuta la subrutina 2 desde la subrutina 1 y
la ejecucin del programa regresa a la instruccin siguiente a SBS(091) 2 cuando la subrutina 2 se ha completado. La ejecucin de la subrutina 1 contina y la

569

Subrutinss

Seccin 3-18
ejecucin del programa regresa a la instruccin siguiente a SBS(091) 1 cuando
se ha completado la subrutina 1.

1
CIO 000000 ON
1

Orden de ejecucin
2

AS1-1S2S1-2B

Subrutina 1

AS1-1S1-2B
CIO 000001 ON

AB
AB

Subrutina 2

3-18-2 MACRO: MCRO(099)


Funcin

Llama a la subrutina con el nmero de subrutina especificado y ejecuta dicho


programa utilizando los parmetros de entrada en S a S+3 y los parmetros de
salida en D a D+3.

Smbolo de diagrama de
rels

MCRO(099)
N

N: Nmero de subrutina

S: Primer canal de parmetro de


entrada

D: Primer canal de parmetro de


salida

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

MCRO(099)

Ejecutado una vez para diferencial ascendente

@MCRO(099)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

570

No soportado
No soportado

Subrutinss
reas de programa
aplicables

Seccin 3-18
reas de programa
de bloques
OK

Operandos

Especificaciones de
operandos

reas de programa
de pasos
OK

Subrutinas

Tareas de
interrupcin

OK

OK

N: Nmero de subrutina
Especifica el nmero de subrutina entre 0 y 1023 decimal.
rea

rea CIO

---

CIO 0000 a CIO 6140

rea de trabajo

---

W000 a W508

rea de bits de
retencin

---

H000 a H508

rea de bits auxiliares

---

A000 a A444

A448 a A956

A448 a A956
rea de temporizador

---

T0000 a T4092

rea de contador

---

C0000 a C4092

rea DM

---

D00000 a D32764

rea EM sin banco

---

E00000 a E32764

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

---

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

0 a 1023

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

---

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a
+2047,IR15
DR0 a DR15, IR0 a IR15, IR0+(++) a
IR015+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MCRO(099) llama a la subrutina con el nmero de subrutina especificado,


exactamente igual que SBS(091). A diferencia de SBS(091), los operandos S y
D de MCRO(099) pueden utilizarse para cambiar direcciones de bit y de canal
en la subrutina, aunque la estructura de la subrutina es constante.
Cuando se ejecuta MCRO(099), se copia el contenido de S a S+3 en A600 a
A603 (entradas del rea de macro) y se ejecuta la subrutina especificada. Una
vez completada la subrutina, se copia el contenido de A604 a A607 (salidas del

571

Subrutinss

Seccin 3-18
rea de macro) en D a D+3 y contina la ejecucin del programa con la instruccin siguiente a MCRO(099).
MCRO(099)

Ejecucin de subrutina entre SBN(092) y


RET(093).

MCRO(099)

La subrutina utiliza A600 a


A603 como entradas y A604 a
A607 como salidas.

Se puede utilizar MCRO(099) para concentrar dos o ms subrutinas con la misma estructura pero con direcciones de entrada y salida diferentes en un programa de subrutina nico. Cuando se ejecuta MCRO(099) se transfieren los datos
de entrada y salida especificados a la subrutina especificada.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el anidamiento supera los 16 niveles.
ON si el nmero de subrutina especificado no existe.
ON si una subrutina se llama a s misma.
ON si se llama a una subrutina que se est ejecutando.
ON si la subrutina especificada no est definida en la
tarea actual.
OFF en todos los dems casos.

La siguiente tabla muestra los canales relevantes del rea auxiliar.


Nombre

Direccin

Canales de entrada
del rea de macro

A600 a
A603

Canales de entrada
del rea de macro

A604 a
A607

Operacin
Cuando se ejecuta MCRO(099), se copian los
cuatro canales de S a S+3 en A600 a A603. Se
pasan estos canales de entrada a la subrutina.
Una vez se ha ejecutado la subrutina
especificada en MCRO(099), se copian los
datos de salida de estos canales de salida a D a
D+3.

Nota El mtodo de entrada del nmero de subrutina, N, es diferente para CX-Programmer que para la consola de programacin. Entrada de 0 a 1023 para el CXProgrammer y de 0000 a 1023 para la consola de programacin.
Precauciones

Los cuatro canales de datos de entrada (canales o bits) en A600 a A603 y los
cuatro canales de datos de salida (canales o bits) en A604 a A607 deben utilizarse en la subrutina que llame MCRO(099). No es posible pasar ms de cuatro
canales de datos.
Es posible anidar las instrucciones MCRO(099), pero deben guardarse los datos de los canales de entrada y salida del rea de macro (A600 a A607) antes de
llamar a otra subrutina, pues todas las instrucciones utilizan los mismos 8 canales.

Ejemplo

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, dos instrucciones


MCRO(099) pasan datos de entrada y salida diferentes a la subrutina 1.

572

Subrutinss

Seccin 3-18
1, 2, 3...

1. La primera instruccin MCRO(099) pasa los datos de entrada de CIO 0100


a CIO 0103 y ejecuta la subrutina. Una vez completada la subrutina, se almacenan los datos de salida en CIO 0300 a CIO 0303.
2. La segunda instruccin MCRO(099) pasa los datos de entrada de
CIO 0200 a CIO 0203 y ejecuta la subrutina. Cuando se ha completado la
subrutina se almacenan los datos de salida en CIO 0400 a CIO 0403.

Los datos de entrada se pasan


cuando se llama a la subrutina.

Canales de entrada del rea de macro

Entrada
1

Ejecucin de la
subrutina 1
Salida
Subrutina 1

Los datos de salida se pasan cuando se regresa de la subrutina.

Canales de salida del rea de macro

D: 0300

A604

D+1: 0301

A605

D+2: 0302

A606

D+3: 0303

A607

La segunda instruccin MCRO(099) opera de la misma forma, pero los datos de


entrada de CIO 0200 a CIO 0203 se pasan a A600 a A603 y los datos de salida
de A604 a A607 se pasan a CIO 0400 a CIO 0403.

Slo son distintas


las direcciones.

573

Subrutinss

Seccin 3-18

3-18-3 DEFINIR SUBRUTINA: SBN(092)


Indica el principio del programa de subrutina con el nmero de subrutina especificado. Se utiliza en combinacin con RET(093) para definir una regin de subrutina.

Funcin

Smbolo de diagrama de
rels

SBN(092)
N

Variacio-- nes

Variacio-nes

N: Nmero de subrutina

Ejecutado cada ciclo para condicin ON

No soportado

Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

reas de programa
de pasos
No se admite

SBN(092)

Subrutinas
(Ver nota).

Tareas de
interrupcin
OK

Nota SNB(092) slo se permite una vez al principio de cada subrutina.


Operandos
Especificaciones de
operandos

Descripcin

574

N: Nmero de subrutina
Especifica el nmero de subrutina entre 0 y 1023 decimal.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin
rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

---

--0 a 1023

SBN(092) indica el principio de la subrutina con el nmero de subrutina especificado. RET(093) indica el final de la subrutina.

Subrutinss

Seccin 3-18
La regin del programa que comienza en la primera instruccin SBN(092) es la
regin de subrutina. Una subrutina slo se ejecuta cuando la llama SBS(091) o
MCRO(099).

Regin de subrutina

Precauciones

Cuando no se est ejecutando la subrutina, se considerarn a las instrucciones


como NOP(000).
En cada tarea, coloque las subrutinas despus del programa principal y justo
antes de la instruccin END(001) en el programa. Si se coloca parte del programa principal despus de la regin de subrutina, se ignorar la seccin del programa.

OR

Regin de subrutina

No se ejecutar
esta parte del programa.

Nota El mtodo de entrada del nmero de subrutina, N, es diferente para CX-Programmer que para la consola de programacin. Entrada de #0 a #1023 para el
CX-Programmer y de 0000 a 1023 para la consola de programacin.
Asegrese de colocar cada subrutina en el mismo programa (tarea) que la instruccin SBS(091) o MCRO(099) correspondiente. No se puede llamar desde

575

Subrutinss

Seccin 3-18
una tarea a una subrutina de otra tarea. Existe la posibilidad de programar una
subrutina dentro de una tarea de interrupcin.
No se admite

OK

Tarea 1

Tarea

Tarea 2

En las subrutinas no se pueden utilizar las instrucciones STEP(008) y


SNXT(009).

No se admite

576

Instrucciones de control de interrupcin

Seccin 3-19

Cuando, en el siguiente ejemplo, CIO 000000 est en ON se ejecuta la subrutina 10 y la ejecucin del programa regresa a la instruccin siguiente a la instruccin SBS(091) o MCRO(099) que llam a la subrutina.

Ejemplo

OR
#10

#10

#10

Subrutina 10

3-18-4 FINAL DE SUBRUTINA: RET(093)


Indica el final del programa de subrutina. Se utiliza en combinacin con
SBN(092) para definir una regin de subrutina.

Funcin
Smbolo de diagrama de
rels
Variacio-- nes

reas de programa
aplicables

RET(093)
Ejecutado cada ciclo para condicin ON
Variacio-nes
Especificacin de refresco inmediato
reas de programa
de bloques
No se admite

reas de programa
de pasos
No se admite

Subrutinas
(Ver nota).

RET(093)
No soportado
Tareas de
interrupcin
OK

Nota RET(093) slo se admite una vez al final de cada subrutina.


Descripcin

RET(093) indica el final de una subrutina y SBN(092) indica el principio de una


subrutina. Para ms detalles sobre la operacin de las subrutinas consulte
3-18-3SUBROUTINE ENTRY: SBN(092).
Cuando la ejecucin del programa llega a RET(093), regresa automticamente
a la instruccin siguiente a la instruccin SBS(091) o MCRO(099) que llam a la
subrutina. Cuando MCRO(099) ha llamado a la subrutina, se escriben los datos
de salida de A604 hasta A607 en D a D+3 antes de que regrese la ejecucin del
programa.

Precauciones

Cuando no se est ejecutando la subrutina, se considerarn a las instrucciones


como NOP(000).

Ejemplo

Consulte 3-18-3 SUBROUTINE ENTRY: SBN(092) para ver ms ejemplos de la


operacin de RET(093).

3-19 Instrucciones de control de interrupcin


3-19-1 FIJAR MSCARA DE INTERRUPCIN: MSKS(690)
Funcin

Configura el procesamiento de interrupcin para interrupciones de E/S o interrupciones programadas.


Tanto las tareas de interrupcin de E/S como las programadas estn enmascaradas (inhabilitadas) cuando el PLC se conecta por primera vez. MSKS(690) se

577

Instrucciones de control de interrupcin

Seccin 3-19

puede utilizar para desenmascarar o enmascarar las interrupciones de E/S y


seleccionar los intervalos de tiempo para interrupciones programadas.
Smbolo de diagrama de
rels

Variacio-- nes

MSKS(690)

Variacio-nes

N: Identificador de interrupcin

S: Datos de interrupcin

Ejecutado cada ciclo para condicin ON

MSKS(690)

Ejecutado una vez para diferencial ascendente

@MSKS(690)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

CS1W-INT01

Operandos

Especificacin de los procesos de mscara y de interrupcin de E/S


Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
0: Nmero de unidad 0
1: Nmero de unidad 1
Mscara de interrupcin
0: Habilita la interrupcin
1: Enmascara la interrupcin

Note

1. No se pueden utilizar CS1W-INT01 y C200H-INT01 a la vez.


2. Se borrarn todas las entradas de interrupcin detectadas cuando se borre
la mscara de interrupcin.
En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la
unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.
Nmero
de
unidad
0

Nmeros de tarea de interrupcin


100 a 115

116 a 131

Los bits de 00 a 15 de S corresponden


p
a las tareas de
i
interrupcin
i de
d entradas.
d

Especificacin del proceso de interrupcin de E/S y designacin del flanco ascendente/descendente


Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
2: Nmero de unidad 0
3: Nmero de unidad 1
Especifique el flanco ascendente o descendente de la seal de
entrada de interrupcin.
0: Flanco ascendente
1: Flanco descendente

En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la


unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.

578

Instrucciones de control de interrupcin

Seccin 3-19

Nmero
de
unidad
2

Nmeros de tarea de interrupcin


100 a 115

116 a 131

Los bits de 00 a 15 de S corresponden


p
a las tareas de
i
interrupcin
i de
d entradas.
d

Nota Se borrarn todas las unidades de interrupcin detectadas cuando se cambie la


designacin del flanco ascendente/descendente.
C200H-INT01
Especificacin de los procesos de mscara y de interrupcin de E/S
Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
0: Nmero de unidad 0
1: Nmero de unidad 1
2: Nmero de unidad 2
3: Nmero de unidad 3
Mscara de interrupcin

0: Habilita la interrupcin
1: Enmascara la interrupcin

Note

1. No se pueden utilizar CS1W-INT01 y C200H-INT01 a la vez.


2. Se borrarn todas las entradas de interrupcin detectadas cuando se borre
la mscara de interrupcin.
En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la
unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.
Nmero
de
unidad
0

Nmeros de tarea de interrupcin

100 a 107

108 a 115

116 a 123

124 a 131

Los bits de 00 a 07 de S corresponden


p
a las tareas de
i
interrupcin
i de
d entradas.
d

Especificacin de las interrupciones programadas


Operando
N

Contenido
Especifique el nmero de interrupcin programada.
4: Tarea de interrupcin 2
5: Tarea de interrupcin 3

0000:
Inhabilite la interrupcin programada.
0001 a 270F hex.:
Intervalo de interrupcin programada (1 a 9999)
Nota Se puede seleccionar la unidad del intervalo de interrupcin programada a 10 ms o 1,0 ms en las selecciones de interrupcin de
la configuracin del PLC.

Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A447
A448 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

579

Instrucciones de control de interrupcin

Seccin 3-19

rea DM

rea
---

S
D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ 32767
@ E00000 a @ 32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
Valores especificados exclusivamente

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

DR0 a DR15
,IR0 a ,IR15
--2048 a +2047,IR0 a
--2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

MSKS(690) controla las interrupciones de E/S y las interrupciones programadas. El valor de N identifica a la interrupcin.
N = 0 1 (0 a 3 para C200HS-INT01)
Los valores 0 y 1 (0 a 3) se corresponden con las unidades de entrada de interrupcin 0 y 1 (0 a 3).
Los bits de 0 a 7 de S se corresponden con los nmeros de entrada de interrupcin de la unidad especificada. MSKS(690) enmascara (inhabilita) la entrada de
interrupcin cuando el bit correspondiente est en ON y desenmascara (habilita) la entrada de interrupcin cuando el bit correspondiente est en OFF. Con
CS1W-INT01 se puede especificar la designacin del flanco ascendente/descendente de las entradas (ver ms abajo).

Descripcin

Unidades de entrada de interrupcin 0 y 1 (o de 0 a 3)


Interrupci
n de
E/S

Enmascarar (1) o desenmascarar (0) las entradas de interrupcin 0 a 15, o 0 a 7 (dependiendo del modelo de unidad de entrada de interrupcin).

N = 2 3 (CS1W-INT01 slo)
Los valores 2 y 3 se corresponden con las unidades de entrada de interrupcin 0
y 1. Especifique (con S) la designacin del flanco ascendente/descendente de
las entradas de interrupcin de la unidad de entrada de interrupcin especificada con N.
Note

580

1. Se puede utilizar MSKS(690) para habilitar una tarea de interrupcin de E/S


concreta en un ciclo concreto e inhabilitar la tarea en todos los dems ciclos.
2. Los nmeros de unidad se asignan a las unidades de entrada de interrupcin en el orden en que se montan, de izquierda a derecha.

Instrucciones de control de interrupcin

Seccin 3-19

N=45
Los valores 4 y 5 se corresponden con las interrupciones programadas 2 y 3.
Cuando N es 4 5 el contenido de S inhabilita la tarea de interrupcin (S=0000)
o selecciona la tarea de interrupcin con el intervalo de tiempo especificado
(S=0001 a 270F). Se pueden seleccionar en la configuracin del PLC las unidades del intervalo de interrupcin programado (00: 10 ms, 01: 1,0 ms), con lo que
el rango del intervalo de tiempo puede ir de 10 ms a 99,99 s o de 1 ms a 9,999 s.
Note

1. No seleccione el intervalo de tiempo de una interrupcin programada en


menos de 10 ms. Adems, asegrese de que el intervalo de tiempo es mayor que el tiempo que se necesita para ejecutar la tarea de interrupcin programada.
2. En interrupciones programadas, MSKS(690) se utiliza slo para seleccionar el intervalo de interrupcin programada y no se puede utilizar para seleccionar el tiempo para la primera interrupcin programada. Si desea controlar de forma precisa el tiempo para la primera interrupcin y el intervalo
de interrupcin, programe, justo antes de programar MSKS(690), la instruccin CLI(691) para seleccionar el tiempo para la primera interrupcin programada.
Intervalo de tiempo
Interrupcin proSeleccionar intervalo de
gramada
tiempo de interrupcin
programada.

A440 contiene el tiempo de procesamiento mximo de las tareas de interrupcin, y el bit de la derecha de A441 contiene el nmero de tarea de interrupcin
de la tarea con mayor tiempo de procesamiento.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si N no est dentro del rango especificado de 0 a 5.
ON si S no est dentro del rango especificado de 0000
a 00FF cuando N es 0 a 3 (slo en C200HS-INT).
ON si S no est dentro del rango especificado de 0000
a 270F cuando N es 4 5.

Indicador de
igual
Indicador de
negativo

OFF en todos los dems casos.


OFF

OFF

581

Instrucciones de control de interrupcin

Seccin 3-19

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre

Direccin

Indicador de error
de tarea de
interrupcin

A40213

Operacin
ON en los siguientes casos:
1) Se ejecut una tarea de interrupcin mayor
de 10 ms durante el refresco de E/S con una
unidad de E/S especial C200H o con un bastidor
esclavo de E/S remotas.

Indicador de causa
A42615
de error de tarea de
interrupcin
Nmero de tarea
A42600 a
del error de tarea de A42611
interrupcin

2) Se ejecut IORF(097) en una tarea de


interrupcin sin inhabilitar el refresco cclico de
E/S especial.
Indica si tuvieron lugar los errores de tarea de
interrupcin 1 2.
Para error 1:
Indica el nmero de tarea de interrupcin.
Para error 2:
Indica el nmero de unidad de la unidad de E/S
especial en la que tuvo lugar un refresco de E/S
mltiple.

Se pueden utilizar las entradas de interrupcin de unidades de entrada de interrupcin CS1 y C200H. No se pueden utilizar las entradas de interrupcin de tarjetas internas ni de unidades de E/S especiales.

Precauciones

Las interrupciones tienen diferentes niveles de prioridad. Una interrupcin de


corte de alimentacin tiene la prioridad mayor, seguida de interrupciones de
E/S, interrupciones externas y, finalmente, interrupciones programadas. Las interrupciones de E/S con nmeros ms bajos tienen prioridad sobre aquellas con
un nmero mayor.
Asegrese de que la tarea de interrupcin no necesita ms de 10 ms si est conectada una unidad de E/S especial C200H o un bastidor esclavo de E/S remotas SYSMAC BUS. Si se ejecuta una tarea de interrupcin de ms de 10 ms durante el refresco de E/S con la unidad de E/S especial o el bastidor esclavo, se
producir un error no fatal y se pondr en ON el indicador de error de tarea de
interrupcin (A40213).
Cuando se ejecute IORF(097) en una tarea de interrupcin para refrescar E/S
en una unidad de E/S especial, deber inhabilitar el refresco cclico para esta
unidad de E/S especial en la configuracin del PLC. Si no est inhabilitado el
refresco cclico para la unidad de E/S especial, se podr ejecutar IORF(097) durante el refresco cclico, con el resultado de un error de refresco duplicado (no
fatal) y de la puesta en ON del indicador de error de tarea de interrupcin
(A40213).
Ejemplos
Ejemplos para CS1W-INT01
Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, MSKS(690) desenmascara (habilita) las entradas de interrupcin en la unidad de entrada de interrupcin 0.
000000
MSKS
N

D00100

D00100

15
0

14
0

13
1
3

0: Habilitado
1: Enmascarado

582

12
1

11
1

10
1

9
1
F

8
1

7
0

6
0

5
1
2

4
0

3
0

2
1

1
1
7

0
1

Instrucciones de control de interrupcin

Seccin 3-19

Cuando, en el siguiente ejemplo, CIO 000001 se pone en ON, MSKS(690) selecciona las designaciones de flanco ascendente/descendente para la unidad
de entrada de interrupcin 0.
000001
MSKS
N

D00101

D00101

15
0

14
0

13
0

12
0

11
0

10
1

9
0

8
1

7
0

6
0

5
0

4
0

3
0

2
0

1
1

0
0

0: Flanco ascendente
1: Flanco descendente

Ejemplo para C200H-INT01


Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, MSKS(690) desenmascara (habilita) las entradas de interrupcin 1, 3 y 5 en la unidad de entrada de interrupcin 2.

Ejemplo para interrupciones programadas


Cuando, en el siguiente ejemplo, CIO 000001 est en ON, MSKS(690) selecciona un intervalo de tiempo de 10 s para la interrupcin programada 2. En este
caso se seleccionan las unidades de intervalo de tiempo programadas a 10 ms
(en la configuracin del PLC).

3-19-2 LEER MSCARA DE INTERRUPCIN: MSKR(692)


Funcin

Lee las selecciones de procesamiento de interrupcin actual que se realizaron


con MSKS(690).

Smbolo de diagrama de
rels

Variacio-- nes

MSKR(692)

Variacio-nes

N: Identificador de interrupcin

D: Canal de destino

Ejecutado cada ciclo para condicin ON

MSKR(692)

Ejecutado una vez para diferencial ascendente

@MSKR(692)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

CS1W-INT01
Mscaras de lectura

583

Instrucciones de control de interrupcin

Seccin 3-19

Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
0: Nmero de unidad 0
1: Nmero de unidad 1
Estado de la mscara de interrupcin
0: Interrupcin habilitada
1: Interrupcin enmascarada

En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la


unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.
Nmero
de
unidad
0

Nmeros de tarea de interrupcin

100 a 115

116 a 131

Los bits de 00 a 15 de S corresponden


p
a las tareas de
i
interrupcin
i de
d entradas.
d

Designaciones de flanco ascendente/descendente de lectura


Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
2: Nmero de unidad 0
3: Nmero de unidad 1
Flanco ascendente o descendente de la seal de entrada de
interrupcin.
0: Flanco ascendente
1: Flanco descendente

En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la


unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.
Nmero
de
unidad
2

Nmeros de tarea de interrupcin


100 a 115

116 a 131

Los bits de 00 a 15 de S corresponden


p
a las tareas de
i
i de
d entradas.
d
interrupcin

C200H-INT01
Mscaras de lectura
Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
0: Nmero de unidad 0
1: Nmero de unidad 1
2: Nmero de unidad 2
3: Nmero de unidad 3
Mscara de interrupcin
0: Interrupcin habilitada
1: Interrupcin enmascarada

En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la


unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.

584

Nmero
de
unidad
0

Nmeros de tarea de interrupcin


100 a 107

108 a 115

116 a 123

124 a 131

Los bits de 00 a 07 de S corresponden


a las tareas de
p
i
interrupcin
i de
d entradas.
d

Instrucciones de control de interrupcin

Seccin 3-19

Intervalo de interrupcin programada de lectura


Operando
N

Contenido
Especifique el nmero de interrupcin programada.
4: Tarea de interrupcin 2
5: Tarea de interrupcin 3

0000:
Interrupcin programada inhabilitada.
0001 a 270F hex.:
Intervalo de interrupcin programada (1 a 9999)
Nota Se puede seleccionar la unidad del intervalo de interrupcin programada a 10 ms o 1,0 ms en las selecciones de interrupcin de
la configuracin del PLC.

Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A448 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767
Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes
Registros de datos

Valores especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

(n = 0 a C)
--DR0 a DR15
,IR0 a ,IR15
--2048 a +2047,IR0 a
--2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MSKR(692) lee las selecciones de interrupcin que se realizaron con


MSKS(690).
Si se especifica una unidad de entrada de interrupcin, MSKR(692) lee el estado de la mscara actual para las interrupciones de E/S de esa unidad.
Si se especifica una interrupcin programada, MSKR(692) lee el intervalo de
tiempo seleccionado para esa interrupcin.
N = 0 1 (0 a 3 para C200HS-INT01)
Los valores 0 y 1 (0 a 3) se corresponden con las unidades de entrada de interrupcin 0 y 1 (0 a 3).
Los bits de 0 a 7 de D se correspondern con los nmeros de entrada de inter-

585

Instrucciones de control de interrupcin

Seccin 3-19

rupcin 0 a 7 de la unidad especificada. Si un bit est en ON se enmascara (inhabilita) la entrada de interrupcin correspondiente; si un bit est en OFF se
desenmascara (habilita) la entrada de interrupcin correspondiente.
N = 2 3 (CS1W-INT01 slo)
Los valores 2 y 3 se corresponden con las unidades de entrada de interrupcin 0
y 1. Las designaciones del flanco ascendente/descendente de las entradas de
interrupcin de la unidad de entrada de interrupcin especificada con N se envan a D.
N=45
Los valores 4 y 5 se corresponden con las interrupciones programadas 2 y 3.
Cuando N es 4 5 el contenido de D muestra el intervalo de tiempo seleccionado para esa interrupcin. Una seleccin de 0000 indica que se ha inhabilitado la
interrupcin. Se pueden seleccionar en la configuracin del PLC las unidades
del intervalo de interrupcin programado (00: 10 ms, 01: 1,0 ms), con lo que el
rango del intervalo de tiempo es de 10 ms a 99,99 s o de 1 ms a 9,999 s.
Indicadores

Nombre

Etique
Operacin
ta
ER
ON si N no est dentro del rango especificado de 0 a 5.

Indicador de
error

OFF en todos los dems casos.

Se puede ejecutar MSKR(692) en el programa principal o en las tareas de interrupcin.

Precauciones
Ejemplos

Ejemplo para CS1W-INT01


Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, MSKR(692) lee
el estado de la mscara actual de la unidad de entrada de interrupcin 2 y lo
almacena en D00100.
000000
MSKR
N

D00100

D00100

15
1

14
1

13
1

12
1

11
0

10
1

9
0

8
1

7
1

6
1

5
1

4
1

3
0

2
0

1
1

0
0

0: Interrupcin habilitada
1: Interrupcin enmascarada

Cuando, en el siguiente ejemplo, CIO 000001 se pone en ON, MSKS(690) lee


las designaciones de flanco ascendente/descendente para la unidad de entrada de interrupcin 0 y las almacena en D00101.
000001
MSKR
N

D00101

D00101

15
0

14
0

13
0

12
0

11
0

10
0

9
1
3

8
1

7
0

6
0

5
0
1

4
1

3
1

2
0

1
0

0
1

0: Flanco ascendente
1: Flanco descendente

Ejemplo para C200H-INT01


Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, MSKR(692) lee
el estado de la mscara actual de la unidad de entrada de interrupcin 2. En este
caso se habilitan las entradas de interrupcin 1, 3 y 5.

586

Instrucciones de control de interrupcin

Seccin 3-19

Ejemplo para interrupciones programadas


Cuando, en el siguiente ejemplo, CIO 000100 se pone en ON, MSKR(692) lee
la configuracin de la interrupcin programada 2. En este caso, se selecciona el
tiempo de intervalo a 1000 (3E8 hexadecimal), que equivale a 10 s si las unidades de intervalo de tiempo programadas estn en 10 ms en la configuracin del
PLC.

3-19-3 BORRAR INTERRUPCIN: CLI(691)


Funcin

Borra o retiene las entradas de interrupcin registradas para interrupciones de


E/S o selecciona el tiempo para la primera de las instrucciones programadas.

Smbolo de diagrama de
rels

Variacio-- nes

CLI(691)

Variacio-nes

N: Identificador de interrupcin

S: Datos de interrupcin

Ejecutado cada ciclo para condicin ON

CLI(691)

Ejecutado una vez para diferencial ascendente

@CLI(691)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

CS1W-INT01
Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
0: Nmero de unidad 0
1: Nmero de unidad 1
Estado de la mscara de interrupcin
0: Entrada de interrupcin registrada retenida
1: Entrada de interrupcin registrada borrada

En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la


unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.
Nmero
de
unidad
0

Nmeros de tarea de interrupcin


100 a 115

116 a 131

Los bits de 00 a 15 de S corresponden


p
a las tareas de
i
interrupcin
i de
d entradas.
d

587

Instrucciones de control de interrupcin

Seccin 3-19

C200H-INT01
Operando
N

Contenido
Especifique el nmero de unidad de la unidad de entrada de
interrupcin.
0: Nmero de unidad 0
1: Nmero de unidad 1
2: Nmero de unidad 2
3: Nmero de unidad 3
Mscara de interrupcin

0: Entrada de interrupcin registrada retenida


1: Entrada de interrupcin registrada borrada

En la tabla siguiente se muestra la relacin entre los nmeros de unidad de la


unidad de entrada de interrupcin y los nmeros de tarea de interrupcin.
Nmero
de
unidad
0

Nmeros de tarea de interrupcin


100 a 107

108 a 115

116 a 123

124 a 131

Los bits de 00 a 07 de S corresponden


p
a las tareas de
i
interrupcin
i de
d entradas.
d

Borrado de las interrupciones programadas


Operando
N

Contenido
Especifique el nmero de interrupcin programada.
4: Tarea de interrupcin 2
5: Tarea de interrupcin 3

0000:
Interrupcin programada inhabilitada.
0001 a 270F hex.:
Intervalo de interrupcin programada (1 a 9999)
Nota Se puede seleccionar la unidad del intervalo de interrupcin programada a 10 ms o 1,0 ms en las selecciones de interrupcin de
la configuracin del PLC.

Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A000 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

---

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

588

Instrucciones de control de interrupcin

Seccin 3-19

rea
Constantes

---

Registros de datos

Valores especificados exclusivamente

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

DR0 a DR15

,IR0 a ,IR15
--2048 a +2047,IR0 a
--2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Dependiendo del valor de N, CLI(691) puede borrar las interrupciones de E/S


registradas que se han especificado o seleccionar el tiempo antes de la ejecucin de la primera interrupcin programada.

Descripcin

N = 0 a 1 (0 a 3 para C200HS-INT01)
Los valores 0 y 1 (0 a 3) se corresponden con las unidades de entrada de interrupcin 0 y 1 (0 a 3).
Los bits de 0 a 7 de S se corresponden con los nmeros de entrada de interrupcin 0 a 7 de la unidad especificada. CLI(691) borra un entrada de interrupcin
registrada cuando el bit de S correspondiente est en ON y mantiene la entrada
de interrupcin registrada cuando el bit correspondiente est en OFF.

Entrada de interrupcin n

Estado interno

Entrada
de interrupcin n

Estado interno
Interrupcin registrada
borrada

Interrupcin registrada
retenida

Si se est ejecutando una tarea de interrupcin de E/S y se recibe un entrada de


interrupcin con un nmero de interrupcin distinto se grabar este nmero de
interrupcin de forma interna. Las interrupciones de E/S almacenadas se ejecutarn posteriormente en orden de prioridad (desde el nmero menor al mayor).
Se puede utilizar CLI(691) para borrar estas interrupciones antes de que se ejecuten.
Note

1. Se puede utilizar MSKS(690) para habilitar una tarea de interrupcin de E/S


concreta en un ciclo concreto e inhabilitar la tarea en todos los dems ciclos.
2. Los nmeros de unidad se asignan a las unidades de entrada de interrupcin en el orden en que se montan, de izquierda a derecha.
N=45
Los valores 4 y 5 se corresponden con las interrupciones programadas 2 y 3.
Cuando N es 4 5, el contenido de S especifica el intervalo de tiempo hasta la
primera tarea de interrupcin programada despus de que se ejecute
MSKS(690).
Se puede seleccionar el intervalo de tiempo de 0000 a 270F (0 a 9.999). Las
unidades del intervalo de interrupcin programado se seleccionan en la configuracin del PLC (00: 10 ms, 01: 1,0 ms), con lo que el rango real del intervalo
de tiempo es de 10 ms a 99,99 s o de 1 ms a 9,999 s.

589

Instrucciones de control de interrupcin

Seccin 3-19

Nota Seleccione el intervalo de tiempo hasta la primera interrupcin programada a 10


ms o ms.
MSKS(690)

Ejecucin de tarea de interrupcin programada.

Tiempo hasta la primera


interrupcin programada

Indicadores

Nombre

Etique
Operacin
ta
ER
ON si N no est dentro del rango especificado de 0 a 5.

Indicador de
error

ON si S no est dentro del rango especificado de 0000


a 00FF cuando N es 0 a 3 (slo en C200HS-INT).
ON si S no est dentro del rango especificado de 0000
a 270F cuando N es 4 5.
OFF en todos los dems casos.

No hay ningn lmite de entradas de interrupcin que se pueden registrar. Se


pueden registrar todas las entradas de interrupcin de E/S, pero se ignorar
una entrada de interrupcin nueva si ha sido previamente registrada. Adems,
la interrupcin registrada no se borra hasta que se ha completado su tarea de
interrupcin, por lo que se ignorarn las entradas de interrupcin nuevas si se
reciben mientras se estn ejecutando las tareas de interrupcin respectivas.
Se pueden utilizar las entradas de interrupcin de unidades de entrada de interrupcin CS1 y C200H. No se pueden utilizar las entradas de interrupcin de tarjetas internas ni de unidades de E/S especiales.
Las interrupciones tienen diferentes niveles de prioridad. Una interrupcin de
corte de alimentacin tiene la prioridad mayor, seguida de interrupciones de
E/S, interrupciones externas y, finalmente, interrupciones programadas. Las interrupciones de E/S con nmeros ms bajos tienen prioridad sobre aquellas con
un nmero mayor.

Precauciones

Ejemplos
Ejemplos para CS1W-INT01
Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, CLI(691) borra
las interrupciones registradas para las entradas de interrupcin 1, 4 a 8, 10 y 12
a 15 de la unidad de entrada de interrupcin 0.
000000
CL1
N

D00100

D00100

15
1

14
1

13
1
F

12
1

11
0

10
1

9
0

8
1

7
1

6
1

5
1
F

4
1

3
0

2
0

1
1

0
0

0: Entrada de interrupcin registrada retenida


1: Entrada de interrupcin registrada borrada

Ejemplo para C200H-INT01


Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, CLI(691) borra
las interrupciones registradas para las entradas de interrupcin 3 y 6 de la unidad de entrada de interrupcin 2.

590

Instrucciones de control de interrupcin

Seccin 3-19

Ejemplo para interrupciones programadas


Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, CLI(691) selecciona a 50 segundos el tiempo para la primera ejecucin de la interrupcin programada 2.
En este caso, las unidades del intervalo de tiempo programado se seleccionan a
10 ms en la configuracin del PLC.

3-19-4 INHIBIR INTERRUPCIONES: DI(693)


Funcin

Inhabilita la ejecucin de todas las tareas de interrupcin excepto la interrupcin


de corte de alimentacin.

Smbolo de diagrama de
rels
Variacio-- nes

DI(693)

Variacio-nes

Ejecutado cada ciclo para condicin ON

DI(693)

Ejecutado una vez para diferencial ascendente

@DI(693)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Descripcin

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
No se admite

DI(693) se ejecuta desde el programa principal para inhabilitar temporalmente


todas las tareas de interrupcin, a excepcin de la interrupcin del corte de la
alimentacin (interrupciones de E/S, interrupciones programadas e interrupciones externas).
Se inhabilitarn todas las tareas de interrupcin hasta que la instruccin EI(694)
las habilite de nuevo.

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si se ejecuta DI(693) desde una tarea de
interrupcin.
OFF en todos los dems casos.

Precauciones

Todas las tareas de interrupcin permanecern inhabilitadas hasta que se ejecute EI(694).
No se puede ejecutar DI(693) desde una tarea de interrupcin.
No se puede ejecutar DI(693) para ms de una tarea cclica. Para inhabilitar
ms de una tarea de ejecucin de ciclo, introduzca DI(693) en cada tarea cclica. Cualquier interrupcin que tenga lugar cuando se est ejecutando una tarea
de ejecucin de ciclo se ejecutar despus de que se haya completado la tarea

591

Instrucciones de control de interrupcin

Seccin 3-19

de ejecucin de ciclo, a menos que se inhabiliten con CLI(691), tal y como se


muestra en el ejemplo siguiente.
Tarea n 0
DI
La instruccin DI es vlida.
END
Las tareas de interrupcin se ejecutan en
condiciones registradas.

Tarea n 1
DI

La instruccin DI es vlida.
END

Ejemplos

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, DI(693) inhabilita


todas las tareas de interrupcin que no sean la tarea de interrupcin del corte de
alimentacin.
000000

Inhabilita la ejecucin de todas las tareas de interrupcin (excepto la interrupcin de corte de alimentacin).

3-19-5 HABILITAR INTERRUPCIONES: EI(694)


Funcin

Habilita la ejecucin de todas las tareas de interrupcin que se inhabilitaron con


DI(693).

Smbolo de diagrama de
rels
Variacio-- nes

EI(694)
Variacio-nes

Ejecutado cada ciclo para condicin


normalmente en ON

EI(694)

Ejecutado una vez para diferencial ascendente

No soportado
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Descripcin

592

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
No se admite

Se ejecuta EI(694) desde el programa principal para habilitar temporalmente todas las tareas de interrupcin que se inhabilitaron con DI(693). DI(693) inhabilita todas las interrupciones, a excepcin de la interrupcin del corte de alimentacin (interrupciones de E/S, interrupciones programadas e interrupciones externas).

Instrucciones de control de interrupcin


Indicadores

Nombre
Indicador de
error

Seccin 3-19
Etique
Operacin
ta
ER
ON si se ejecuta EI(694) desde una tarea de
interrupcin.
OFF en todos los dems casos.

Precauciones

EI(694) no necesita una condicin de ejecucin. Se ejecuta siempre con una


condicin de ejecucin en ON. EI(694) habilita las tareas de interrupcin que
fueron inhabilitadas con DI(693).
No puede desenmascarar interrupciones de E/S a las que MSKS(690) no haya
desenmascarado, ni puede seleccionar interrupciones programadas que no se
hayan seleccionado con MSKS(690).
No se puede utilizar EI(694) en tareas de interrupcin.

Ejemplos

En el ejemplo siguiente, EI(694) habilita todas las tareas de interrupcin que


fueron inhabilitadas con DI(693).

Inhabilita la ejecucin de todas las tareas de interrupcin (excepto la interrupcin de corte de alimentacin).

000000

Activa la ejecucin de todas las tareas de interrupcin inhabilitadas.

3-19-6 Resumen de control de interrupciones


Las instrucciones de control de interrupciones controlan o leen las selecciones
de las interrupciones programadas y de E/S. DI(693) y EI(693) controlan el funcionamiento de las interrupciones externas, as como las interrupciones programadas y de E/S.
Las instrucciones que actan en una interrupcin individual tienen un operando,
N, que identifica la fuente de la interrupcin. Los nmeros 0 a 3 indican las unidades de entrada de interrupcin 0 a 3, y los nmeros 4 a 5 indican las interrupciones programadas 2 y 3.

Procesamiento de interrupciones de E/S (N=0 a 3)


Las interrupciones de E/S las provoca una seal de entrada desde la unidad de
entrada de interrupcin. Se pueden conectar hasta cuatro unidades de entrada
de interrupcin al PLC. Los nmeros de unidad 0a 3 se asignan a las unidades
basndose en su posicin en el PLC (de izquierda a derecha).

593

Instrucciones de control de interrupcin

Seccin 3-19

El ejemplo de programa siguiente muestra la operacin de MSKS(690) y


CLI(691) cuando se utilizan para controlar interrupciones de E/S.

Operacin de MSKS(690)

Tanto las tarea de interrupcin de E/S como las programadas estn enmascaradas (inhabilitadas) cuando el PLC se conecta por primera vez. MSKS(690) se
puede utilizar para desenmascarar o enmascarar las interrupciones de E/S y
seleccionar los intervalos de tiempo para interrupciones programadas.
En este ejemplo MSKS(690) utiliza el contenido de D00100 para desenmascarar las entradas de interrupcin 0 a 3 y para enmascarar las entradas de interrupcin 4 a 7 desde la unidad de entrada de interrupcin 0.
F

Entradas interrupcin de unidad 0


Sel. mscara de interrupcin

1=Enmascarar (Inhabilitar)

0=Desenmascarar (Habilitar)

Cuando la entrada de interrupcin 3 pasa de OFF a ON se interrumpir la ejecucin del programa principal y se ejecutar la tarea de interrupcin de E/S 3 (tarea de interrupcin 103). Una vez completada la tarea de interrupcin de E/S 3,
se reinicia la ejecucin del programa principal en el punto de interrupcin.
Tarea de interrupcin de
E/S
Niveles de prioridad

Cuando se reciben de forma simultnea dos o ms entradas de interrupcin se


ejecutarn las interrupcin en orden de nmero de interrupcin, desde el ms
bajo al ms alto (100 a 131).
Unidad
Unidad de entrada
de interrupcin 0
Unidad de entrada
de interrupcin 1
Unidad de entrada
de interrupcin 2
Unidad de entrada
de interrupcin 3

Tareas de interrupcin
Las entradas 0 a 7 se corresponden
interrupcin de E/S 100 a 107.
Las entradas 0 a 7 se corresponden
interrupcin de E/S 108 a 115.
Las entradas 0 a 7 se corresponden
interrupcin de E/S 116 a 123.
Las entradas 0 a 7 se corresponden
interrupcin de E/S 124 a 131.

con las tareas de


con las tareas de
con las tareas de
con las tareas de

Cuando se reciben ms entradas de interrupcin mientras se est ejecutando


una tarea de interrupcin, se ejecutarn las interrupciones registradas en orden
de prioridad una vez se ha completado la tarea de interrupcin actual.
Si se produce una interrupcin programada, la tarea de interrupcin programada tendr prioridad sobre las tareas de interrupcin de E/S.
Operacin de CLI(691)

594

Si se recibe una entrada de interrupcin mientras se est ejecutando una tarea


de interrupcin de E/S diferente, se registrar de forma interna el nmero de interrupcin de la entrada hasta que se hayan completado la tarea actual y cualquier otra tarea con prioridad. Se puede utilizar CLI(691) para borrar las interrupciones registradas antes de que se ejecuten, pero no se pueden borrar las
tareas de interrupcin que se estn ejecutando.

Instrucciones de control de interrupcin

Seccin 3-19

En este ejemplo, CLI(691) utiliza el contenido de D00101 para borrar todas las
entradas de interrupcin registradas desde la unidad de entrada de interrupcin
0, a excepcin de las entradas 0, 2 y 3.
F

Entradas de interrupcin de unidad 0


Sel. de borrar/mantener interrupcin

1=Borrar entrada registrada

0=Mantener entrada registrada

Una vez se ha completado la tarea de interrupcin 3 se ejecutan las interrupciones registradas en orden de prioridad. Dado que se registr una entrada desde
la entrada de interrupcin 0, la tarea de interrupcin de E/S 0 (tarea de interrupcin 100) se ejecutar cuando se haya completado la tarea 3. CLI(691) no mantiene la entrada de interrupcin 1, por lo que se borra la entrada.
CLI(691) borra la entrada de interrupcin 1.
Entrada de interrupcin 0
Ya est registrada, por lo que
ser ignorada ms adelante.

Entrada de interrupcin 1

Entrada de interrupcin 2

Interrupciones registradas

Tarea de interrupcin de E/S


Tarea 3

Tarea 0

Tarea 3

Se ejecuta CLI(691). Se mantienen las entradas


de interrupcin 0 y 3 y se borra la entrada 1.

Si las entradas de interrupcin 0 a 3 se ponen en ON y no se ejecuta CLI(691) se


registrarn todas las entradas y se ejecutarn las tareas de interrupcin en orden una vez se haya completado la tarea de interrupcin 3. Las tareas de interrupcin se ejecutan en orden de preferencia, desde el nmero de interrupcin
ms bajo al ms alto.
Tarea de interrupcin 3
Tarea de interrupcin 0
Tarea de interrupcin 1
Tarea de interrupcin 2
Tarea de interrupcin 3

Note

1. No hay que utilizar CLI(691) siempre.


2. Cuando no se ejecuta CLI(691), se registran todas las entradas de interrupcin de E/S que se recibieron durante la ejecucin de una tarea de interrupcin. Si se recibe de nuevo una entrada registrada, se ignorar la ltima entrada.
3. Cuando se registran dos o ms entradas de interrupcin de E/S, se ejecutan en orden de prioridad. El orden en que se recibieron las entradas registradas es irrelevante.

Procesamiento de interrupciones programadas (N=4 5)

Una interrupcin programada se repite a intervalos regulares con MSKS(690) y


es independiente de la temporizacin del ciclo del PLC. Los nmeros de N 4 y 5

595

Instrucciones de control de interrupcin

Seccin 3-19

se corresponden con los nmeros de interrupcin programada 2 y 3, respectivamente.


Procesamiento de
interrupciones
programadas

596

Los aspectos principales del procesamiento de interrupciones programadas


aparecen en la siguiente lista.
1, 2, 3...

1. Las interrupciones programadas se enmascaran (inhabilitan) cuando se


pone en funcionamiento el PLC por primera vez.
2. El tiempo para la primera interrupcin programada (despus de la ejecucin de MSKS(690)) se selecciona con CLI(691). El tiempo para la primera
interrupcin establecida es impredecible si no se selecciona con CLI(691).
3. Seleccin del intervalo de tiempo programado y procesamiento de la interrupcin.
El intervalo de tiempo programado se selecciona con MSKS8690).
Una vez se ha ejecutado MSKS(690) y ha transcurrido el tiempo para la
primera interrupcin programada (seleccionada con CLI(691)), se interrumpir la tarea en curso en ese momento y se ejecutar la tarea de interrupcin programada.
Cuando la tarea de interrupcin programada llega a una instruccin
END(001), se reiniciar la ejecucin del programa en el punto en el que
tuvo lugar la interrupcin programada.
Se interrumpir la ejecucin del programa y se ejecutar de nuevo la tarea
de interrupcin programada cuando haya transcurrido el intervalo de
tiempo programado. La tarea de interrupcin programada se ejecutar de
forma reiterada hasta que est inhabilitada.
4. Inhabilitacin de una interrupcin programada
Se puede inhabilitar una tarea de interrupcin poniendo el intervalo de
tiempo programado a 0000 con MSKS(690).
Cuando habilite de nuevo la tarea de interrupcin programada, asegrese
de seleccionar el tiempo para la primera interrupcin programada con
CLI(691) antes de seleccionar el intervalo de tiempo programado con
MSKS(690).

Instrucciones de control de interrupcin


Operacin de la
interrupcin programada

Seccin 3-19

En el ejemplo siguiente las unidades del intervalo de tiempo programado se seleccionan a 10 ms en la configuracin del PLC.
Indicador de primer ciclo en ON al arrancar

1, 2, 3...

1. CLI(691) selecciona el tiempo para la primera interrupcin programada en


20 ms.
2. Se selecciona el intervalo de tiempo programado a 100 ms y se habilita con
MSKS(690) la interrupcin programada 2.
3. Se ejecuta la interrupcin programada 2 20 ms despus de la ejecucin de
MSKS(690) y, a partir de esta, cada 100 ms.
4. Una vez ha comenzado el procesamiento de la interrupcin programada se
puede cambiar el tiempo para la siguiente interrupcin programada con
CLI(691), pero esta seleccin slo es efectiva una vez.
5. Una vez ha comenzado el procesamiento de la interrupcin programada, se
puede cambiar el intervalo de tiempo programado con MSKS(690). En este
caso, el intervalo de tiempo cambia de 100 ms a 200 ms.
6. Se puede inhabilitar el procesamiento de interrupcin programada ejecutando MSKS(690) con un intervalo de tiempo 0000.
El esquema siguiente muestra el funcionamiento del ejemplo anterior.
4

1, 2
Ejecucin del programa principal

Ejecucin de la tarea de interrupcin


programada
20 ms 100 ms 100 ms

Precauciones

50 ms 100 ms100 ms

200 ms

Asegrese de que el intervalo de tiempo programado es mayor que el tiempo


que se necesita para ejecutar la tarea de interrupcin programada. Si el intervalo de tiempo programado es demasiado corto, se ejecutar continuamente la
tarea de interrupcin y se producir un error de tiempo de ciclo demasiado largo.
Una tarea de interrupcin programada demasiado larga puede afectar seriamente al tiempo de ejecucin global del programa.

597

Instrucciones de control de interrupcin

Seccin 3-19

La tarea de interrupcin se ejecuta despus del intervalo de tiempo especificado ms el tiempo de ejecucin para una instruccin. Normalmente, el tiempo
que se necesita para ejecutar una instruccin es despreciable, pero puede originar un error cuando se estn utilizando las instrucciones que tardan mucho
tiempo; tambin pueden originar errores en los temporizadores (TIM y TIMH) y
en el seguimiento de datos. Sea especialmente cuidadoso cuando las unidades
de intervalo de tiempo programado estn seleccionadas a 0,5 ms o 1 ms en la
configuracin del PLC.
Las instrucciones se reciben incluso cuando se est ejecutando una instruccin. Por lo tanto, es posible que no se obtenga un procesamiento correcto si se
acepta una interrupcin mientras se est ejecutando una instruccin que necesita un tiempo de procesamiento largo, pues tanto la tarea de interrupcin como
la instruccin pueden necesitar acceder a los mismos datos. En este caso utilice
DI(693) y EI(694) para inhabilitar y habilitar la interrupcin.
Tarea de interrupcin
Interrupcin durante la
ejecucin

Interrupciones inhabilitadas

598

Instrucciones de paso

Seccin 3-20

3-20 Instrucciones de paso


Esta seccin describe las instrucciones de paso, que se utilizan para configurar
puntos de encuentro entre secciones de un programa grande, de tal forma que
se puedan ejecutar las secciones como unidades y restablecerse una vez completadas.
Instruccin

Mnemnico

STEP DEFINE

STEP

Cdigo de
funcin
008

STEP START

SNXT

009

Pgina
600
600

En los PLC de la serie CS1 se pueden utilizar STEP(008)/SNXT(009) conjuntamente para crear programas de paso.

599

Instrucciones de paso

Seccin 3-20
Instruccin

Operacin

SNXT(009): STEP START

Controla la progresin al
siguiente paso del
programa.
Indica el principio de un
paso. Repite el mismo
programa de pasos hasta
que se establecen las
condiciones para la
progresin hacia el paso
siguiente.

STEP(008): STEP
DEFINE

Diagrama
Corresponde
Corresponde

Corresponde
Inicia el rea de programacin de paso
a se pone en ON
Avanza hasta el paso siguiente

Proceso A
Proceso A

Se repite el proceso A hasta que b se pone en ON.

b se pone en ON

Proceso B
Proceso B

Se repite el proceso B hasta que c se pone en ON.

c se pone en ON

Proceso C
Proceso C

Se repite el proceso C hasta que d se pone en ON.

Avanza hasta el final del rea de programacin de paso de diagrama de rels.

Fin

d se pone en ON
rea de programacin de paso completa

Nota Se utilizan los bits de trabajo como bits de control para A, B, C y D.

3-20-1 DEFINIR PASO y COMENZAR PASO: STEP(008)/SNXT(009)


Funcin

600

La instruccin SNXT(009), que se coloca inmediatamente antes de la instruccin STEP(008), controla la ejecucin de paso poniendo en ON el bit de control
especificado. Si hay algn paso inmediatamente antes de SNXT(009) tambin
se pone en OFF el bit de control de ese proceso.
STEP(008) se coloca inmediatamente despus de la instruccin SNXT(009) y
antes de cada proceso. Define el inicio de cada proceso y especifica su bit de

Instrucciones de paso

Seccin 3-20
control. Tambin se coloca al final de un rea de programacin de paso (despus del ltimo SNXT(009)) para indicar el final del rea de programacin de
paso. Cuando STEP (008) aparece al final de un rea de programacin de paso
no necesita bit de control.

Smbolos de diagrama de
rels

SNXT(009)
B: Bit

Cuando se est definiendo el principio de un paso se especifica el bit de control


de la forma siguiente:
STEP(008)
B: Bit

Cuando se est definiendo el final de un paso no se especifica el bit de control


de la forma siguiente:
STEP(008)

Variacio-- nes

reas de programa
aplicables

Especificaciones de
operandos

Variacio-nes

Ejecutado cada ciclo para condicin ON

STEP(008)/
SNXT(009)

Ejecutado una vez para diferencial ascendente

No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
No se admite

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado.

Subrutinas
No se admite

rea

No se admite

rea CIO

---

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

601

Instrucciones de paso
Descripcin

Seccin 3-20
SNXT(009)
SNXT(009) se utiliza de las tres formas siguientes:

1, 2, 3...

1. Para iniciar la ejecucin de una programacin de paso.


2. Para avanzar hasta el bit de control de pasos siguiente.
3. Para finalizar la ejecucin de una programacin de paso.
El rea de programacin de paso va desde la primera instruccin STEP(008),
que siempre necesita un bit de control, hasta la ltima, que no necesita nunca un
bit de control.
Inicio de la ejecucin de pasos
SNXT(009) se coloca al principio del rea de programacin de paso para iniciar
la ejecucin de pasos. Pone en ON el bit de control especificado para B en la
siguiente STEP(008) y pasa al paso B (todas las instrucciones despus de
STEP(008) B). Se debe utilizar una condicin de ejecucin diferencial con la instruccin SNXT(009) que inicia la ejecucin del rea de programacin de paso,
de lo contrario la ejecucin de pasos slo durar un ciclo.
Avance hasta el paso siguiente
SNXT(009) se utiliza para avanzar hasta el paso siguiente cuando tiene lugar en
mitad del rea de programacin de paso. Pone en OFF el bit de control anterior y
en ON el siguiente bit de control B del siguiente paso, iniciando, por consiguiente, el paso B (todas las instrucciones posteriores a STEP(008) B).
Finalizacin del rea de programacin de paso
Cuando se coloca SNXT(009) al final del rea de programacin de paso, finaliza
la ejecucin de pasos y pone en OFF el bit de control anterior. El bit de control
especificado para B es un bit de relleno. Sin embargo, este bit se pondr en ON,
por lo que debe asegurarse de seleccionar un bit que no cause problemas.
STEP(008)
STEP(008) opera de las dos formas siguientes, dependiendo de su posicin y
de si se ha especificado o no un bit de control.

1, 2, 3...

1. Inicia un paso especificado.


2. Finaliza el rea de programacin de paso (es decir, la ejecucin de pasos).
Inicio de un paso
STEP(008) se coloca al principio de cada paso con un operando B, que hace de
bit de control para ese paso.
SNXT(009) pondr en ON el bit B, y se ejecutar la instruccin en el paso desde
una de las instrucciones STEP(008) que le siguen. A20012 (indicador de paso)
tambin se pondr en ON cuando empiece la ejecucin de un paso.
Despus del primer ciclo, la ejecucin del paso continuar hasta que se establezcan las condiciones para cambiar el paso, es decir, hasta que la instruccin
SNXT(009) ponga en ON el bit de control de la siguiente instruccin STEP(008).
Cuando SNXT (009) pone en ON el bit de control de un paso, se restablecer
(se pondr en OFF) el bit de control B de la instruccin en curso y se enclavar el
paso controlado por el bit B.
El manejo de salidas e instrucciones en un paso cambiar de acuerdo con el
estado ON/OFF del bit de control B (controlado por SNXT(009)). Cuando se pone en OFF el bit de control B, se enclavan y restablecen las instrucciones del
paso. Consulte las tablas siguientes.
Estado del bit de control

602

Manejo

ON

Las instrucciones del paso se ejecutan normalmente.

ONOFF

Los bits e instrucciones del paso estn enclavados, tal


y como se muestra en la tabla siguiente.

OFF

Se procesan todas las instrucciones del pasos como


NOP.

Instrucciones de paso

Seccin 3-20
Estado de enclavamiento (IL)
Salida de instrucciones

Estado

Bits especificados para OUT, OUT NOT

Todos OFF

Instrucciones de
PV
temporizador (TIM,
(TIM TIMH,
TIMH
Indicador de finalizacin
TMHH y TIML)
Bits o canales especificados para otras instrucciones
(ver nota)

0000 hex. (restablecido)


OFF (restablecido)
Mantiene el estado
anterior (pero no se
ejecutan las
instrucciones).

Nota Indica todas las dems instrucciones, como los cdigos de funcin TTIM(087),
MTIM(543), SET, REST, CNT, CNTR(012), SFT(010) y KEEP(011).
Debe colocarse la instruccin STEP(008) al principio de cada paso. Al hacer esto, se define el principio de cada paso.
Finalizacin del rea de programacin de paso
Se coloca STEP(008) al final de cada rea de programacin de paso sin un operando, con el objetivo de definir el final de la programacin de paso. Cuando se
pone en OFF el bit de control anterior a la instruccin SNXT(009), sta ltima
detiene la ejecucin del paso.
Indicadores: STEP(008)

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando el bit B especificado no est en el rea WR.
ON cuando se utilice STEP(008) en un programa de
interrupcin.
OFF en todos los dems casos.

Indicadores: SNXT(009)

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON cuando el bit B especificado no est en el rea WR.
ON cuando se utilice SNXT(009) en un programa de
interrupcin.
OFF en todos los dems casos.

Precauciones

El bit de control, B, debe estar en el rea de trabajo de STEP(008)/SNXT(009).


No se puede utilizar un bit de control STEP(008)/SNXT(009) en ningn otro sitio
que no sea el diagrama de rels. Se producir un error de duplicado si se utiliza
dos veces el mismo bit.
Si se utiliza SBS(091) para llamar a una subrutina de un paso, no se enclavarn
las instrucciones y salidas de la subrutina cuando se ponga en OFF el bit de control.
Los bits de control de una seccin de programacin de paso deben ser secuenciales y del mismo canal.
SNXT(009) slo se ejecutar una vez, es decir, en el flanco ascendente de la
condicin de ejecucin.
Introduzca SNXT(009) al final del rea de programacin de paso y asegrese
de que el bit de control es un bit de relleno del rea de trabajo. Si se utiliza un bit
de control de un paso en la ltima SNXT(009) del rea de programacin de paso, se iniciar el paso correspondiente cuando se ejecute SNXT(009).
Se producir un error y se pondr en ON el indicador de error si el operando B
especificado para SNXT(008) o para STEP(008) no est en el rea de trabajo o
si se ha colocado el programa de pasos en cualquier otro lugar que no sea una
tarea cclica.
Cuando se ejecuta STEP(008), A20012 (indicador de paso) se pone en ON para
un ciclo. Se puede utilizar este indicador para dirigir la inicializacin una vez ha
comenzado la ejecucin del paso.

603

Instrucciones de paso

Seccin 3-20
Condiciones de ubicacin para reas de programacin de paso (STEP B a
STEP)
No se pueden utilizar STEP(008) y SNXT(009) dentro de subrutinas, programas
de interrupcin o programas de bloques.
Asegrese de que no se ejecutan dos pasos durante el mismo ciclo.
Instrucciones que no pueden utilizarse en programas de pasos.
Las instrucciones que no pueden utilizarse en programas de pasos aparecen en
la tabla siguiente.
Funcin
Instrucciones de control
d secuencia
de
i

Instrucciones de
subrutinas

Mnemnico

Nombre

END(001)

END

IL(002)

INTERLOCK

ILC(003)

INTERLOCK CLEAR

JMP(004)

JUMP

JME(005)

JUMP END

CJP(510)

CONDITIONAL JUMP

CJPN(511)
JMP0(515)

CONDITIONAL JUMP
NOT
MULTIPLE JUMP

JME0(516)

MULTIPLE JUMP END

SBN(092)

SUBROUTINE ENTRY

RET(093)

SUBROUTINE RETURN

Inicio

1 ciclo

Bits relacionados
Nombre
Indicador de paso

604

Direccin
A20012

Detalles
ON durante un ciclo
cuando se inicia el
programa de pasos con
STEP(008). Se puede
utilizar para restablecer
temporizadores y realizar
otro procesamiento
cuando se inicie un paso
nuevo.

Instrucciones de paso

Seccin 3-20

El paso a empieza cuando C se pone en ON

A ejecutado

b se inicia cuando d se pone en ON (A est enclavado)

B ejecutado
e se pone en ON (B est enclavado)

Fin del rea de programacin de paso

Programa de diagrama de rels normal

Vuelve al programa de diagrama de rels normal

605

Instrucciones de paso

Seccin 3-20
CIO 00000 se pone en ON, empieza el paso W00000

El paso W00000 empieza en la siguiente instruccin

Programa de diagrama
de rels de paso (A)

Paso W00000

W00000 se pone en OFF, W00001 se pone en ON y empieza el paso W00001

El paso W00001 empieza en la siguiente instruccin

Programa de diagrama
de rels de paso (B)
W00001 se pone en OFF y el bit de relleno W10000 se pone en ON

Fin del rea de programacin de paso

Programa de diagrama de rels normal

Ejemplos

Control secuencial

000001 (Condicin de inicio de paso (A))

Paso (A) W00000


000002 (Condicin de transicin de paso (A) paso (B))

Paso (B) W00001


000003 (Condicin de transicin de paso (B) paso (C))

Paso (C) W00002


000004 (Condiciones de restablecimiento de paso (C))
Final

606

Instrucciones de paso

Seccin 3-20

Paso W00000 (A)


Programa de diagrama
de rels de paso (A)

Paso W00001 (B)


Programa de diagrama
de rels de paso (B)

Paso W00002 (C)


Programa de diagrama
de rels de paso (C)

607

Instrucciones de paso

Seccin 3-20
Control de bifurcacin

000001 (Condicin
de inicio de paso (A))
Paso (A) W00000

000002 (Condicin de inicio de paso (B))

Paso (B) W00001

000003 (Condicin
de transicin de paso (A) paso (C))

000004 (Condicin de transicin de paso (B) paso (C))

Paso (C) W00002


000005 (Condiciones de restablecimiento de paso (C))
Final

Programa de diagrama
de rels de paso (A)

Programa de diagrama
de rels de paso (B)

Programa de diagrama
de rels de paso (C)

608

Paso W00000
(A)

Paso W00001
(B)

Paso W00002
(C)

Instrucciones de paso

Seccin 3-20
La programacin anterior se utiliza cuando no se pueden ejecutar simultneamente los pasos A y B. Para ejecutar simultneamente A y B, debe eliminar las
condiciones de ejecucin siguientes.
000002

000001

Nota En el ejemplo anterior, en el que se ejecuta SNXT(009) para W00002, la bifurcacin se desplaza a los pasos siguientes aunque se utiliza dos veces el mismo bit
de control. Este hecho no se considera un error en la comprobacin del programa que utiliza el CX-Programmer. Se producir un error de bit duplicado en un
programa de diagrama de rels de pasos slo cuando se utilice un bit de control
en una instruccin de pasos y tambin en el diagrama de rels normal.
Control paralelo

000001 (Condicin de inicio simultneo de paso (A), (C))


Paso (A) W00000

Paso (C) W00002

000002 (Condicin
de transicin de paso (A) paso (B))
Paso (B) W00001

000003 (Condicin de transicin de paso (C) paso (D))

Paso (D) W00002

000004 (se traslada al paso (E) cuando se han


completado tanto el paso (B) como el paso (D))
Paso (E) W00004
000005 (Condiciones de restablecimiento de paso (C))
Final

609

Instrucciones de paso

Seccin 3-20

Programa de diagrama
de rels de paso (A)

Paso W00000 (A)

Programa de diagrama
de rels de paso (B)

Paso W00001 (B)

Programa de diagrama
de rels de paso (C)

Paso W00002 (C)

Programa de diagrama
de rels de paso (D)

Programa de diagrama
de rels de paso (E)

610

Paso W00003 (D)

Paso W00004 (E)

Instrucciones de paso

Seccin 3-20

Ejemplos de aplicacin Los tres ejemplos siguientes muestran tres tipos posibles de control de ejecucin con programacin de paso. El ejemplo 1 muestra una ejecucin secuencial; el ejemplo 2, una ejecucin de bifurcacin y el ejemplo 3, una ejecucin en
paralelo.

Ejemplo 1:
Ejecucin secuencial

Para llevar a cabo el siguiente proceso es necesario que otros tres procesos
(carga, instalacin de piezas e inspeccin/descarga) se ejecuten en secuencia,
restableciendo cada proceso antes de continuar con el siguiente. Se colocan
varios sensores (SW1, SW2, SW3 y SW4) para indicar cuando empiezan y terminan los procesos.

Mano de robot

Solenoide 1

Fotomicrosensor

SW 1

Solenoide 2

SW 2

SW 4

SW 3

Cinta transportadora 1

Carga

Cinta transportadora 2

Cinta transportadora 3

Instalacin de piezas

Inspeccin/descarga

El diagrama siguiente muestra el flujo de procesamiento y los interruptores que


se utilizan para cada control de ejecucin.
SW1
Proceso A

Carga
SW2

Proceso B

Instalacin de piezas
SW3

Proceso C

Inspeccin/descarga
SW4

Final

El programa del proceso que aparece ms abajo utiliza el tipo de programacin


de paso ms bsico: cada paso lo realiza una SNXT(009) nica que inicia el paso siguiente. Cada paso comienza cuando se pone en ON el interruptor que indica que el paso anterior ha terminado.

611

Instrucciones de paso

Seccin 3-20
Direccin Instruccin Operandos

Proceso
A iniciado.

000000
000001
000002

@LD
SNXT(009)
STEP(008)

000001
W00000
W00000

Proceso A
000100
000101
000102

Programacin para el proceso A

Proceso
A restablecido.
Proceso
B iniciado.

LD
SNXT(009)
STEP(008)

000002
W00001
W00001

Proceso B
000100
000101
000102

Programacin para el proceso B

LD
SNXT(009)
STEP(008)

000003
W00002
W00002

Proceso C
000200
000201
000202

Proceso
B restablecido.
Proceso
C iniciado.

LD
SNXT(009)
STEP(008)

000004
W00003
W00003

Programacin para el proceso C

Proceso
C restablecido.

Ejemplo 2:
Ejecucin de bifurcacin

El proceso siguiente exige que, antes de imprimirse, se procese un producto en


una de las dos formas posibles, dependiendo de su peso. El proceso de impresin es el mismo, independientemente del primer proceso utilizado. Se colocan
varios sensores para indicar el momento en que empiezan y terminan los procesos.
Impresora
SW D

SW C1
SW A1

Gua

SW A2

SW C2

Proceso A
Cinta A
Proceso B
Cinta B
SW B1
Escala de pesos

612

SW B2
Proceso C

Instrucciones de paso

Seccin 3-20
El diagrama siguiente muestra el flujo de procesamiento y los interruptores que
se utilizan para cada control de ejecucin. Aqu se usa el proceso A o el B dependiendo del estado de SW A1 y SW B1.

SW B1

SW A1
Proceso A
SW A2

Proceso B
SW B2

Proceso C
SW D
Final

613

Instrucciones de paso

Seccin 3-20
El programa de este proceso, que aparece ms abajo, empieza con dos instrucciones SNXT(009) que inician los procesos A y B. Debido a la forma en que estn programados CIO 000001 (SW A1) y CIO 000002 (SW B1), slo uno de
stos se ejecutar con una condicin de ejecucin en ON para iniciar el proceso
A o B. Los dos pasos de estos procesos finalizan con una SNXT(009) que empieza el paso siguiente (proceso C).

Direccin Instruccin Operandos


Proceso A
iniciado.

000000
000001
000002
000003
000004
000005
000006

@LD
AND NOT
SNXT(009)
LD NOT
@AND
SNXT(009)
STEP(008)

000001
000002
010000
000001
000002
010001
010000

Proceso A
Programacin para el proceso A

Proceso A
restablecido.

000100
000101
000102

LD
SNXT(009)
STEP(008)

000003
010002
010001

Proceso B

Proceso
C iniciado.
000100
000101
000102

LD
SNXT(009)
STEP(008)

000004
010002
010002

Programacin para el proceso B

Proceso C
Proceso B
restablecido.
Proceso C
iniciado.

000200
000201
000202

LD
SNXT(009)
STEP(008)

000005
024614
---

Programacin para el proceso C

Proceso C
restablecido.

Nota En la programacin anterior se utiliza CIO 010002 en dos


instrucciones SNXT(009). Este hecho no originar un error
de duplicado durante la comprobacin del programa.

Ejemplo 3:
Ejecucin paralela

614

En el proceso siguiente es necesario que dos partes de un producto pasen simultneamente por dos procesos, cada uno de ellos antes de juntarse en un

Instrucciones de paso

Seccin 3-20
quinto proceso. Se colocan varios sensores para indicar el momento en que empiezan y terminan los procesos.
SW1

Cinta A

SW3

Proceso A

Cinta B

SW5

SW7

Proceso B
Proceso E
Proceso D

Proceso C
SW2 Cinta C

SW4

Cinta D

Cinta E

SW6

El diagrama siguiente muestra el flujo de procesamiento y los interruptores que


se utilizan para cada control de ejecucin. Aqu el proceso A y el C empiezan a la
vez. El proceso B empieza cuando termina el proceso A; el proceso D empieza
cuando termina el proceso C. El proceso E empieza cuando terminan los procesos B y D.

Tanto SW 1 como SW2 en ON

Proceso A

Proceso C
SW4

SW3
Proceso B

Proceso D

Tanto SW5 como SW6 en ON


Proceso E
SW7
Final

El programa de esta operacin, que aparece ms abajo, empieza con dos instrucciones SNXT(009) que inician los procesos A y C. Estas instrucciones se
derivan de la misma lnea de instruccin, y siempre se ejecutan juntas, iniciando
los pasos tanto para A como para C. Inmediatamente despus de que hayan
terminado los pasos de A y C, empiezan los pasos de los procesos B y D.
Cuando los procesos B y D han finalizado, es decir, cuando SW5 y SW6 se ponen en ON, SNXT(009) restablece ambos procesos al final de la programacin
para el proceso B. Aunque no hay ninguna SNXT(009) al final del proceso D, el
bit de control correspondiente se pone en OFF mediante la ejecucin de
SNXT(009) W00004. Eso se debe a que SNXT(009) W00004 restablece OUT
para el bit W00003 en el paso, es decir, W00003 se pone en OFF cuando se
ejecuta SNXT(009) W00004. Por tanto, el proceso B se restablece directamente y el proceso D se restablece indirectamente antes de ejecutar el paso del proceso E.

615

Instrucciones de paso

Seccin 3-20
Proceso A
iniciado.
Proceso C
iniciado.

Direccin Instruccin Operandos


000000
000001
000002
000003

@LD
SNXT(009)
SNXT(009)
STEP(008)

000001
W00000
W00002
W00000

Proceso A
000100
000101
000102

Programacin para el proceso A

Proceso A
restablecido.
Proceso B
iniciado.

Programacin para el proceso B

W00003

W00003 Utilizado para

000002
W00001
W00001

Proceso B
000100
000101
000101
000101

LD
OUT
AND
SNXT(009)

000003
W00003
000004
W00004

000102

STEP(008)

W00002

poner en OFF
el proceso D.

Proceso E
iniciado.

LD
SNXT(009)
STEP(008)

Proceso C
000200
000201
000202

LD
SNXT(009)
STEP(008)

000003
W00003
W00003

Proceso D
000300
Programacin para el proceso C

W00004

Proceso E
Proceso C
restablecido.
Proceso
D iniciado.

W00003

Programacin para el proceso D

Programacin para el proceso E

Proceso E
restablecido.

616

STEP(008)

000400
000401
000402

LD
SNXT(009)
STEP(008)

000005
024613
---

Instrucciones de unidades de E/S bsicas

Seccin 3-21

3-21 Instrucciones de unidades de E/S bsicas


Esta seccin describe las instrucciones que se utilizan con las unidades de E/S.
Instruccin

Mnemnico

I/O REFRESH

IORF

Cdigo de
funcin
097

Pgina

7-SEGMENT DECODER

SDEC

078

620

INTELLIGENT I/O READ

IORD

222

622

INTELLIGENT I/O WRITE

IOWR

223

626

617

3-21-1 REFRESCO DE E/S: IORF(097)


Refresca los canales de E/S especificados.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

IORF(097)

Variacio-nes

St

St: Canal de inicio

E: Canal de fin

Ejecutado cada ciclo para condicin ON

IORF(097)

Ejecutado una vez para diferencial ascendente

@IORF(097)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

St: Canal de inicio


CIO 0000 a CIO 0999 (rea de bits de E/S) o
CIO 2000 a CIO 2959 (rea de bits de unidad de E/S especial)
E: Canal de fin
CIO 0000 a CIO 0999 (rea de bits de E/S) o
CIO 2000 a CIO 2959 (rea de bits de unidad de E/S especial)
Nota St y E deben estar en la misma rea de memoria.

Especificaciones de
operandos

rea

St

rea CIO

CIO 0000 a CIO 6143

rea auxiliar

---

rea de bits de
retencin
rea de bits especial

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

---

617

Instrucciones de unidades de E/S bsicas

Seccin 3-21

rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

St

--,IR0 a 15

---

--2048 a +2047,IR0 a 15
DR0 a 15, IR0 a 15,
IR0 a 15+(++)
,--(-- --) IR0 a 15

Descripcin

IORF(097) refresca los canales de E/S entre St y E, ambos inclusive. Se utiliza


IORF(097) para refrescar los canales asignados a las unidades de E/S bsicas
o a las unidades de E/S especiales que estn montadas en el bastidor de CPU o
en los bastidores expansores. No se puede utilizar IORF(097) para refrescar
canales en las dos reas a la vez (es decir, con la misma instruccin). Las unidades de E/S bsicas tienen asignados canales entre CIO 0000 y CIO 0999,
mientras que las unidades de E/S especiales tienen asignados canales entre
CIO 2000 y CIO 2959.
Cuando se especifica el refresco para canales del rea de bits de la unidad de
E/S especial, se refrescan los 10 canales asignados a la unidad, siempre y
cuando el primer canal de los 10 est incluido en el rango de canales especificado.
rea de bits de E/S o
rea de unidad de E/S
especial
St

Unidad de E/S o
unidad de E/S especial

Refresco de E/S

Si existen canales entre St y E que no tienen una unidad montada, no se har


nada con ellos y slo se refrescarn los canales asignados a unidades.
Tanto las unidades de E/S especiales C200H como las unidades de E/S especiales CS se pueden refrescar con la misma instruccin.
Todos los canales asignados a las unidades de E/S de alta densidad grupo 2
C200H deben refrescarse a la vez. Se refrescarn los canales de E/S de la unidad si el primer canal asignado a la unidad est en el rango de canales de E/S
especificado. No se refrescarn los canales de la unidad si el canal de inicio est
despus del primer canal asignado a la unidad, pero s se refrescarn cuando el
canal de fin est antes del ltimo canal asignado a la unidad.
Se puede utilizar IORF(097) en tareas de interrupcin, permitiendo una respuesta de alta velocidad para los canales refrescados en las tareas de interrupcin. (Ver Precauciones).
Unidades aplicables

IORF(097) puede refrescar las unidades mencionadas en el siguiente prrafo.


Estas unidades slo pueden refrescarse cuando estn en un bastidor de CPU o
en un bastidor expansor. No pueden refrescarse cuando estn en bastidores
esclavos.
Unidades de E/S bsicas CS1, unidades de E/S bsicas C200H, unidades de
E/S de alta densidad grupo 2 C200H y unidades de E/S especiales, incluyendo
las unidades de alta densidad. Se pueden refrescar todos los canales asignados a las unidades.
Nota Las unidades que se pueden refrescar con IORF(097) no son necesariamente
las mismas que las unidades que se pueden refrescar con las especificaciones
de refresco inmediato (!).

618

Instrucciones de unidades de E/S bsicas


Indicadores

Nombre
Indicador de
error

Seccin 3-21
Etique
Operacin
ta
ER
ON si St es mayor que E.
ON si la direccin est fuera del rango de una
especificacin de IR indirecta para St.
ON si la direccin est fuera del rango de una
especificacin de IR indirecta para E.
ON si St y E estn en reas de memoria distintas.
OFF en todos los dems casos.

Precauciones

Se producir un error si los canales en el rea de bits de E/S (CIO 0000 a CIO
0999) y el rea de bits de la unidad de E/S especial (CIO 2000 a CIO 2959)
estn especificados para la misma instruccin.
No se llevar a cabo el refresco de E/S para las unidades en las que se produjo
un error de tabla de E/S.
El refresco de E/S iniciado por IORF(097) se detendr a medio camino si tiene
lugar un error de bus de E/S durante el refresco.
Asegrese de inhabilitar en la configuracin del PLC el refresco cclico de unidad de E/S especial cuando se est utilizando IORF(097) en una tarea de interrupcin. Se producir un error no fatal de refresco duplicado y se pondr en ON
el indicador de error de tarea de interrupcin (A40213) si se habilita el refresco
cclico para unidades de E/S especiales e IORF(097) ejecuta de nuevo el refresco de E/S.

Ejemplos

Canales de refresco en el rea de bits de E/S


El ejemplo siguiente muestra cmo refrescar 16 canales de CIO 0015 a
CIO 0030 cuando CIO 000000 se pone en ON.

Unidad de E/S

St

St:

Refresco de E/S

E
E:

Canales de refresco en el rea de bits de unidad de E/S especial


El ejemplo siguiente muestra cmo refrescar 30 canales de CIO 2000 a
CIO 2029 cuando CIO 000000 se pone en ON.

Unidad de E/S especial


St:
St
E

Refresco de E/S

E:

619

Instrucciones de unidades de E/S bsicas

Seccin 3-21

3-21-2 DECODIFICADOR DE 7-SEGMENTOS: SDEC(078)


Convierte el contenido hexadecimal de los dgitos designados en un cdigo de 8
bits para display de 7 segmentos y lo sita en los 8 bits de mayor o menor peso
de los canales de destino especificados.

Funcin

Smbolo de diagrama de
rels

SDEC(078)

Variacio-- nes

Variacio-nes

S: Canal fuente

Di

Di: Indicador de dgito

D: Primer canal de destino

Ejecutado cada ciclo para condicin ON

SDEC(078)

Ejecutado una vez para diferencial ascendente

@SDEC(078)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

Operandos: Indicador de dgito


15

Di

12 11

87

1/0

43

n
Primer dgito de S para convertir (0 a 3)
0: Dgito 0 (bits 0 a 3 de S)
1: Dgito 1 (bits 4 a 7 de S)
2: Dgito 2 (bits 8 a 11 de S)
3: Dgito 3 (bits 12 a 15 de S)
Nmero de dgitos para convertir
0 a 3: 1 a 4 dgitos
Primera mitad de D que va a recibir datos convertidos
0: 8 bits de menor peso (1 mitad)
1: 8 bits de mayor peso (2 mitad)
No utilizado, seleccionado a 0.

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

Di

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

620

A448 a A959

Instrucciones de unidades de E/S bsicas

Seccin 3-21

rea
Direcciones de DM/EM
indirectas en BCD

S
*D00000 a *D32767

Di

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Valores
especificados
exclusivamente

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SDEC(078) considera los datos especificados por S como datos hexadecimales de 4 dgitos, convierte los dgitos especificados en S por DI (primer dgito y
nmero de dgitos) en datos de 7 segmentos y enva el resultado a D en los bits
especificados en Di.

Di
Nmero de dgitos
Primer dgito a para convertir

8 bits de la derecha (0)


7 segmentos

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si las selecciones de Di no estn dentro el rango
especificado.
OFF en todos los dems casos.

Precauciones

Si se especifica ms de un dgito para la conversin en Di, se convertirn los


dgitos en orden hacia el bit ms significativo. El dgito 0 es el dgito siguiente al
3.
El resultado se almacena en D en orden desde la seccin especificada hacia los
canales de direccin ms alta. Si slo uno de los bytes de un canal de destino
recibe datos convertidos, se deja el otro byte sin cambiar.

Ejemplos

Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, se convierte el


contenido de los 3 dgitos que empiezan con el dgito 1 en D00100 de datos hexadecimales a datos de 7 segmentos, y se enva el resultado al byte de mayor
peso de D00200 y a los dos bytes de D00201. Las especificaciones de los bytes

621

Instrucciones de unidades de E/S bsicas

Seccin 3-21

que hay que convertir y la ubicacin de los bytes de salida se realizan en CIO
0100.

Di

Di: 0100

S: D00100

Conversin de hexadecimal a datos de 7 segmentos


(F 71, 1 06 y 2 5B)
D:

La tabla siguiente muestra las conversiones de datos de dgitos hexadecimales


(4 bits) al cdigo de 7 segmentos (8 bits).

Datos de 7 segmentos

Dgit
o

Datos originales
Bits

--

Cdigo convertido (segmentos)


f
e
d
c
b
a

Display
hex.

Datos originales

3F

LSB

06

5B

4F

66

6D

7D

27

7F

6F

77

7C

39

5E

79

71

a
f

0
MSB

3-21-3 LECTURA DE E/S INTELIGENTE: IORD(222)


Funcin
Smbolo de diagrama de
rels

622

Lee el contenido del rea de memoria de la unidad de E/S.


IORD(222)
C

C: Datos de control

S: Transferir fuente y nmero de canales

D: Transferir destino

Instrucciones de unidades de E/S bsicas


Variacio-- nes

Variacio-nes

Seccin 3-21
Ejecutado cada ciclo para condicin ON

IORD(222)

Ejecutado una vez para diferencial ascendente

@IORD(222)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C:
Vara dependiendo de la unidad de E/S especial.
S:
Nmero de unidad 0000 a 005F (0 a 95)
S+1: Nmero de canales que hay que transferir (depende de la unidad
de E/S especial)
S+1

S
S+1: 4 dgitos de mayor peso
S: 4 dgitos de menor peso

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a
CIO 6143

CIO 0000 a
CIO 6142

CIO 0000 a
CIO 6143

rea de trabajo

W000 a W511

W000 a W510

W000 a W511

rea de bits de
retencin

H000 a H511

H000 a H510

H000 a H511

rea de bits auxiliares

A000 a A959

A000 a A958

A448 a A959

rea de temporizador

T0000 a T4095

T0000 a T4094

T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4094

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32766

D00000 a
D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32766

E00000 a
E32767

rea EM con banco

En_00000 a
En_32767

En_00000 a
En_32766

En_00000 a
En_32767

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
#0000 a #FFFF
(binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente
---

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

IORD(222) lee el nmero de canales designado en S+1 del rea de memoria de


la unidad de E/S especial, cuyo nmero de unidad es designado por S y que

623

Instrucciones de unidades de E/S bsicas

Seccin 3-21

enva los datos a D. Slo se pueden designar las unidades de E/S especiales
montadas en bastidores de CPU o bastidores expansores de E/S. Para ms detalles sobre cada unidad consulte el manual de operacin de la unidad de E/S
especial desde la que se estn leyendo los datos.
S
S+1
Nmero de unidad de la unidad de E/S especial

Nmero
designado de canales ledos.

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si el nmero de canales que hay que transferir (S)
est fuera del rango de 0001 a 0080 hex.
ON si el nmero de unidad (S) est fuera del rango de
0000 a 005F hex.
ON si la unidad de E/S especial designada est en un
SYSMAC BUS.
ON si se designa una unidad de E/S especial a la que
no afecta IORD(222).
ON si se designa una unidad de E/S especial con un
error de configuracin de unidad de E/S especial o un
error de unidad de E/S especial.

Indicador de
igual

Precauciones

OFF en todos los dems casos.


ON si la operacin de lectura finaliz normalmente.
OFF si la operacin de lectura no finaliz normalmente.

Se pondr en ON el indicador de igual si la operacin de lectura finaliz normalmente.


Se pondr en OFF el indicador de igual si la operacin de lectura no finaliz normalmente debido a que la unidad de E/S especial est ocupada.
Se producir un error y se pondr en ON el indicador de error en cualquiera de
los siguientes casos:
El nmero de canales que hay que transferir (S) est fuera del rango de 0001 a
0080 (hex.).
El nmero de unidad (S) est fuera del rango de 0000 a 005F hex.
La unidad de E/S especial designada est en un SYSMAC BUS.
Se designa una unidad de E/S especial a la que no afecta IORD(222).
Se designa una unidad de E/S especial con un error de configuracin de unidad de E/S especial o un error de unidad de E/S especial.
Cuando se ejecute IORD(222) se reflejarn los resultados en los indicadores de
condicin. En concreto, el indicador de igual se pondr en ON cuando haya finalizado la lectura. Introduzca los indicadores de condicin tales como el indicador
de igual con bifurcacin de salida desde las mismas condiciones de entrada que
la instruccin IORD(222).
No se ejecutar la operacin de lectura si la unidad de E/S especial est ocupada. Utilice el indicador de igual para crear un programa de autorretencin (tal y

624

Instrucciones de unidades de E/S bsicas

Seccin 3-21

como se muestra ms abajo) de tal forma que se ejecute IORD(222) con cada
ciclo hasta que se haya ejecutado la operacin de lectura.

B
IORD
C
S
D
A

Si se cumple la condicin de entrada la salida, A llevar a cabo una autorretencin y se ejecutar IORD(222) con cada ciclo hasta que se ponga en ON el indicador de igual. Una vez se haya completado la lectura y el indicador de igual
est en ON, se pondr en ON la salida B y se borrar la autorretencin.
Asegrese de colocar los indicadores de condicin justo despus de las instrucciones IORD(222) y no detrs de cualquier otra instruccin. Si se coloca un indicador de condicin detrs de otra instruccin, ste se ver afectado por los resultados de la ejecucin de esa instruccin.
En este ejemplo se utiliza IORD(222) para leer datos.

Ejemplo

Cuando CIO 000000 se pone en ON, se leen 10 canales de la unidad


de E/S especial con el nmero de unidad 3 y se almacenan en
D00100 a D00109.
S

S+1

Nmero de canales
para transferir: 10

Nmero de unidad: 3

El cdigo de control (C) vara dependiendo de la unidad de E/S especial.

CPU

Unidad de E/S especial (unidad 3)

10 canales

625

Instrucciones de unidades de E/S bsicas

Seccin 3-21

3-21-4 ESCRITURA DE E/S INTELIGENTE: IOWR(223)


Enva el contenido del rea de memoria de E/S de la CPU a la unidad de E/S
especial.

Funcin

Smbolo de diagrama de
rels
IOWR(223)

Variacio-- nes

C: Datos de control

S: Fuente y nmero de canales de transferencia

D: Destino y nmero de canales de transferencia


Variacio-nes

Ejecutado cada ciclo para condicin ON

IOWR(223)

Ejecutado una vez para diferencial ascendente

@IOWR(223)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C:
Vara dependiendo de la unidad de E/S especial.
D:
Nmero de unidad 0000 a 005F (0 a 95)
D+1: Nmero de canales que hay que transferir (depende de la unidad
de E/S especial)
D

D+1

D+1: 4 dgitos de mayor peso


D: 4 dgitos de menor peso

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

CIO 0000 a
CIO 6142
W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H510

A000 a A959

A000 a A958

rea de temporizador

T0000 a T4095

T0000 a T4094

rea de contador

C0000 a C4095

C0000 a C4094

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

626

(n = 0 a C)

Instrucciones de unidades de E/S bsicas

Seccin 3-21

rea
Constantes

C
#0000 a #FFFF

(binario)
Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

D
Valores
especificados
exclusivamente
---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

IOWR(223) escribe el nmero de canales designado (D) desde el primer canal


fuente (designado por S) en adelante y los enva a la unidad de E/S especial que
tiene el nmero de unidad designado por D. Slo se pueden designar unidades
de E/S especiales montadas en bastidores de CPU o bastidores expansores de
E/S.
D
D+1
Nmero de unidad de la unidad de E/S especial

Nmero
designado
de canales
escritos.

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si el nmero de canales que hay que transferir (D)
est fuera del rango de 0001 a 0080 hex.
ON si el nmero de unidad (D) est fuera del rango de
0000 a 005F hex.
ON si D es designado por una constante cuando el
nmero de canales que hay que transferir (D+1) no es
0001 hex.
ON si la unidad de E/S especial designada est en un
SYSMAC BUS.
ON si se designa una unidad de E/S especial a la que
no afecta IOWR(223).
ON se designa una unidad de E/S especial con un error
de configuracin de unidad de E/S especial o un error
de unidad de E/S especial.

Indicador de
igual

Precauciones

OFF en todos los dems casos.


ON si la operacin de escritura finaliz normalmente.
OFF si la operacin de escritura no finaliz
normalmente.

Cuando se designe 0001 para un nmero de canales que haya que transferir
(D+1), se podrn designar los datos de D con una constante. Se producir un
error y se pondr en ON el indicador de error si la constante designada para D
cuando el nmero de canales que hay que transferir no es 0001.
Se pondr en ON el indicador de igual si la operacin de escritura finaliz normalmente.

627

Instrucciones de unidades de E/S bsicas

Seccin 3-21

Se pondr en OFF el indicador de igual si la operacin de escritura no finaliz


normalmente debido a que la unidad de E/S especial est ocupada.
Se producir un error y se pondr en ON el indicador de error en cualquiera de
los siguientes casos.
Existe un error de verificacin de unidad de E/S, un error de configuracin de
unidad de E/S especial o un error de unidad de E/S especial en la unidad de
E/S especial.
El nmero de canales que hay que transferir (D) est fuera del rango de 0001 a
0080 (hex.).
El nmero de unidad (D) est fuera del rango de 0000 a 005F hex.
La unidad de E/S especial designada est en un SYSMAC BUS.
Se designa una unidad de E/S especial a la que no afecta IOWR(223).
Se designa una unidad de E/S especial con un error de configuracin de unidad de E/S especial o un error de unidad de E/S especial.
Cuando se ejecute IOWR(223) se reflejarn los resultados en los indicadores
de condicin. En concreto, el indicador de igual se pondr en ON cuando haya
finalizado la lectura. Introduzca los indicadores de condicin tales como el indicador de igual con bifurcacin de salida desde las mismas condiciones de entrada que la instruccin IOWR(223).
No se ejecutar la operacin de escritura si la unidad de E/S especial est ocupada. Utilice el indicador de igual para crear un programa de autorretencin (tal
y como se muestra ms abajo) de tal forma que se ejecute IOWR(223) con cada
ciclo hasta que se haya ejecutado la operacin de escritura.

B
IOWR
C
S
D
A

Cuando se cumpla la condicin de entrada la salida A llevar a cabo una autorretencin y se ejecutar IOWR(223) con cada ciclo hasta que se ponga en ON
el indicador de igual. Una vez se haya completado la escritura y el indicador de
igual est en ON, se pondr en ON la salida B y se borrar la autorretencin.
Asegrese de colocar los indicadores de condicin justo despus de las instrucciones IOWR(223) y no detrs de cualquier otra instruccin. Si se coloca un indicador de condicin detrs de otra instruccin, este se ver afectado por los resultados de la ejecucin de esa instruccin.

628

Instrucciones de comunicaciones serie

Seccin 3-22

En este ejemplo se utiliza IOWR(223) para escribir datos.

Ejemplo

Cuando CIO 000000 se pone en ON se escriben los 10


canales de D00100 a D00109 en la unidad de E/S especial.
D+1

Nmero de canales para transferir: 10

Nmero de unidad: 3

El cdigo de control (C) vara dependiendo de la unidad de E/S especial.

CPU

Unidad de E/S especial (unidad 3)

10 canales

3-22 Instrucciones de comunicaciones serie


Esta seccin describe las instrucciones utilizadas para las comunicaciones serie.
Instruccin

Mnemnico

PROTOCOL MACRO

PMCR

Cdigo de
funcin
260

Pgina

TRANSMIT

TXD

236

640

RECEIVE

RXD

235

645

CHANGE SERIAL PORT


SETUP

STUP

237

650

631

3-22-1 Comunicaciones serie


Existen dos tipos de instruccin de comunicaciones serie. TXD(236) y
RXD(235) envan y reciben datos en comunicaciones sin protocolo (usuario)
con un dispositivo externo. PMCR(269) enva y recibe datos utilizando protocolos definidos por el usuario con un dispositivo externo. Las diferencias aparecen
en las tablas siguientes.
Nota La funcin macro de protocolo PMCR(260) incluye la funcin de comunicaciones sin protocolo de TXD(236) y RXD(235). TXD(236) y RXD(235) slo se utilizan para el puerto serie de la CPU. PMCR(260) slo se utiliza para los puertos
serie de la unidad de comunicaciones serie o la tarjeta de comunicaciones serie.

629

Instrucciones de comunicaciones serie


Instruccion
es
TXD(236) y
RXD(235)

Seccin 3-22

Tramas de comunicaciones
Se puede utilizar cualquiera de las siguientes.
Sin cdigo de inicio ni de fin

Enva o recibe datos slo en una direccin.

Cdigo de inicio y de fin

Datos

Cdigo de fin CR+LF

Datos

Datos
Cdigo de inicio y de fin CR+LF

Slo cdigo de fin

Datos

Datos

Se puede crear el siguiente tipo de tramas (mensajes)


para cumplir los requisitos de un dispositivo externo.
Cabecera

Direccin

Se puede seleccionar un retardo en el envo.

Datos

Slo cdigo de inicio

PMCR(260)

Funcin

Datos

Cheuqeo error Terminacin

Se pueden crear pasos


de comunicaciones.

Memoria de E/S

Se pueden definir hasta 16 pasos para enviar


y recibir.
Se pueden cambiar los pasos y realizar de
nuevo el procesamiento basndose en las
respuestas.
Se pueden seleccionar los tiempos de control
de comunicaciones.
Se pueden leer/escribir los smbolos del PLC.

Leer/escribir

Se puede utilizar la repeticin de smbolos.


Otras.
Instruccion
es
TXD(236) y
RXD(235)

Modo
Sin protocolo
(usuario)

Puertos de comunicaciones
Puerto serie montado dentro de la CPU
CPU
TXD(236)/
RXD(235)

TXD(236) y RXD(235) no
pueden utilizar puertos serie
en tarjetas de
comunicaciones serie o en
otras unidades.

RXD(235)
TXD(236)
PMCR(260)

Macro de
protocolo

Tarjeta de comunicaciones serie


Tarjeta de comunicaciones serie

Unidad de comunicaciones serie


Unidad de comunicaciones serie

Recibir
Enviar

Recibir
Enviar

630

Instrucciones de comunicaciones serie

Seccin 3-22

3-22-2 MACRO DE PROTOCOLO: PMCR(260)


Funcin

Llama y ejecuta una secuencia de comunicaciones registrada en una tarjeta o


unidad de comunicaciones serie.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

PMCR(260)

Variacio-nes

C1

C1: Canal de control 1

C2

C2: Canal de control 2

S: Primer canal de envo

R: Primer canal de recepcin

Ejecutado cada ciclo para condicin ON

PMCR(260)

Ejecutado una vez para diferencial ascendente

@PMCR(260)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado.

OK

C1: Canal de control 1 y C2: Canal de control 2


A continuacin se muestra el contenido de los dos canales de control.

15

12

11

C1

Direccin de unidad del socio de comunicaciones


Bus de CPU serie CS1: Nmero de unidad + 10 hex.
Tarjeta interna: E1 hex.
Nmero de puerto serie (puerto fsico)
1 a 2 hex. (1 hex.: Puerto 1, 2 hex.: Puerto 2)
Nmero de puerto de comunicaciones (puerto lgico)
0 a 7 hex.
15

C2

Nmero de secuencia de comunicaciones


0000 a 03E7 hex. (000 a 999 decimal)

S: Primer canal de envo y rea de envo


Se especifica el primero de los canales que se necesitan para enviar datos. S
contiene el nmero de canales que hay que enviar + 1 (es decir, incluyendo el

631

Instrucciones de comunicaciones serie

Seccin 3-22

canal S), y los datos de envo empiezan en S+1. Se pueden enviar canales entre
0000 y 00FA hex. (0 y 250 decimal).
Seleccione 0000 como constante para S si no hay ningn dato de envo. Tendr
lugar un error y se pondr en ON el indicador de error si se asigna cualquier otra
constante o direccin de canal, y no se ejecutar PMCR(260).
Nmero de canales de envo + 1

Se deben preparar n canales por adelantado.

R: Primer canal de recepcin y rea de recepcin


Los datos recibidos se almacenarn automticamente en los canales que empiezan con R+1 y se escribir automticamente el nmero de canales recibidos
ms R (es decir, incluyendo R) en R entre 0000 y 00FA hex. (0 y 250 decimal).
Selecciones antes de ejecutar PMCR
Seleccione como datos iniciales para el buffer de recepcin (datos de seguridad
para fallo de recepcin) los datos especificados por m (empezando por D). Se
pueden seleccionar los datos m al rango 0002 a 00FA (hex.) (2 a 255). Si se especifica 0000 (hex.) o 0001 (hex.) para m, se pondr a 0 el valor inicial del buffer
de recepcin.
Debe seleccionar siempre una direccin de canal para R, incluso si no hay datos
de recepcin. Si se selecciona una constante, se producir un error, se pondr
en ON el indicador de error y no se ejecutar PMCR(260). Si no hay datos de
recepcin no se utilizar R, con lo que se podr utilizar para otras funciones.
Asegrese de seleccionar una constante al intervalo #0000 a #FFFF si no hay
datos de recepcin.
Nmero de canales recibidos + 1
R
Los canales de datos m que se
reciben se almacenan aqu.

Especificaciones de
operandos

rea

C1

C2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511
A000 a A447

rea de temporizador

A448 a A959
T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

632

A448 a
A959

Instrucciones de comunicaciones serie

Seccin 3-22

rea
Direcciones de DM/EM
indirectas en BCD

C1
C2
*D00000 a *D32767

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

Valores
especificado
s
exclusivame
nte

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

0000 a
03E7 hex.

#0000 (binario)

(0 a 999)
---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

PMCR(260) ejecutar la secuencia de comunicaciones especificada en C2 utilizando el puerto lgico especificado en los bits 12 a 15 de C1 y el puerto fsico
especificado en los bits 8 a 11 de C1 para la direccin de unidad especificada en
los bits 0 a 7 de C1.
Si se especifica un smbolo como el operando para un mensaje de envo, se utilizar como rea de envo el nmero de canales de envo especificados en S
empezando desde S+1. Si se especifica un smbolo como operando para un
mensaje de recepcin, se ubicarn los datos recibidos en la memoria que empieza en R+1 y se escribir automticamente en R el nmero de canales recibidos si la transmisin se lleva a cabo con xito.
En caso contrario, se leern del buffer de recepcin y se almacenarn en R+1
los datos (R+1 en adelante) seleccionados antes de que se ejecutara
PMCR(260).

CPU

Unidad de comunicaciones serie


Puerto

R
a

Dispositivo externo

633

Instrucciones de comunicaciones serie


Indicadores

Nombre
Indicador de
error

Seccin 3-22
Etique
Operacin
ta
ER
ON si el indicador de habilitacin de puerto de
comunicaciones est en OFF para el puerto lgico
especificado cuando se ejecuta PMCR(260).
ON si C1 no est dentro de los rangos especificados. El
indicador de error no se pondr en ON si los datos de
C2 estn fuera de los rangos especificados. Se
almacenar el cdigo de fin en el cdigo de finalizacin
de puerto de comunicaciones (A203 a A210) del rea
auxiliar.
ON si el nmero de canales de S o R supera los 249
(cuando se especifican canales).
OFF en todos los dems casos.

Precauciones

Los datos del rea de envo especificada con S se envan utilizando la opcin de
lectura de smbolos, R( ), en un mensaje de envo.
Los datos se reciben en el rea de recepcin especificado por R utilizando la
opcin de escritura de smbolos, W( ), en un mensaje de recepcin.
Consulte el CS1-series CX-Protocol Operation Manual (W344) (Manual de operacin del protocolo CX de la serie CS1) para obtener ms detalles de cmo
designar smbolos R( ) y W( ).
Se puede ejecutar PMCR(260) para un puerto de comunicaciones serie en una
tarjeta de comunicaciones serie o en un unidad de comunicaciones serie. Se
pueden montar hasta 16 unidades de comunicaciones serie en el bastidor de
CPU y en los bastidores expansores de E/S. Se debe seleccionar la direccin de
unidad del socio de comunicaciones en los bits 0 a 7 de C1 para especificar qu
unidad/tarjeta se va a utilizar, y se debe seleccionar el nmero de puerto serie
en los bits 8 a 11. Las direcciones de unidad se especifican tal y cmo se muestra en la tabla siguiente.
Unidad/tarjeta

Direccin de unidad

Tarjeta de comunicaciones serie

E1 hex.

Unidad de comunicaciones serie

Nmero de unidad + 10 hex.

Unidades de comunicaciones serie


Tarjeta de comunicaciones serie

E1 hex.
Direccin de unidad
Nmero de unidad + 10 hex.

Al principio de la ejecucin de PMCR(260) se pondr en ON el indicador de ejecucin de macro de protocolo correspondiente. Se pondr en OFF una vez ha
finalizada la secuencia de comunicaciones y escritos los datos en el rea de recepcin especificada. Debe utilizarse, como parte de la condicin de ejecucin,
una entrada NC para el indicador de ejecucin de macro de protocolo cada vez
que se ejecute PMCR(260) para asegurar que se ejecuta slo una secuencia de

634

Instrucciones de comunicaciones serie

Seccin 3-22

comunicaciones a la vez para el mismo puerto fsico. Puede verlo en el ejemplo


siguiente.

Condicin
de ejecucin

Indicador de
ejecucin de
macro de protocolo

Indicador de habilitacin de puerto de comunicaciones


PMCR(260)

SEND(090), RECV(098) y CMND(490) tambin utilizan los puertos lgicos 0 a 7


para ejecutar secuencias de comunicaciones mediante unidades y tarjetas de
comunicaciones serie (utilizando internamente comandos FINS). No se puede
ejecutar PMCR(260) para un puerto lgico que ya est siendo utilizado por
SEND(090), RECV(098), CMND(490) o PMCR(260). Para evitar que se ejecute
ms de una secuencia de comunicaciones en el mismo puerto lgico debe utilizarse el indicador de habilitacin de puerto de comunicaciones correspondiente
como entrada NA en la condicin de ejecucin para PMCR(260), tal y como se
muestra en el diagrama anterior.
CPU

PMCR(260)
PMCR(260)

El indicador de error se pondr en ON en los casos siguientes:


El indicador de habilitacin de puerto de comunicaciones est en OFF para el
puerto lgico especificado (0 a 7) cuando se ejecuta PMCR(260).
C1 no est dentro de los rangos especificados.
Designacin del rea de recepcin
Antes de ejecutar PMCR(260) el usuario debe seleccionar los datos de seguridad en el rea de recepcin para el fallo de procesamiento de recepcin. Una
vez ejecutado PMCR(260) se almacenan automticamente los datos del buffer
de recepcin en el rea de recepcin. Este es un ejemplo de la aplicacin de
datos de seguridad: se selecciona por adelantado un valor concreto (datos de
seguridad), de tal forma que no se leer el valor actual como cero cuando tenga
lugar un fallo de transmisin mientras se ejecuta el protocolo para lectura del
valor de un controlador.
Indicadores y canales
relacionados

Se pueden utilizar los indicadores y canales siguientes si se necesitan cuando


se est ejecutando PMCR(260).

635

Instrucciones de comunicaciones serie

Seccin 3-22

rea auxiliar
Nombre

Direccin

Indicador de habilitacin de A20200 a


puerto de comunicaciones A20207

Contenido
ON cuando se habilitan las
comunicaciones en red (incluyendo
PMCR(260)).
Los bits 00 a 07 se corresponden con
los puertos lgicos 0 a 7
respectivamente.
Se pondr en OFF un indicador de
habilitacin de instruccin de
comunicaciones en red cuando se
inicien las comunicaciones en red, y
se pondr en ON cuando hayan
finalizado (independientemente de si
las comunicaciones terminan
normalmente o con error).

Indicador de error de
puerto de comunicaciones

A21900 a
A21907

ON cuando se produce un error en las


comunicaciones en red.
Los bits 00 a 07 se corresponden con
los puertos lgicos 0 a 7
respectivamente.

Cdigos de finalizacin de
puerto de comunicaciones

A203 a A210

Se conservar el estado del indicador


hasta que empiece la comunicacin
en red siguiente. El indicador se
pondr en OFF cuando empiece de
nuevo la comunicacin, incluso si tuvo
lugar un error en la ltima ejecucin.
Contiene el cdigo de finalizacin
almacenado cuando se llevan a cabo
las comunicaciones de red.
Los canales A203 a A210 se
corresponden con los puertos lgicos
0 a 7 respectivamente.
El cdigo de finalizacin ser 00
mientras se est ejecutando la
instruccin de comunicaciones. Se
almacenar el nuevo cdigo de
respuesta cuando haya terminado la
ejecucin.
El contenido de estos canales se
borra cuando empieza la operacin.

636

Instrucciones de comunicaciones serie

Seccin 3-22

Respuestas de comunicaciones
Cdigo
1106 (hex.)

Contenido
Ningn nmero de programa correspondiente
Nmero de secuencia de envo/recepcin
especificado no registrado.

2201 (hex.)

Modifique el nmero de secuencia de envo/recepcin


o aada el nmero utilizando el CX-Programmer.
No operable debido a la ejecucin del protocolo
Dado que ya se ha ejecutado un macro de protocolo
no se acepta ninguna otra ejecucin.

2202 (hex.)

Aada al programa una condicin NC para el


indicador de ejecucin del macro de protocolo.
No operable debido a detencin
Dado que es est conmutando el protocolo no se
acepta ninguna otra ejecucin.

2401 (hex.)

Aada al programa una condicin NC para el


indicador de cambio de la configuracin en serie.
Sin tabla de registro
Se ha producido un error en los datos del macro de
protocolo o se estn transmitiendo datos.
Transmita los datos del macro de protocolo con
CX-Programmer.
Para obtener ms informacin sobre otros cdigos de
respuesta, consulte CS1 Series Communications
Commands Reference Manual (Manual de referencia
de los comandos de comunicaciones de la serie
CS1).

Otros

rea de tarjeta interna


Nombre

Direccin

Contenido

Indicador de ejecucin de
macro de protocolo del
puerto 1

CIO 190915

ON cuando se ejecuta PMCR(260). El


indicador permanecer en OFF si falla
la ejecucin.

Indicador de ejecucin de
macro de protocolo del
puerto 2

CIO 191915

El iindicador
di d se pondr
d en OFF
cuando se haya completado la
secuencia de comunicaciones (ya sea
finalizada o interrumpida).

rea de bus de CPU serie CS1


n = 1500 + 25 x nmero de unidad
Nombre
Indicador de ejecucin
de macro de protocolo
del puerto 1
Indicador de ejecucin
de macro de protocolo
del puerto 2

Ejemplos

Direccin
Bit 15 de
CIO n+9
Bit 15 de
CIO n+19

Contenido
ON cuando se ejecuta PMCR(260). El
indicador permanecer en OFF si falla la
ejecucin. El indicador se pondr en OFF
cuando se haya completado la secuencia
de comunicaciones (ya sea finalizada o
interrumpida).

Cuando, en el siguiente ejemplo, CIO 0000 est en ON, se ejecuta la secuencia


de comunicaciones n 101 (0065 hex.) durante todo el tiempo que el indicador
de habilitacin de puerto de comunicaciones est en ON y se pone en OFF el
indicador de ejecucin de macro de protocolo del puerto 1 (CIO 190915).
Si se especifica un operando para un smbolo en un mensaje de envo se utilizarn como rea de envo 2 canales de datos (empezando desde D00101), porque el contenido de D00100 es #0003.

637

Instrucciones de comunicaciones serie

Seccin 3-22

Si se especifica un operando para el smbolo de un mensaje de recepcin, se


almacenarn 2 canales de datos (empezando desde D00201) y se escribir en
D00200 el nmero de canales recibidos +1.

Indicador
de ejecucin de
macro de
protocolo

Indicador de
habilitacin de
puerto de comunicaciones
R

Direccin de unidad del socio de comunicaciones


E1 hex.: Tarjeta interna
Nmero de puerto serie (puerto fsico)
2 hex.: Puerto 2
Nmero de puerto de comunicaciones (puerto lgico)
7 hex.: Puerto lgico 7

Nmero de secuencia de comunicaciones


0065 hex.: 101

0
Utilizado
como
rea de
envo

2 canales

2
1 canal

Enviado

R(1),2: 2 bytes enviados desde D00101

0
Datos recibidos

Recibido

W(1),2: 2 bytes recibidos


empezando por D00201

Nota Como se ve en el esquema anterior, la opcin


de lectura de smbolos, R( ), en el mensaje de
envo o la opcin de escritura de smbolos, W(
), realmente envan y reciben datos.

Retencin del rea de


recepcin

638

El buffer de recepcin se pone en todo ceros inmediatamente antes de que se


ejecute una secuencia de comunicaciones de PMCR(260). Si se utiliza una programacin como la que aparece ms abajo para leer peridicamente datos de
PV u otros valores y no se pueden leer los datos debido a un error de recepcin o
a cualquier otro motivo, se borrarn los datos que se estn leyendo hasta la siguiente operacin de lectura completada con xito.
Existe una funcin que mantiene los datos en el rea de recepcin incluso cuando se produce un error de recepcin. Si se utiliza esta funcin se transferirn
datos desde los primeros canales m del rea de recepcin al buffer de recepcin
despus de que el buffer se ponga en todo ceros, pero antes de que se ejecute
la secuencia de comunicaciones. Esto evita que el rea de recepcin se ponga
temporalmente en todo ceros, y lo hace escribiendo los datos de recepcin ms
recientes cuando la recepcin de datos no finaliza con xito.

Instrucciones de comunicaciones serie

Seccin 3-22

Especifique el nmero de canales del rea de recepcin que hay que mantener
como valor m. Si se especifica 0 1 se inhabilitar la funcin de retencin y el
rea de recepcin se pondr en todo ceros.
El ejemplo de programacin siguiente muestra las instrucciones que se utilizan
para ejecutar de forma peridica o continua la instruccin PMCR(260) para leer
datos mediante una operacin de recepcin sencilla.

Indicador
de siempre
en ON

Indicador de
habilitacin de
puerto de comunicaciones

Indicador de
ejecucin de
macro de protocolo

Seleccionar

Buffer
de recepcin

Se transferirn los datos


seleccionados si no se
reciben datos nuevos.

m canales

rea de recepcin no retenida


Secuencia de comunicaciones
Buffer de recepcin Borrado

Recib.
Error
Datos borrados (todo ceros) almacenados.

rea de recepcin (empezando en R+1)


rea de recepcin retenida
Secuencia de comunicaciones
Buffer de recepcin Borrado;
datos anteriores almacenados
rea de recepcin
(empezando en R+1)

Recib.
Error
Datos seleccionados almacenados si no se han
recibido datos nuevos

639

Instrucciones de comunicaciones serie

Seccin 3-22

3-22-3 TRANSMITIR: TXD(236)


Funcin

Enva el nmero especificado de bytes de datos desde el puerto RS-232C incorporado a la CPU.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

TXD(236)

Variacio-nes

S: Primer canal fuente

C: Canal de control

N: Nmero de bytes
0000 a 0100 hex. (0 a 256)

Ejecutado cada ciclo para condicin ON

TXD(236)

Ejecutado una vez para diferencial ascendente

@TXD(236)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

No soportado.

Subrutinas
OK

OK

A continuacin se muestra el contenido del canal de control (C).


15

12 11

8 7

4 3

Orden de bytes
0: Bytes ms significativos primero
1: Bytes menos significativos primero
Control de seal RS y ER
0: Sin control de seal RS y ER
No utilizado. 1: Control de seal RS
2: Control de seal ER
3: Control de seal RS y ER.

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

A000 a A447

rea de temporizador

A448 a A959
T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

640

Instrucciones de comunicaciones serie

Seccin 3-22

rea
Direcciones de DM/EM
indirectas en BCD

S
*D00000 a *D32767

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
---

Constantes

Valores
especificados
exclusivamente
DR0 a DR15

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #0100
(binario)

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

TXD(236) lee N bytes de datos de los canales S a S+(N2)--1 y enva desde el


puerto RS-232C de la CPU los datos en modo sin protocolo sin convertirlos.
Cuando se envan los datos se aaden los cdigos especificados para el modo
sin protocolo en la configuracin del PLC.

Descripcin

Slo es posible enviar datos cuando el indicador de preparado para enviar


(A39205) est en ON.
El diagrama siguiente muestra el orden en que se envan los datos y el contenido de la trama de envo para varias configuraciones.

3
5

4
6

Se envan N bytes de datos en el orden siguiente


cuando se especifica el envo de los bytes ms
significativos primero: 1, 2, 3, 4, 5, 6

Sin cdigo de inicio ni de fin


Datos
N bytes de envo: 256 mx.

Slo cdigo de inicio


Datos

Bytes de envo despus de ST: 256 mx.

Slo cdigo de fin


Datos

Bytes de envo antes


de ED: 256 mx.

Cdigo de inicio y de fin


Datos

Bytes de envo entre


ST y ED: 256 mx.

Cdigo de fin CR+LF


Datos

CR

LF

Cdigo de inicio y de fin CR+LF

Bytes de envo antes


de CR+LF: 256 mx.

Datos
Bytes de envo entre ST
y CR+LF: 256 mx.

Puerto RS-232C de la CPU


Datos enviados.

641

Instrucciones de comunicaciones serie


Indicadores

Nombre
Indicador de
error

Seccin 3-22
Etique
Operacin
ta
ER
ON si el modo sin protocolo no est seleccionado en la
configuracin del PLC.
ON si el valor de C est fuera del rango.
ON si el valor de N no est entre 0000 y 0100 hex.
ON se intenta realizar un envo cuando el indicador de
preparado para enviar est en OFF.
OFF en todos los dems casos.

Precauciones

TXD(236) slo se puede utilizar para el puerto RS-232C de la CPU, y slo cuando el puerto est configurado en modo sin protocolo.
Se pueden realizar las siguientes selecciones en la configuracin del PLC para
el formato de trama de envo de mensajes.
Cdigo de inicio: Ninguno o 00 a FF hex.
Cdigo de fin: Ninguno, CR+LF o 00 a FF hex.
Se enviarn los datos con cualquier cdigo de inicio y/o de fin especificado en la
configuracin del PLC. Si se especifican los cdigos de inicio y fin se reducir a
254 el nmero mximo de bytes que se puede especificar para N.
Slo es posible enviar datos cuando el indicador de preparado para enviar
(A38205) est en ON.
Los datos se envan en el orden especificado en C.
No se enviar nada si se especifica 0 para N.
Si se especifica el control de seal RS en C se utilizar el bit 15 de S como seal
RS.
Si se especifica el control de seal ER en C se utilizar el bit 15 de S como seal
ER.
Si se especifica el control de seal RS y ER en C se utilizar el bit 15 de S como
seal RS y el bit 14 de S como seal ER.
Si se especifica 1, 2 3 hex. para el control de seal RS y ER en C se ejecutar
TXD(236) independientemente del estado del indicador de preparado para enviar (A39205).
Tendr lugar un error y se pondr en ON el indicador de error en los casos siguientes.
No se ha seleccionado en la configuracin del PLC el modo sin protocolo para
el puerto.
El valor de C est fuera del rango.
El valor de N no est entre 0000 y 0100 hex.
Se intent realizar un envo cuando el indicador de preparado para enviar
(A39205) estaba en OFF.
Algunos de los dispositivos a los que se estn enviando datos necesitan un retardo en la comunicacin. Seleccione un retardo cuando as lo requiera el dispositivo externo.

Indicadores y canales
relacionados

642

Se pueden utilizar las siguientes selecciones de configuracin del PLC y el indicador de rea auxiliar cuando se ejecute TXD(236).

Instrucciones de comunicaciones serie

Seccin 3-22

Configuracin del PLC


Nombre
Cdigo de inicio del modo
sin protocolo

Cdigo de fin del modo sin


protocolo

Retraso en el envo en
modo sin protocolo

Contenido

Seleccin

Especifica si se va a utilizar un cdigo


de inicio en el formato de trama de
una comunicacin de modo sin
protocolo.

0: Ninguna
(por defecto)

Especifica si se va a utilizar un cdigo


de fin en el formato de trama de una
comunicacin de modo sin protocolo.

Se enviarn los datos especificados


desde el puerto slo una vez haya
transcurrido el tiempo de retardo
especificado desde el momento en
que se ejecut TXD(236) en el
programa de diagrama de rels.

1: S
(seleccione
00 a FF hex.)
0: Ninguna
(por defecto)
1: S
(seleccione
00 a FF hex.
o CR+LF)
0 a 99990 ms
(en unidades
de 10 ms)
Seleccin por
defecto: 0 ms

rea auxiliar
Nombre
Listo para enviar de puerto
RS-232C

Direccin
A39205

Contenido
ON cuando se pueden enviar datos
en modo sin protocolo.

643

Instrucciones de comunicaciones serie


Ejemplo: Envo de datos

Seccin 3-22

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, se envan 5 bytes de


datos empezando por D00100 sin ninguna conversin.

&5

C: D00200

Orden de bytes
1: Bytes menos significativos primero
No utilizado.
Bytes ms
significativos

Control de seal RS y ER
0: Sin seal RS y ER
Bytes menos
significativos

S:
Enviados en
el orden especificado.

5 bytes

Cdigos de inicio y fin aadidos segn las


selecciones en la configuracin del PLC (este ejemplo asume que se ha seleccionado
tanto un cdigo de inicio como uno de fin).
ST 12

34 AB CD EF ED

ST: Cdigo de inicio (p. ej.: 02 hex.)


ED: Cdigo de fin (p. ej.: 03 hex.)

Enviado

644

Instrucciones de comunicaciones serie

Seccin 3-22

Cuando, en el siguiente ejemplo, CIO 000001 est en ON, se seleccionan la seal RS y ER segn el estado de sus respectivos bit 15 y 14 en D00300.

Ejemplo: Control de seal

1
3
4
20

C: D00400

0
Orden de bytes
0: Inhabilitado

No utilizado.

Control de seal RS y ER
3: Control de seal RS y ER.

15 14 13 12

S: D00300 1 0 0 0
Seal ER seleccionada en 0
Seal RS seleccionada a 1

3-22-4 RECIBIR: RXD(235)


Funcin

Lee el nmero de bytes de datos especificado en el puerto especificado.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

Operandos

RXD(235)

Variacio-nes

D:Primer canal de destino

C: Canal de control

N: Nmero de bytes que hay que almacenar


0000 a 0100 hex. (0 a 256 decimal)

Ejecutado cada ciclo para condicin ON

RXD(235)

Ejecutado una vez para diferencial ascendente

@RXD(235)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado.

OK

A continuacin se muestra el contenido del canal de control (C).


15

12

11

Orden de bytes
0: Bytes ms significativos primero
1: Bytes menos significativos primero
Control de seal CS y DR
No utilizado. 0: Sin control de seal CS y DR
1: Control de seal CS
2: Control de seal DR
3: Control de seal CS y DR.

645

Instrucciones de comunicaciones serie


Especificaciones de
operandos

Seccin 3-22

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511
A448 a A959

A000 a A447
A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Valores
especificados
exclusivamente
DR0 a DR15

#0000 a #0100
(binario)

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

646

RXD(235) lee los datos recibidos en el puerto CS-232C de la CPU y almacena


(en modo sin protocolo) N bytes de datos en los canales D a D+(N2)--1. Cuando se reciben los datos tambin se reciben los cdigos especificados para el
modo sin protocolo en la configuracin del PLC. Si no se han recibido N bytes de
datos en el puerto slo se almacenarn los datos que hayan sido recibidos.
Slo es posible recibir datos cuando el indicador de preparado para recibir
(A39206) est en ON.

Instrucciones de comunicaciones serie

Seccin 3-22

El diagrama siguiente muestra el orden en que se reciben los datos y el contenido de la trama de recepcin para varias configuraciones.
Sin cdigo de inicio ni de fin
123456

Slo cdigo de inicio


123456

Slo cdigo de fin


123456

Cdigo de inicio y de fin

Bytes de recepcin: Especificado en la configuracin del PLC


Bytes de recepcin despus de ST: Especificado
en la configuracin del
PLC
Bytes de recepcin antes de ED: 256 mx.

123456

Cdigo de fin CR+LF


123456

Bytes de recepcin entre ST y ED: 256 mx.

CR LF

Cdigo de inicio y de fin CR+LF


123456

Bytes de recepcin antes de CR+LF: 256


mx.
Bytes de recepcin entre
ST y CR+LF: 256 mx.

Recibido

Puerto CS-232C de la CPU

Bytes
1

Cuando se especifica la recepcin de


los bytes ms significativos primero (0):
Bytes ms
Bytes menos
significativos significativos

2
3
4
5
6

Indicadores

Nombre
Indicador de
error

N bytes almacenados
Mx. 256 bytes en el orden
especificado.

Cuando se especifica la recepcin de los


bytes menos significativos primero (0):
Bytes ms
Bytes menos
significativos significativos
1

Etique
Operacin
ta
ER
ON si el modo sin protocolo no esta seleccionado en la
configuracin del PLC.
ON si el valor de C est fuera del rango.
ON si el valor de N no est entre 0000 y 0100 hex.
OFF en todos los dems casos.

Precauciones

RXD(235) slo se puede utilizar para el puerto CS-232C de la CPU, y slo cuando el puerto est seleccionado en modo sin protocolo.
Se pueden realizar las siguientes selecciones en la configuracin del PLC para
el formato de trama de recepcin de mensajes.

647

Instrucciones de comunicaciones serie

Seccin 3-22

Cdigo de inicio: Ninguno o 00 a FF hex.


Cdigo de fin: Ninguno, CR+LF o 00 a FF hex. Si no se especifica ningn cdigo de fin, se selecciona el nmero de bytes hasta el recibido desde 00 a FF
hex. (1 a 256 decimal; 00 se utiliza para especificar 256 bytes).
El indicador de recepcin finalizada (A39206) se pondr en ON cuando se haya
recibido el nmero de bytes especificado en la configuracin del PLC. Cuando
se pone en ON el indicador de recepcin finalizada el nmero de bytes del contador de recepcin (A393) tendr el mismo valor que el nmero de bytes de recepcin especificados en la configuracin del PLC. Si se reciben ms bytes de
los especificados se pondr en ON el indicador de overflow de recepcin
(A39207).
Si se especifica un cdigo de fin en la configuracin del PLC se pondr en ON el
indicador de recepcin finalizada (A39206) cuando se reciba el cdigo de fin o
cuando se hayan recibido 256 bytes de datos. Si se reciben ms datos despus
de que se ponga en ON el indicador de recepcin finalizada (A39206) se pondr
en ON el indicador de overflow de recepcin (A39207).
Cuando se ejecuta RXD(235) se almacenan los datos en la memoria empezando por D, se pone en OFF el indicador de recepcin finalizada (A39206) (incluso
si est en ON el indicador de overflow de recepcin (A39207)) y se pone en 0 el
contador de recepcin (A393).
Si se pone en ON el bit de reinicio del puerto RS-232C (A52600), se pondr en
OFF el indicador de recepcin finalizada (A39206) (incluso si est en ON el indicador de overflow de recepcin (A39207)) y se pondr en 0 el contador de recepcin (A393).
Se almacenarn los datos en la memoria en el orden especificado en C.
Si se especifican los cdigos de inicio y fin en la configuracin del PLC se ignorar el nmero de bytes especificado para N y se almacenarn (empezando en D)
los datos recibidos cuando se ejecuta RXD(235) desde el cdigo de inicio al cdigo de fin.
Si se especifica 0 para N se pondr en OFF el indicador de recepcin finalizada
(A39206), se pondr en 0 el contador de recepcin (A393) y no se almacenar
nada en memoria.
Si se especifica en C el control de seal CS se almacenar el estado de la seal
CS en el bit 15 de D.
Si se especifica en C el control de seal DR se almacenar el estado de la seal
DR en el bit 15 de D.
Si se especifica el control de seal CS y DR en C se almacenar el estado de la
seal CS en el bit 15 de D y la seal de DR en el bit 14 de D.
No se almacenarn los datos de recepcin si se especifica el control de seal de
CS o DR.
Si se especifica 1, 2 3 hex. para el control de seal RS y ER en C, se ejecutar
RXD(235) independientemente del estado del indicador de preparado para recibir (A39206).
Se producir un error y se pondr en ON el indicador de error en los casos siguientes:
No se ha seleccionado en la configuracin del PLC el modo sin protocolo para
el puerto.
El valor de C est fuera del rango.
El valor de N no est entre 0000 y 0100 hex.
No se podrn recibir ms datos hasta que se hayan ledo los datos recibidos con
RXD(235). Se leen los datos desde el momento en que se pone en ON el indicador de recepcin finalizada y desde la siguiente ejecucin de RXD(235).
Indicadores y canales
relacionados

648

Se pueden utilizar las siguientes selecciones de configuracin del PLC y el indicador de rea auxiliar cuando se ejecute RXD(235).

Instrucciones de comunicaciones serie

Seccin 3-22

Configuracin del PLC


Nombre
Cdigo de inicio del modo
sin protocolo

Cdigo de fin del modo sin


protocolo

Bytes de datos de
recepcin sin protocolo

Contenido

Seleccin

Especifica si se va a utilizar un cdigo


de inicio en el formato de trama de
una comunicacin de modo sin
protocolo.

0: Ninguna
(por defecto)

Especifica si se va a utilizar un cdigo


de fin en el formato de trama de una
comunicacin de modo sin protocolo.

Especifica el nmero de bytes que


hay que leer cuando no se especifica
un cdigo de fin.

1: S
(seleccione
00 a FF hex.)
0: Ninguna
(por defecto)
1: S
(seleccione
00 a FF hex.
o CR+LF)
01 a FF hex.
(1 a 255
decimal)
Seleccin por
defecto: 00
(256 bytes)

rea auxiliar
Nombre
Indicador de recepcin
completa de puerto
RS-232C

Indicador de overflow de
recepcin de RS-232C

Direccin
A39206

Contenido
ON cuando finaliza la recepcin sin
protocolo.
Nmero de bytes de recepcin
especificado: El indicador se pondr
en ON cuando se haya recibido el
nmero de bytes especificado.

A39207

Cdigo de fin especificado: El


indicador se pondr en ON cuando se
reciba el cdigo de fin o cuando se
hayan recibido 256 bytes.
ON cuando se han recibido ms bytes
de recepcin de los esperados.
Nmero de bytes de recepcin
especificado: El indicador se pondr
en ON cuando se reciban datos del
tipo que sea despus de que haya
terminado la recepcin y en el
RXD(235) siguiente.
Cdigo de fin especificado: El
indicador se pondr en ON cuando se
reciban datos del tipo que sea
despus de que se haya recibido el
cdigo de fin y la ejecucin del
RXD(235) o cuando se reciba el bit de
datos n 257 antes de que se reciba el
cdigo de fin.

Contador de recepcin de
puerto RS--232C

A393

Cuenta en hexadecimal el nmero de


bytes recibidos en modo sin protocolo.

649

Instrucciones de comunicaciones serie

Seccin 3-22

Cuando, en el siguiente ejemplo, CIO 000000 est en ON, se reciben datos desde el puerto RS-232C y se almacenan 5 bytes de datos empezando por
D00100.

Ejemplos

&5

C: D00200
Orden de bytes
1: Bytes menos significativos primero
No utilizado.

Control de seal CS y DR
0: Sin control de seal CS y DR

Bytes ms
significativos

Este ejemplo asume que se han especificado


tanto el cdigo de inicio como el de fin en la configuracin del PLC.
Almacenado
S:

Bytes menos
significativos

ST: Cdigo de inicio (p. ej.: 02 hex.)


ED: Cdigo de fin (p. ej.: 03 hex.)

3-22-5 CAMBIAR SETUP DE PUERTO SERIE: STUP(237)


Funcin

Cambia los parmetros de comunicaciones de un puerto serie de la CPU, de la


unidad de comunicaciones serie (bus de CPU CS1) o de la tarjeta de comunicaciones serie. STUP(237) habilita el modo de protocolo para que se pueda cambiar durante el funcionamiento del PLC.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

650

STUP(237)

Variacio-nes

C: Canal de control (puerto)

S: Primer canal fuente

Ejecutado cada ciclo para condicin ON

STUP(237)

Ejecutado una vez para diferencial ascendente

@STUP(237)

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

No soportado.

reas de
programa de
bloques
OK

Tareas de
interrupcin

reas de
programa de
pasos
OK

Subrutinas
OK

No soportado.

No se admite

Instrucciones de comunicaciones serie

Seccin 3-22

A continuacin se muestra el contenido del canal de control (C).

Operandos
15

12 11

8 7

Direccin de unidad del dispositivo de puerto


CPU: 00 hex.
Bus de CPU serie CS1: nmero de unidad + 10 hex.
Tarjeta interna: E1 hex.
Nmero del puerto serie
1 hex.: puerto de perifricos de la CPU, puerto 1 del bus de la CPU o tarjeta interna
2 hex.: Puerto RS-232C incorporado a la CPU, puerto 2 del bus de la CPU o tarjeta interna
(3 y 4 hex. estn reservados).
Siempre a 0.

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a CIO 6134

rea de trabajo

W000 a W511

W000 a W502

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H502

A000 a A438

A000 a A438

A448 a A959

A448 a A950

rea de temporizador

T0000 a T4095

T0000 a T4086

rea de contador

C0000 a C4095

C0000 a C4086

rea DM

D00000 a D32767

D00000 a D32758

rea EM sin banco

E00000 a E32767

E00000 a E32758

rea EM con banco

En_00000 a En_32767

En_00000 a En_32758

(n = 0 a C)

(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Registros de datos

(n = 0 a C)
Valores especificados
exclusivamente
DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

Constantes

#0000
---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

STUP(237) escribe 10 canales de datos de S a S+9 en el rea de configuracin


de comunicaciones de la unidad con la direccin de unidad especificada, tal y
como aparece en la tabla siguiente. Cuando se designa la constante #0000 para
S, se selecciona por defecto la configuracin de comunicaciones del puerto correspondiente.

651

Instrucciones de comunicaciones serie


Direccin de
unidad
00 hex.

Seccin 3-22

Unidad

N de
puerto

CPU

Puerto serie

1 hex.

Puerto 1

2 hex.

Puerto 2

Nmero de
unidad + 10
hex.

Unidad de
comunicaciones
serie (bus de CPU
CS1)

1 hex.

Puerto 1

2 hex.

Puerto 2

E1 Hex

Tarjeta de
comunicaciones
serie (tarjeta interna)

1 hex.

Puerto 1

2 hex.

Puerto 2

rea de configuracin de
comunicaciones de puerto
serie
Parmetros de
comunicaciones del puerto de
perifricos en la configuracin
del PLC
Parmetros de
comunicaciones del puerto
RS-232C en la configuracin
del PLC
10 canales empezando por
D30000 + 100 x n de unidad.
10 canales empezando por
D30000 + 100 x n de unidad +
10
10 canales empezando por
D32000
10 canales empezando por
D32010

Cuando se ejecuta STUP(237) se pone en ON el indicador de cambio en los parmetros de puerto (A61901, A61902, o A619 a A636) correspondiente. El indicador permanecer en ON hasta que haya finalizado el cambio de parmetros.
STUP(237) cambia los parmetros de comunicaciones de un puerto durante la
operacin basndose en condiciones especficas. Por ejemplo, se puede utilizar STUP(237) para cambiar a comunicaciones Host Link y poder controlar y
programar desde un ordenador cuando se cumplan determinadas condiciones
durante la ejecucin de una secuencia de comunicaciones de una conexin por
mdem.
Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si los valores de C estn fuera del rango.
ON si se ejecuta STUP(237) para un puerto cuyo
indicador de cambio en los parmetros de
comunicaciones ya est en ON.
ON si se ejecuta STUP(237) en una tarea de
interrupcin.
OFF en todos los dems casos.

Precauciones

Los parmetros de comunicaciones estn formados por el modo protocolo, la


velocidad de transmisin, el formato de datos (mtodo de transmisin de macro
de protocolo y longitud de los datos de comunicaciones del macro de protocolo
mximo) y otros parmetros. Para ms detalles consulte Manual de operacin
de autmatas programables de la serie CS1 (W339) o CS1-series Serial Communications Boards and Serial Communications Unit Operation Manual (W336)
(Manual de operacin de la unidad de comunicaciones serie y tarjetas de comunicaciones serie de la serie CS1) del puerto serie que se va a configurar.

Indicadores y canales
relacionados

Se pueden utilizar los indicadores siguientes si se necesitan cuando se est ejecutando STUP(237). Estos indicadores se encuentran en el rea auxiliar.

652

Instrucciones de comunicaciones serie

Seccin 3-22

Nombre

Direccin

Indicador de cambio en los


parmetros de puerto de
perifricos
Indicador de cambio en los
parmetros del puerto
RS-232C
Indicadores de cambio en
los parmetros de puerto
de los puertos 1 a 4 de las
unidades de
comunicaciones serie 1 a
15.
Indicadores de cambio en
los parmetros de puerto
de los puertos 1 a 4 de la
tarjeta de comunicaciones
serie

Ejemplos

A61901
A61902
A620 bit 01 a
bit 04
a A635 bit 01
a bit 04
A63601 a
A63604

Contenido
ON cuando se estn cambiando los
parmetros de comunicaciones del
puerto de perifricos.
ON cuando se estn cambiando los
parmetros de comunicaciones del
puerto RS-232C.
ON cuando se estn cambiando los
parmetros de comunicaciones de un
puerto de una unidad de
comunicaciones serie.
ON cuando se estn cambiando los
parmetros de comunicaciones de un
puerto de la tarjeta de
comunicaciones serie.

Cuando, en el siguiente ejemplo, CIO 000000 se pone en ON, se cambian los


parmetros de comunicaciones del puerto serie 1 de la tarjeta de comunicaciones serie (tarjeta interna) a las configuraciones de los 10 canales de D00100 a
D00109. En este ejemplo, se cambian la configuracin de modo protocolo a modo macro de protocolo.

S: D00100

Selecciones de puerto: Por defecto, modo protocolo: 6 hex.


(macro de protocolo).

S+1: D00101

Velocidad de transmisin: Por defecto (9600 bps)

S+2: D00102
a

S+9: D00109
Transferido
Canales de DM asignados a la configuracin de comunicaciones de la tarjeta de comunicaciones serie.
6

653

Instrucciones de redes

Seccin 3-23

3-23 Instrucciones de redes


3-23-1 Acerca de SYSMAC NET Link/Operaciones SYSMAC LINK
Las instrucciones de red se dividen en dos tipos: SEND(090)/RECV(098) y
CMND(490). stas se transmiten entre las unidades de una red (CPU, unidades
de unidad de bus de CPU CS1 u ordenadores) para transferir datos y controlar
las operaciones realizadas, como por ejemplo cambiar el modo operativo.
Instruccin
SEND(090)/
RECV(098)

CMND(490)

Contenido del
mensaje

Operacin

Comandos para
transmitir y recibir
datos
(comando FINS)

Otro dispositivo

CPU
SEND(090) o
RECV(098)

Comandos arbitrarios
(comando FINS)

Transmisin de datos
CPU,
Unidad de bus de CPU
Recepcin de
CS1 u ordenador
datos
Otro dispositivo

CPU
Comando enviado
CMND(490)

Respuesta

CPU,
Unidad de bus de CPU
CS1 u ordenador

Los comandos que ejecutan las instrucciones de red se denominan comandos


FINS y se utilizan par las comunicaciones entre dispositivos de control FA.. Para obtener informacin detallada sobre los comandos FINS, consulte CS1 Series Communications Commands Reference Manual (Manual de referencia de
los comandos de comunicaciones de la serie CS1). Los comandos FINS posibilitan la comunicacin (mediante el formato comando/respuesta) con cualquiera
de las unidades de una red o con el bastidor de CPU; para ello slo hay que especificar la direccin de red, el nmero de nodo y el nmero de unidad correspondiente a la unidad de destino.
El siguiente ejemplo muestra cmo se enva un comando FINS a la CPU a travs del nodo nmero 2 en la direccin de red 00.
Nodo nmero 1
Nodo nmero 2
CPU (bastidor)

Direccin de red 00
(red local)

Direccin de red 01

1, 2, 3...

654

1. Direccin de red
Direccin de la red (red local = 00)
2. Nmero de nodo
Direccin lgica en la red
3. Nmero de unidad
Nmero de unidad de la unidad de destino
a) CPU: 00
b) Bus de la CPU: Nmero de unidad +10 hexadecimal
c) Unidad de E/S especial
serie CS1:
Nmero de unidad +20 hexadecimal

Instrucciones de redes

Seccin 3-23
d) Tarjeta interna: E1 hexadecimal
e) Ordenador:
01
Nmero de unidad
(hexadecimal)

Dispositivo de destino

00

Nmero de nodo

Nmero de unidad
+10

Nmero de nodo

01

Nmero de nodo

E1
Nmero de nodo

Nota Tambin es posible especificar un puerto serie (de 1 a 4) en el dispositivo de


destino (el puerto 0 representa al dispositivo).
Unidad de comunicaciones serie
Tarjeta interna
Puerto serie 1
Puerto serie 2

Modelos de
comunicaciones en red

Puerto serie 1
Puerto serie 2

CPU
Puerto serie 1
Puerto serie 2

Los siguientes ejemplos muestran tres tipos de comunicaciones en red: comunicaciones desde un PLC a otros dispositivos instalados en una red, comunicaciones desde un PLC a los puertos serie de otros dispositivos en red y comunicaciones con un ordenador conectado por una unidad Host Link
Comunicaciones con otro dispositivo de la red
El siguiente ejemplo muestra las comunicaciones entre un PLC y los dispositivos de otro PLC (CPU, unidad de bus de CPU CS1 o tarjeta interna). Para obtener informacin detallada, consulte el manual de operacin correspondiente a
la red (Controller Link o Ethernet) que est utilizando.
A la unidad de bus
De PLC a PLC de CPU CS1
A la tarjeta interna

A la CPU

Este ejemplo muestra las comunicaciones desde un PLC a un ordenador personal.


Del PLC al ordenador

655

Instrucciones de redes

Seccin 3-23
Comunicaciones con puertos serie de la red
Los ejemplos incluidos a continuacin muestran las comunicaciones que se establecen entre un PLC y los puertos serie de los dispositivos instalados en una
red. El primero muestra las comunicaciones con los puertos serie de los dispositivos conectados a otro PLC (CPU, unidad de bus de CPU CS1 o tarjeta interna)
y el segundo, las comunicaciones con un puerto serie del bastidor de CPU.

A travs de la red

En el bastidor de CPU

Nota Las comunicaciones se extienden hasta 3 niveles de red, incluyendo la red local
(la red donde se originan las comunicaciones).

SEND(090),
RECV(098) o
CMND(490)

Red 1
(red local)

Puente o gateway

Puente o gateway

Red 2

Red 3

Para establecer una comunicacin por red, es necesario registrar una tabla de
rutas en la CPU de cada PLC que indique la ruta que van a seguir los datos
transmitidos al nodo deseado. Cada tabla de rutas estar compuesta de una
tabla para la red local y otra para la red de retransmisin.
1, 2, 3...

1. Tabla de red local


Esta tabla incluye los nmeros de unidad y las direcciones de red de los nodos conectados al PLC local.
2. Tabla de red de retransmisin
Esta tabla incluye los nmeros de nodos y las direcciones de red de los primeros nodos de retransmisin hasta las redes de destino que no estn conectadas al PLC local.
Comunicaciones con un ordenador (Host Link)
Si enva las instrucciones SEND(090), RECV(098) o CMND(490) a un puerto

656

Instrucciones de redes

Seccin 3-23
serie en modo Host Link, la cabecera y terminacin de Host Link se anexionarn
al comando FINS y ste se enviar al ordenador.

Ordenador conectado al puerto incorporado a la CPU

Ordenador conectado a una tarjeta de comunicaciones serie

Ordenador conectado a un
puerto serie
Ordenador

Ordenador

Ordenador

A puerto

Al puerto

A puerto

CPU
Host Link

Host Link
Comando
FINS

FCS y terminacin de Host


Link
Cabecera de
Host Link

Host Link

Tarjeta de comunicaciones serie

Unidad de comunicaciones serie

Nota Las comunicaciones Host Link se pueden enviar por red. En este caso, el comando FINS viaja por red con normalidad. Una vez que este comando haya alcanzado el sistema Host Link, la cabeceras y terminacin necesarios se anexionarn a l y se enva al ordenador.

Ordenador

Host Link

Comando FINS

Comando
FINS

FCS y terminacin de Host Link

Cabecera de Host Link

Comunicaciones desde un ordenador (Host Link)


Los comandos FINS se pueden enviar desde un ordenador al PLC al que est
conectado, as como a otros dispositivos instalados en la red (CPU, unidades de
E/S especiales, otros ordenadores, etc.). En este caso, la cabecera y la terminacin necesarios para Host Link se deben conectar al comando FINS.

Ordenador

Host Link
Comando
FINS

FCS y terminacin de Host


Link
Cabecera de Host Link

Indicadores de
comunicaciones

Comando FINS

A continuacin se incluyen las operaciones realizadas por los indicadores.


El indicador de puerto de comunicaciones habilitado se pone a 0 durante la
comunicacin y a 1 una vez finalizada sta (correctamente o no).
El estado del indicador de error de puerto de comunicaciones se mantiene
hasta una nueva transmisin o recepcin de datos.

657

Instrucciones de redes

Seccin 3-23
El indicador de error de puerto de comunicaciones se pondr a 0 en el momento de una nueva transmisin o recepcin de datos, incluso si ocurri un
error durante la operacin anterior.

Indicador de puerto de comunicaciones habilitado


Instruccin de red
(SEND, RECV o CMND)

Ejecutando
instruccin 1

Ejecutando
instruccin 2

Ejecutando
instruccin 3

Indicador de error de
puerto de comunicaciones
Cdigo de finalizacin de
puerto de comunicaciones

Acerca de los nmeros


de puertos de
comunicaciones

0204
Finalizacin
previa

0000 (Finalizacin normal)

0000 (Finalizacin normal)

Ocupado

Existen 8 puertos de comunicaciones, de modo que se pueden ejecutar 8 instrucciones de comunicaciones simultneamente. Slo se puede ejecutar una
instruccin por puerto y stas han de ejecutarse de una en una. Para ejecutar
ms de 8 instrucciones, deber disponer de un control exclusivo.
Las instrucciones de red, SEND(090), RECV(098) y CMND(490), as como la
instruccin PROTOCOL MACRO, PMCR(260), comparten los siguientes 8 nmeros de puertos. Asegrese de no especificar el mismo nmero de puerto a la
vez para dos instrucciones diferentes.
Controller Link o unidad
Ethernet

CPU

Puerto
Instruccin 1
Instruccin 2
Instruccin 3
Instruccin 4
Instruccin 5
Instruccin 6
Instruccin 7
Instruccin 8

658

Instrucciones de redes

Seccin 3-23
El siguiente diagrama muestra un ejemplo de control exclusivo:

El bit A permanece en ON mientras se ejecuta la instruccin.

KEEP A

Condicin Indicador de habiliejecucin tacin de puerto de


comunicaciones
Reset B

Indicador
de nodo activo local

Indicador de
nodo activo
de destino

Copia los datos de operandos y de control


en el rea de datos deseada.

Crea datos de
operandos y
de control con
@MOV o con
@XFER.

Ejecuta la instruccin de comunicaciones.

@SEND,
@RECEIVE,
@CMND

Indicador de habilitacin de puerto de comunicaciones

Escribe la entrada de reset (Reset B se


pone en ON una vez completada la instruccin de comunicaciones).

DIFU B

Para mostrar el indicador de error de


transmisin (til para una nueva transmisin de datos).

Indicador de error de
puerto de comunicaciones

Control exclusivo para prevenir una


ejecucin simultnea:

KEEP C

Condicin Indicador de habilitaejecucin cin de puerto de co-

Un control exclusivo evita la ejecucin


de otra instruccin de comunicaciones
hasta que no se haya completado la
anterior.

municaciones

Reset D

Vase arriba.

3-23-2 ENVIAR A RED: SEND(090)


Funcin

Enva datos a un nodo de la red.

Smbolo de diagrama de
rels

SEND(090)
S

S: Primer canal fuente (nodo local)

D:Primer canal de destino (nodo remoto)

C: Primer canal de control

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

SEND(090)

Ejecutado una vez para diferencial ascendente

@SEND(090)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Primer canal de control


Los cinco canales de control, de C a C+4, especifican el nmero de canales que

659

Instrucciones de redes

Seccin 3-23
se estn transmitiendo, su destino y otras selecciones que aparecen en esta
tabla.
Canal

Bits 00 a 07

Bits 08 a 15

Nmero de canales: 0001 hasta mximo permitido1 (hexadecimal de 4


dgitos)

C+1

Direccin de red de destino:


00 a 7F (0 a 127)2

C+2
C+3

C+4

Bits 08 a 11: nmero de puerto


serie3 (puerto fsico)
1 hex.: Puerto 1
2 hex.: Puerto 2
(No seleccionar 0, 3 4)

Bits 12 a 15: siempre 0.


Direccin de unidad de destino: 00 Direccin de nodo de destino:
a FE4
00 hasta mximo permitido5
N de reintentos: 00 a 0F (0 a 15)
Bits 08 a 11:
Nmero de puerto de
comunicaciones (puerto lgico
interno): 0 a 7
Bits 12 a 15: Seleccin de respuesta
0: Solicitada respuesta.
8: No solicitada respuesta.6
Tiempo de supervisin de respuesta: 0001 a FFFF (0,1 a 6553,5 segundos)
(La seleccin por defecto 0000 establece un tiempo de 2 s).

Nota

1. El nmero mximo de canales permitido depende de la red que se utilice.


Para un Controller Link, el rango permitido oscila entre 0001 y 03DE (de 1 a
900 canales).
2. Seleccione la direccin de la red de destino a 00 para la transmisin dentro
de la red local. Cuando se montan dos o ms unidades de unidad de bus de
CPU CS1, la direccin de red se corresponde con el nmero de unidad menor.
3. Los nmeros de puerto 1 y 2 se corresponden con los puertos serie 1 y 2
(puertos fsicos) del dispositivo de destino.
En la transmisin de datos a un ordenador conectado va Host Link es necesario especificar el puerto serie al que est conectado el ordenador. Esto se
utiliza junto con la direccin de la unidad de destino seleccionada en los bits
de 0 a 7 de C+2.
Direccin
de unidad

660

Unidad

00 hex.

CPU

10 hex. +
nmero de
unidad
E1 hex.

Unidad de
comunicaciones serie
(bus de CPU)
Tarjeta de
comunicaciones serie
(tarjeta interna)

Nmero del
Puerto serie
puerto
serie
1 hex.
Puerto RS-232C
incorporado
2 hex.
Puerto de perifricos
1 hex.

Puerto 1

2 hex.

Puerto 2

1 hex.

Puerto 1

2 hex.

Puerto 2

Instrucciones de redes

Seccin 3-23
4. La direccin de unidad indica la unidad, tal y como se muestra en la siguiente tabla.
Unidad

Seleccin de direccin de unidad

CPU

00 hex.

Unidad de bus de CPU


CS1

Nmero de unidad + 10 hex.

Unidad de E/S especial


serie CS1

Nmero de unidad +20 hex.

Tarjeta interna

E1 hex.

Ordenador

01 hex.

Unidad conectada a la
red (no es necesario
especificar la unidad)

FE hex.

5. El nmero mximo de nodos depende de la red que se utilice. Para un Controller Link, el rango permitido oscila entre 00 y 20 hexadecimal (0 a 32). Seleccione el nmero del nodo de destino a FF para transmitir todos los nodos
o a 00 para realizar transmisiones dentro del nodo local.
6. Una vez seleccionado a FF (transmisin abierta), ya no habr respuesta,
incluso si los bits 12 a 15 estn seleccionados a 0.
Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a
CIO 6139

rea de trabajo

W000 a W511

W000 a W507

rea de bits de
retencin

H000 a H511

H000 a H507

rea de bits auxiliares

A000 a A447

A448 a A959

A000 a A443

A448 a A959

A448 a A955

rea de temporizador

T0000 a T4095

T0000 a T4091

rea de contador

C0000 a C4095

C0000 a C4091

rea DM

D00000 a D32767

D00000 a
D32763

rea EM sin banco

E00000 a E32767

E00000 a
E32763

rea EM con banco

En_00000 a En_32767

En_00000 a
En_32763

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

---

Registros de datos

---

661

Instrucciones de redes

Seccin 3-23
rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

--,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SEND(090) transfiere los datos que comienzan en el canal S a las direcciones


que comienzan en D en el dispositivo designado a travs del bus de la CPU del
PLC o por red. En C se especifica el nmero de canales que se van a transmitir.
Nodo local

Nodo de destino

Nmero
de canales a
transmitir, n

Si el nmero del nodo de destino est seleccionado a FF, los datos se transmitirn a todos los nodos de la red designada. Esta accin se denomina transmisin
abierta (broadcast).
Si se solicit una respuesta (bits 12 a 15 de C+3 en 0), pero an no se ha recibido dentro del tiempo de supervisin correspondiente, los datos se volvern a
transmitir hasta 15 veces (reintentos en los bits 0 a 3 de C+3). En las transmisiones abiertas no habr respuestas ni reintentos.
SEND(090) tambin sirve para transmitir datos a un determinado puerto serie
del dispositivo de destino y al dispositivo en s.
Los datos se pueden transmitir a un ordenador conectado al puerto serie del
PLC (si se ha seleccionado el modo Host Link), as como a un PLC o a un ordenador conectado a travs de un Controller Link o una red Ethernet.
Si, al ejecutar SEND(090), el indicador de habilitacin de puerto de comunicaciones est en ON para el puerto especificado en C+3, los indicadores de habilitacin (puertos 00 a 07:A20200 a A20207) y de error (puertos 00 a 07: A21900 a
A21907) correspondientes se pondrn en OFF y 0000 se escribir en el canal
que contiene el cdigo de finalizacin (puertos 00 a 07:A203 a A210). Una vez
seleccionados los indicadores, los datos se transmitirn al nodo de destino.
Transmisin por red

SEND(090) tambin sirve para transmitir datos desde el PLC al rea de datos
especificada en un PLC o en un ordenador conectado a travs de un Controller
Link o una red Ethernet.

Red
Datos

Transmisin por Host


Link

662

Si el puerto serie incorporado a la CPU, la tarjeta de comunicaciones o la unidad


de comunicaciones serie estn en modo Host Link y conectados a un ordenador, se puede ejecutar SEND(090) para transmitir los datos del PLC al ordena-

Instrucciones de redes

Seccin 3-23
dor durante la prxima transmisin del PLC. Tambin es posible transmitir los
datos a otros ordenadores conectados a otros PLC de la red.
Ordenador

Host Link
Datos
Puerto serie

Si se enva SEND(090) a un puerto serie de la CPU, a la tarjeta de comunicaciones serie o a la unidad de comunicaciones serie, desde el puerto serie se enviar un comando al ordenador. Este comando es un mensaje FINS contenido entre la cabecera y terminacin de Host Link. Es un comando MEMORY AREA
WRITE (cdigo 0102); el cdigo de la cabecera de Host Link es 0F hexadecimal.
Para procesar este comando FINS, deber crear un programa en el ordenador.
Si el puerto serie de destino est en el PLC local, seleccione la direccin de red a
00 (red local) en C+1, la direccin de nodo a 00 (PLC local) en C+2 y la direccin
de unidad a 00 (CPU), E1 (tarjeta interna) o nmero de unidad + 10 hexadecimal
(puerto serie).
Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si el nmero de puerto serie especificado en C+1 no


est dentro del rango de 00 a 04.
ON si el indicador de habilitacin de puerto de
comunicaciones est en OFF para el nmero de puerto
especificado en C+3.
OFF en todos los dems casos.

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre

Direccin

Operacin

Indicador de puerto
de comunicaciones
habilitado

A20200 a
A20207

Este tipo de indicadores se ponen en ON para


sealar que las instrucciones de red, incluyendo
PMCR(260), se pueden ejecutar para los
puertos correspondientes (00 a 07).

Indicador de error
de puerto de
comunicaciones

Cdigos de
finalizacin de
puerto de
comunicaciones

A21900 a
A21907

A203 a
A210

Mientras se ejecutan las instrucciones, este


indicador se pone en OFF y, una vez
completada sta, regresa a la posicin ON.
Este tipo de indicadores se ponen en ON para
sealar que se ha producido un error en los
puertos correspondientes (00 a 07) durante la
ejecucin de una instruccin de red.
Mantienen su estado hasta una nueva ejecucin
de instrucciones y se ponen en OFF al ejecutar
la siguiente instruccin, incluso si se ha
producido un error previamente.
Contienen los cdigos de finalizacin
correspondientes a los puertos 00 a 07 y
posteriores a la ejecucin de una instruccin de
red determinada.
Durante la ejecucin de una instruccin, cada
canal incluye 0000 y, una vez completada sta,
se escribir el cdigo de finalizacin
correspondiente. Los canales se borran al iniciar
la ejecucin.

Precauciones

Si el indicador de puerto de comunicaciones habilitado correspondiente al nmero de puerto especificado en C+3 est en OFF, la instruccin ser tratada

663

Instrucciones de redes

Seccin 3-23
como NOP (000) y no se ejecutar. En este caso, el indicador de error se pondr
en ON.
Cuando se especifica una direccin en el banco actual del rea EM para D, los
datos transmitidos se escriben en el banco de EM actual del nodo de destino.
Si los datos se transmiten fuera de la red local, el usuario deber registrar unas
tablas de rutas en los PLC (CPU) conectados a cada una de las redes. Este tipo
de tablas indican las rutas hasta otras redes en las que estn conectadas los
nodos.
Slo se puede ejecutar una instruccin por puerto de comunicaciones y stas
han de ejecutarse de una en una. Para evitar la ejecucin de SEND(090) durante la actividad de un puerto, programe el indicador de habilitacin de puerto de
comunicaciones (A20200 a A20207) correspondiente a dicho puerto como condicin de normalmente abierto.
Las instrucciones de red y PMCR(260) comparten los nmeros de puerto de comunicacin de 00 a 07, impidiendo as la ejecucin simultnea de SEND(090) y
PMCR(260) cuando ambas instrucciones estn utilizando el mismo nmero de
puerto.
El ruido y otros factores similares pueden perjudicar o hacer que se pierda la
transmisin o respuesta; por ello se recomienda seleccionar un valor distinto a
cero para el nmero de reintentos, permitiendo as una nueva ejecucin de
SEND(090) en caso de no haber recibido ninguna respuesta dentro del tiempo
de supervisin correspondiente.
Si la condicin de entrada y A20200 (el indicador de habilitacin de puerto de
comunicaciones para el puerto 0) estn en ON, tal y como se muestra en el siguiente ejemplo, los diez canales de CIO 100 a CIO 109 se transmitirn al ordenador conectado al puerto 1 de la unidad de comunicaciones serie junto con la
direccin de unidad 10 (hex.) correspondiente al nodo nmero 3 de la red 0.

Ejemplo 1

Condicin
de entrada

A20200
@SEND
0100
0000
D00200

C D00200 0 0 0 A Nmero de canales para enviar: 10 canales


C+1 D00201 0 1 0 0 Transmisin a la red 0 y al puerto 1 de la tarjeta de comunicaciones serie
C+2 D00202 0 0 1 0
Nodo nmero 0, direccin de unidad 10
C+3 D00203 0 0 0 0
Respuesta solicitada, puerto nmero 0, sin reintentos
C+4 D00204 0 0 0 0
Tiempo de supervisin de respuesta: 2 segundos (0000: valor por
defecto)

Es necesario crear un programa en el ordenador para recibir datos y enviar una


respuesta.
Ejemplo 2

664

Si CIO 000000 y A20207 (el indicador de habilitacin de puerto de comunicaciones para el puerto 07) estn en ON, tal y como se muestra en el siguiente ejemplo, los diez canales de D00100 a D00109 se transmitirn al nodo nmero 3 de
la red local donde se escribirn en los diez canales de D00200 a D00209. Si en
diez segundos no se ha recibido ninguna respuesta, los datos se volvern a
transmitir un mximo de 3 veces.

Nmero de canales para enviar: 10 canales

Transmisin a la red local y al dispositivo.

Nodo nmero 3, direccin de unidad 00 (CPU)

Respuesta solicitada, puerto nmero 7, 3 reintentos

Tiempo de supervisin de respuesta: 0064 hexadecimal (10


segundos)

Instrucciones de redes

Seccin 3-23

3-23-3 RECIBIR DE RED: RECV(098)


Solicita la transmisin de datos desde un nodo de la red y recibe los datos.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

RECV(098)

Variacio-nes

S: Primer canal fuente (nodo remoto)

D:Primer canal de destino (nodo local)

C: Primer canal de control

Ejecutado cada ciclo para condicin ON

RECV(098)

Ejecutado una vez para diferencial ascendente

@RECV(098)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Primer canal de control


Los cinco canales de control, de C a C+4, especifican el nmero de canales que
se van a recibir, la fuente de la transmisin y otras selecciones que aparecen en
esta tabla.

Operandos

Canal

Bits 00 a 07

Bits 08 a 15

Nmero de canales: 0001 hasta mximo permitido1 (hexadecimal de 4


dgitos)

C+1

Direccin de red fuente:


00 a 7F (0 a 127)2

fuente4

Bits 08 a 11: nmero de puerto


serie (puerto fsico)
1 hex.: Puerto 1
2 hex.: Puerto 2
(No seleccionar 0, 3 4).
Bits 12 a 15: siempre 0.
Direccin de nodo fuente:
00 hasta mximo permitido5

C+2

Direccin de unidad

C+3

N de reintentos: 00 a 0F (0 a 15)

C+4

Tiempo de supervisin de respuesta: 0001 a FFFF (0,1 a 6553,5 segundos)

Nmero de puerto: 00 a 07
Respuesta fijada en obligatoria.

(La seleccin por defecto 0000 establece un tiempo de supervisin de 2 s).

Nota

1. El nmero mximo de canales permitido depende de la red que se utilice.


Para un Controller Link, el rango permitido oscila entre 0001 y 03DE (de 1 a
900 canales).
2. Seleccione la direccin de red fuente a 00 para especificar una fuente dentro de la red local. Cuando se montan dos o ms unidades de unidad de bus
de CPU CS1, la direccin de red se corresponde con el nmero de unidad
menor.
3. Los nmeros de puerto 1 y 2 se corresponden con los puertos serie 1 y 2
(puertos fsicos) del dispositivo de destino.

665

Instrucciones de redes

Seccin 3-23
Direccin
de unidad

Unidad

Nmero del
Puerto serie
puerto
serie
1 hex.
Puerto RS-232C
incorporado
2 hex.
Puerto de perifricos

00 hex.

CPU

10 hex.+
nmero de
unidad
E1 hex.

Unidad de
comunicaciones serie
(bus de CPU)
Tarjeta de
comunicaciones serie
(tarjeta interna)

1 hex.

Puerto 1

2 hex.

Puerto 2

1 hex.

Puerto 1

2 hex.

Puerto 2

4. La direccin de unidad indica la unidad, tal y como se muestra en la siguiente tabla.


Unidad

Seleccin de direccin de unidad

CPU

00 hex.

Unidad de bus de CPU


CS1
Unidad de E/S especial
serie CS1
Tarjeta interna

Nmero de unidad + 10 hex.

Ordenador

01 hex.

Unidad conectada a la
red (no es necesario
especificar la unidad)

FE hex.

Nmero de unidad + 20 hex.


E1 hex.

5. El nmero mximo de nodos depende de la red que se utilice. Para un Controller Link, el rango permitido oscila entre 00 y 20 hexadecimal (0 a 32). Seleccione el nmero de nodo fuente a 00 para la transmisin dentro del nodo
local.
Especificaciones de
operandos

rea

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

CIO 0000 a
CIO 6139
W000 a W507

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

H000 a H507

A000 a A447

A448 a A959

A000 a A443

A448 a A959

A448 a A955

rea de temporizador

T0000 a T4095

T0000 a T4091

rea de contador

C0000 a C4095

C0000 a C4091

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

D00000 a
D32763
E00000 a
E32763
En_00000 a
En_32763

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

666

rea CIO

(n = 0 a C)

Instrucciones de redes

Seccin 3-23
rea
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

RECV(098) solicita el nmero de canales especificados en C, comenzando por


el canal S, que se van a transmitir desde el dispositivo designado al PLC local.
Los datos se reciben a travs del bus de la CPU del PLC o por red, y se escriben
en el rea de datos del PLC, comenzando por D.
Nodo local

Nodo fuente (nodo remoto)

Nmero de canales que se reciben

Dado que la respuesta contiene los datos que se reciben, es necesario incluir
una con RECV(098). Si, transcurrido el tiempo establecido en C+4 para la repuesta, an no se ha recibido ninguna, la transmisin de la solicitud de transferencia de datos se repetir un mximo de 15 veces (reintentos en los bits de 0 a
3 de C+3).
RECV(098) sirve tanto para solicitar una transmisin de datos desde un determinado puerto serie del dispositivo fuente como para solicitarla desde el propio
dispositivo.
Los datos se pueden recibir desde un ordenador conectado al puerto serie del
PLC (si se ha seleccionado el modo Host Link), as como a un PLC o a un ordenador conectado a travs de un Controller Link o una red Ethernet.

Transmisin por red

RECV(098) tambin sirve para recibir los datos transmitidos desde un rea de
datos especificada en un PLC o desde un ordenador conectado a travs de un
Controller Link o de Ethernet y para escribir dichos datos en el rea de datos
especificada en el PLC local.

Red
Datos

Transmisin por Host


Link

Si el puerto serie incorporado a la CPU, la tarjeta de comunicaciones o la unidad


de comunicaciones serie estn en modo Host Link y conectados a un ordenador, se puede ejecutar RECV(098) para recibir los datos del ordenador durante

667

Instrucciones de redes

Seccin 3-23
la prxima transmisin de comandos del PLC. Tambin es posible recibir los datos de otros ordenadores conectados a otros PLC de la red.
Ordenador

Host Link
Datos
Puerto serie

Si se ejecuta RECV(098) para el puerto serie de la CPU, la tarjeta de comunicaciones serie o la unidad de comunicaciones serie, se enviar un comando al ordenador desde el puerto serie. Este comando es un mensaje FINS contenido
entre la cabecera y terminacin de Host Link. Es un comando MEMORY AREA
READ (cdigo 0101); el cdigo de la cabecera de Host Link es 0F hexadecimal.
Para procesar este comando FINS, deber crear un programa en el ordenador.
Si el puerto serie de destino est en el PLC local, seleccione la direccin de red a
00 (red local) en C+1, la direccin de nodo a 00 (PLC local) en C+2 y la direccin
de unidad a 00 (CPU), E1 (tarjeta interna) o nmero de unidad + 10 hexadecimal
(puerto serie).
Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si el nmero de puerto serie especificado en C+1 no


est dentro del rango de 00 a 04.
ON si el indicador de habilitacin de puerto de
comunicaciones est en OFF para el nmero de puerto
especificado en C+3.
OFF en todos los dems casos.

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre
Indicador de
habilitacin de
puerto de
comunicaciones

Indicador de error
de puerto de
comunicaciones

Cdigos de
finalizacin de
puerto de
comunicaciones

Direccin

Operacin

A20200 a
A20207

Este tipo de indicadores se ponen en ON para


sealar que las instrucciones de red, incluyendo
PMCR(260), se pueden ejecutar para los
puertos correspondientes (00 a 07).

A21900 a
A21907

A203 a
A210

Mientras se ejecutan las instrucciones, se pone


en OFF un indicador de este tipo y, una vez
completada sta, regresa a la posicin ON.
Este tipo de indicadores se ponen en ON para
sealar que se ha producido un error en los
puertos correspondientes (00 a 07) durante la
ejecucin de una instruccin de red.
Mantienen su estado hasta una nueva ejecucin
de instrucciones y se ponen en OFF al ejecutar
la siguiente instruccin, incluso si se ha
producido un error previamente.
Contienen los cdigos de finalizacin
correspondientes a los puertos 00 a 07 y
posteriores a la ejecucin de una instruccin de
red determinada.
Durante la ejecucin de una instruccin, cada
canal incluye 0000 y, una vez completada sta,
se escribir el cdigo de finalizacin
correspondiente. Los canales se borran al iniciar
la ejecucin.

Precauciones

668

Slo se puede ejecutar una instruccin por puerto de comunicaciones y stas


han de ejecutarse de una en una. Para evitar la ejecucin de RECV(098) duran-

Instrucciones de redes

Seccin 3-23
te la actividad de un puerto, programe el indicador de habilitacin de puerto de
comunicaciones (A20200 a A20207) correspondiente a dicho puerto como condicin de normalmente abierto.
Las instrucciones de red y PMCR(260) comparten los nmeros de puerto de comunicacin de 00 a 07, impidiendo as la ejecucin simultnea de RECV(098) y
PMCR(260) cuando ambas instrucciones estn utilizando el mismo nmero de
puerto.
El ruido y otros factores similares pueden perjudicar o hacer que se pierda la
transmisin o respuesta; por ello se recomienda seleccionar un valor distinto a
cero para el nmero de reintentos, permitiendo as una nueva ejecucin de
RECV(098) en caso de no haber recibido ninguna respuesta dentro del tiempo
de supervisin correspondiente.

3-23-4 ENVIAR COMANDO: CMND(490)


Funcin

Enva un comando FINS y recibe la respuesta. Consulte el manual CS1 Series


Communications Commands Reference Manual para obtener informacin detallada sobre los comandos FINS.

Smbolo de diagrama de
rels

Variacio-- nes

CMND(490)

Variacio-nes

S: Primer canal de comando

D: Primer canal de respuesta

C: Primer canal de control

Ejecutado cada ciclo para condicin ON

CMND(490)

Ejecutado una vez para diferencial ascendente

@CMND(490)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

C: Primer canal de control


Los seis canales de control, de C a C+5, especifican el nmero de bytes de los
datos de comando y respuesta, el destino y otras selecciones que aparecen en
esta tabla.
Canal

Bits 00 a 07

Bits 08 a 15

Bytes de datos de comando: 0002 hasta mximo permitido1 (hexadecimal


de 4 dgitos)

C+1

Bytes de datos de respuesta: 0000 hasta mximo permitido1,2 (hexadecimal


de 4 dgitos)
Direccin de red de destino:
Bits 08 a 11: nmero de puerto serie
00 a 073
(puerto fsico)
1 hex.: Puerto 1
2 hex.: Puerto 2
(No seleccionar 0, 3 4).

C+2

C+3

Direccin de unidad de destino: 00


a FE5

Bits 12 a 15: siempre 0.


Nmero de nodo de destino:
00 hasta mximo permitido6

669

Instrucciones de redes

Seccin 3-23
Canal
C+4

C+5

Bits 00 a 07
N de reintentos: 00 a 0F (0 a 15)

Bits 08 a 15
Bits 08 a 11:
Nmero de puerto (puerto lgico
interno):
0a7
Bits 12 a 15: Seleccin de respuesta
0: Respuesta solicitada.
8: No hay respuesta
solicitada.7
Tiempo de supervisin de respuesta: 0001 a FFFF (0,1 a 6553,5 segundos)
(La seleccin por defecto 0000 establece un tiempo de supervisin de 2 s).

Nota

1. El nmero mximo de bytes permitido en los datos de comando y de respuesta depende de la red en uso. Para un Controller Link, el mximo es
07C6 (1.990 bytes).
2. Si el nmero real de bytes de los datos de respuesta sobrepasa el especificado en C+1, no se almacenarn los datos de respuesta. Si el nmero real
de bytes de los datos de respuesta es menor que el establecido en C+1, los
datos recibidos se almacenarn y el resto de los canales de respuesta se
mantendrn intactos.
3. Seleccione la direccin de la red de destino a 00 para la transmisin dentro
de la red local. Cuando se montan dos o ms unidades de unidad de bus de
CPU CS1, la direccin de red se corresponde con el nmero de unidad menor.
4. Los nmeros de puerto 1 y 2 corresponden a los puertos serie 1 y 2 (puertos
fsicos) del dispositivo de destino si se enva un comando FINS al ordenador a travs de la red Host Link.
Direccin
de unidad

Unidad

Nmero del
Puerto serie
puerto
serie
1 hex.
Puerto RS-232C
incorporado
2 hex.
Puerto de perifricos

00 hex.

CPU

10 hex. +
nmero de
unidad
E1 hex.

Unidad de
comunicaciones serie
(bus de CPU)
Tarjeta de
comunicaciones serie
(tarjeta interna)

1 hex.

Puerto 1

2 hex.

Puerto 2

1 hex.

Puerto 1

2 hex.

Puerto 2

5. La direccin de unidad indica la unidad, tal y como se muestra en la siguiente tabla.


Unidad

Seleccin de direccin de unidad

CPU

00 hex.

Unidad de bus de CPU


CS1
Unidad de E/S especial
serie CS1

Nmero de unidad + 10 hex.

Tarjeta interna

E1 hex.

Ordenador

01 hex.

Unidad conectada a la
red (no es necesario
especificar la unidad)

FE hex.

Nmero de unidad +20 hex.

6. El nmero mximo de nodos depende de la red que se utilice. Para un Controller Link, el rango permitido oscila entre 00 y 20 hexadecimal (0 a 32). Seleccione el nmero del nodo de destino a FF para transmitir todos los nodos
o a 00 para realizar transmisiones dentro del nodo local.

670

Instrucciones de redes

Seccin 3-23
7. Una vez seleccionado a FF (transmisin abierta), ya no habr respuesta,
incluso si los bits 12 a 15 estn seleccionados a 0.

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

CIO 0000 a
CIO 6138

rea de trabajo

W000 a W511

W000 a W506

rea de bits de
retencin

H000 a H511

H000 a H506

rea de bits auxiliares

A000 a A447

A448 a A959

A000 a A442

A448 a A959

A448 a A954

rea de temporizador

T0000 a T4095

T0000 a T4090

rea de contador

C0000 a C4095

C0000 a C4090

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

D00000 a
D32762
E00000 a
E32762
En_00000 a
En_32763

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
*D00000 a *D32767
*E00000 a *E32767

Constantes

*En_00000 a *En_32767
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

CMND(490) transfiere el nmero especificado de bytes de datos del comando


FINS, comenzando por el canal S, al dispositivo designado a travs del bus de la

671

Instrucciones de redes

Seccin 3-23
CPU del PLC o por red. La respuesta se almacena en la memoria, comenzando
por el canal D.
Nodo local

Nodo de destino

Comando

Interpretar

Datos del
comando (n
bytes)

Respuesta
Datos de
respuesta
(m bytes)

Ejecutar

CMND(490) tambin sirve para transmitir datos de comando a un determinado


puerto serie del dispositivo de destino o al dispositivo en s. Si el cdigo del comando FINS es 0102 (MEMORY AREA WRITE), CMND(490) funciona del mismo modo que SEND(090) y, si el cdigo es 0101 (MEMORY AREA READ), funciona como RECV(098).
Si la CPU ejecuta el comando CMND(490), se puede enviar un comando FINS a
s misma (slo -EV1). Para ello, utilice las siguientes selecciones de los datos de
control:
Direccin de red de destino (bits 00 a 07 de C+2): 00 hex. (red local)
Nmero de puerto serie (bits 08 a 11 de C+2): 0 hex. (no utilizado)
Direccin de unidad de destino (bits 00 a 07 de C+3): 00 hex. (CPU)
Direccin de nodo de destino (bits 08 a 15 de C+3): 00 hex. (nodo local)
Nmero de reintentos (bits 00 a 03 de C+4): 0 hex. (seleccin no vlida, seleccionar 0)
Tiempo de supervisin de respuesta: (bits 00 a 15 de C+5): 0000 a FFFF hex.
(pero 0000 especificar 6553,5 s en vez de 2, como es habitual)
Si el nmero del nodo de destino est seleccionado a FF, los datos de comando
se transmitirn a todos los nodos de la red designada. Esta accin se denomina
transmisin abierta.
Si se solicit una respuesta (bits 12 a 15 de C+4 en 0), pero an no se ha recibido dentro del tiempo de supervisin correspondiente, los datos de comando se
volvern a transmitir un mximo de 15 veces (reintentos en los bits 0 a 3 de
C+3). En las transmisiones abiertas no habr respuestas ni reintentos. Para las
instrucciones que no requieran ninguna respuesta, seleccione opcional.
Si la cantidad de datos de la respuesta sobrepasa el nmero de bytes seleccionados en C+1 para dichos datos, se producir un error.
Los datos del comando FINS se pueden transmitir a un ordenador conectado a
un puerto serie del PLC (si se ha seleccionado el modo Host Link), as como a un
PLC (CPU, bus de la CPU o tarjeta interna) o a un ordenador conectado a travs
de un Controller Link o de una red Ethernet.
Si, al ejecutar CMND(490), el indicador de habilitacin de puerto de comunicaciones est en ON para el puerto especificado en C+3, los indicadores de habilitacin (puertos 00 a 07:A20200 a A20207) y de error (puertos 00 a 07: A21900 a
A21907) correspondientes se pondrn en OFF y 0000 se escribir en el canal
que contiene el cdigo de finalizacin (puertos 00 a 07:A203 a A210). Una vez
seleccionados los indicadores, los datos del comando se transmitirn al nodo o
nodos de destino.

672

Instrucciones de redes

Transmisin por red

Seccin 3-23

CMND(490) tambin sirve para transmitir cualquier comando FINS a un ordenador personal o a un PLC (CPU, unidad de bus de CPU CS1 o tarjeta interna)
que est conectado a travs de una red Controller Link o Ethernet.

Red
Comando FINS

Transmisin por Host


Link

Si el puerto serie incorporado a la CPU, la tarjeta de comunicaciones o la unidad


de comunicaciones serie estn en modo Host Link y conectados a un ordenador, se puede ejecutar CMND(490) para transmitir cualquier dato del comando
FINS desde el PLC al ordenador durante la prxima transmisin del PLC. Tambin es posible transmitir los datos a otros ordenadores conectados a otros PLC
de la red.

Ordenador

Host Link
Comando FINS

CMND(490) se puede ejecutar para cualquier puerto de la CPU, para la tarjeta


de comunicaciones o para la unidad de comunicaciones serie con el fin de enviar un comando al ordenador conectado (especifique el puerto serie 1 hex. o 2
hex. en bits de 08 a 11 de C+2). Este comando es un mensaje FINS contenido
entre la cabecera y terminacin de Host Link. Se puede enviar cualquier comando FINS; para ello, el cdigo de la cabecera de Host Link debe ser 0F hexadecimal.
Para procesar este comando FINS recibido, deber crear un programa en el ordenador.
Si el puerto serie de destino est en el PLC local, seleccione la direccin de red a
00 (red local) en C+2, la direccin de nodo a 00 (PLC local) en C+3 y la direccin
de unidad a 00 (CPU), E1 (tarjeta interna) o nmero de unidad + 10 hexadecimal
(puerto serie).
Envo de un comando
FINS a la CPU mediante
la ejecucin de
CMND(490) (slo -EV1)

Si la CPU ejecuta el comando CMND(490), se puede enviar un comando FINS a


s misma (slo -EV1). Por ejemplo, los comandos de la memoria de archivos
(cdigos 22jj hex.) se pueden enviar a dicha memoria para formatearla, borrar y copiar archivos, etc. Para obtener informacin detallada al respecto, consulte la Seccin 12, Funciones de la memoria de archivos del Manual de operacin de la CPU de la serie CS1.
El indicador de operacin de memoria de archivos (A34313) se pone en ON
cuando se enva un comando FINS a la CPU local (incluso los comandos que no
estn relacionados con la memoria de archivos). Utilice siempre A34313 en una

673

Instrucciones de redes

Seccin 3-23
condicin de entrada NC para CMND(490) con el fin de asegurar que los comandos FINS que se enven a la CPU se ejecuten de uno en uno.

Comando FINS
PLC
Tarjeta de memoria

Memoria de archivos de EM

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si el nmero de puerto serie especificado en C+2 no


est dentro del rango de 00 a 04.
ON si el indicador de habilitacin de puerto de
comunicaciones est en OFF para el nmero de puerto
especificado en C+4.
ON si se enva un comando FINS a la CPU local
mientras el indicador de operacin de memoria de
archivos (A34313) est en ON.
OFF en todos los dems casos.

La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar.
Nombre

Direccin

Operacin

Indicador de puerto
de comunicaciones
habilitado

A20200 a
A20207

Este tipo de indicadores se ponen en ON para


sealar que las instrucciones de red, incluyendo
PMCR(260), se pueden ejecutar para los
puertos correspondientes (00 a 07).

Indicador de error
de puerto de
comunicaciones

A21900 a
A21907

Mientras se ejecutan las instrucciones, este


indicador se pone en OFF y, una vez
completada sta, regresa a la posicin ON.
Este tipo de indicadores se ponen en ON para
sealar que se ha producido un error en los
puertos correspondientes (00 a 07) durante la
ejecucin de una instruccin de red.
Mantienen su estado hasta una nueva ejecucin
de instrucciones y se ponen en OFF al ejecutar
la siguiente instruccin, incluso si se ha
producido un error previamente.

674

Instrucciones de redes

Seccin 3-23
Nombre
Cdigos de
finalizacin de
puerto de
comunicaciones

Direccin
Operacin
A203 a
Contienen los cdigos de finalizacin
A210
correspondientes a los puertos 00 a 07 y
posteriores a la ejecucin de una instruccin de
red determinada.
Durante la ejecucin de una instruccin, cada
canal incluye 0000 y, una vez completada sta,
se escribir el cdigo de finalizacin
correspondiente. Los canales se borran al iniciar
la ejecucin.

Indicador de
operacin de
memoria de
archivos

A34313

ON cuando se enva un comando FINS a la


CPU local (incluidos los comandos FINS no
relacionados con la memoria de archivos) o
cuando se realiza cualquiera de las siguientes
instrucciones u operaciones en la memoria de
archivos:
FREAD(700) o FWRIT(701)
Sobrescritura del programa con bit de control en
memoria
Copia de seguridad sencilla

Precauciones

Si el indicador de habilitacin de puerto de comunicaciones correspondiente al


nmero de puerto especificado en C+4 est en OFF, la instruccin ser tratada
como NOP (000) y no se ejecutar. En este caso, el indicador de error se pondr
en ON.
Si los datos se transmiten fuera de la red local, el usuario deber registrar unas
tablas de rutas en los PLC (CPU) conectados a cada una de las redes. Este tipo
de tablas indican las rutas hasta otras redes en las que estn conectadas los
nodos.
Slo se puede ejecutar una instruccin por puerto de comunicaciones y stas
han de ejecutarse de una en una. Para evitar la ejecucin de CMND(490) durante la actividad de un puerto, programe el indicador de habilitacin de puerto de
comunicaciones (A20200 a A20207) correspondiente a dicho puerto como condicin de normalmente abierto.
Las instrucciones de red y PMCR(260) comparten los nmeros de puerto de comunicacin de 00 a 07, impidiendo as la ejecucin simultnea de CMND(490) y
PMCR(260) cuando ambas instrucciones estn utilizando el mismo nmero de
puerto.
Utilice siempre uno de los indicadores de habilitacin de puerto de comunicaciones (A20200 a A20207) en una condicin de entrada NA junto con el indicador de operacin de memoria de archivos (A34313) en una condicin de NC para CMND(490) en el momento de enviar un comando FINS a la CPU local.
El ruido y otros factores similares pueden perjudicar o hacer que se pierda la
transmisin o respuesta; por ello, se recomienda seleccionar un valor distinto a
cero para el nmero de reintentos, permitiendo as una nueva ejecucin de
CMND(490) en caso de no haber recibido ninguna respuesta dentro del tiempo
de supervisin correspondiente.

Ejemplos

La siguiente seccin del programa constituye un ejemplo de cmo enviar un comando FINS a otra CPU.
Cuando CIO 000000 y A20207 (el indicador de habilitacin de puerto de comunicaciones para el puerto 07) est en ON, CMND(490) transmite el comando
FINS 01011 (MEMORY AREA READ) al nodo nmero 3. La respuesta se almacena en D00200 a D00211.
El comando MEMORY AREA READ lee 10 canales, de D00010 a D00019. La
respuesta contiene el cdigo 0101 de 2 bytes, el cdigo de finalizacin de 2
bytes y los 10 canales de datos para un total de 12 canales o 24 bytes.

675

Instrucciones de redes

Seccin 3-23
Si en diez segundos no se ha recibido ninguna respuesta, los datos se volvern
a transmitir un mximo de 3 veces.

0
0
0
0

Cdigo de comando: 0101 hexadecimal (MEMORY AREA


READ)
D00010 (rea de datos = 82 hexadecimal, direccin =
000A00)
Nmero de canales que hay que leer = 0A hexadecimal (10
decimal)

Bytes de datos de comando: 0008 (8 decimal)

Bytes de datos de respuesta: 0018 (24)

Transmisin a la red local y al dispositivo

Nodo nmero 3, direccin de unidad 00 (CPU)

Respuesta solicitada, puerto nmero 7, 3 reintentos

Tiempo de supervisin de respuesta: 0064 hexadecimal (10


segundos)

La siguiente seccin del programa constituye un ejemplo de cmo enviar un comando FINS a la CPU local.
Cuando CIO 000000 y A20207 (indicador de habilitacin de puerto de comunicaciones para el puerto 07) estn en ON y A34313 (indicador de operacin de
memoria de archivos) est en OFF, CMND(490) transmite el comando FINS
2215 (CREATE/DELETE DIRECTORY) a la CPU local. La respuesta se almacena en D00100 a D00101. Aqu, el comando FINS crear un directorio denomi-

676

Instrucciones de memoria de archivos

Seccin 3-24

nado CS1 bajo el directorio OMRON. El cdigo del comando (2 bytes) y el de fin
(2 bytes) se devolvern y almacenarn como respuesta.

000000

A20207

A34313
@CMND

S:

Indicador de
puerto de comunicaciones habilitado para el
puerto 7
15 8
D00006 2 2

Indicador de
operacin de
memoria de
archivos
7 0
1 5

D00006

D00100

D00000

Cdigo de comando: 2215 hex. (CREATE/DELETE DIREC-

S+1:

D00007

8 0 0 0

TORY)

S+2:

D00008

0 0 0 0

N de disco: 8000 hex. (tarjeta de memoria)

S+3:

D00009

4 3 5 3

Parmetro: 0000 hex. (crear directorio)

S+4:

D00010

3 1 2 0

S+5:

D00011

2 0 2 0

S+6:

D00012

2 0 2 0

S+7:

D00013

2 E 2 0

S+8:

D00014

2 0 2 0

S+9:

D00015

0 0 0 6

S+10:

D00016

5 C 4 F

S+11:

D00017

4 D 5 2

S+12:

D00018

4 F 4 E

S:

D00000

15 8 7 0
0 0 1 A

S+1:

D00001

0 0 0 4

Bytes de datos de respuesta: 0004 (4)

S+2:

D00002

0 0 0 0

Direccin de red de destino: 00 hex. (red local)

S+3:

D00003

0 0 0 0

S+4:

D00004

0 7 0 0

Direccin de unidad de destino: 00 hex. Nmero de nodo de destino: 00 hex. (CPU en nodo
local)

S+5:

D00005

0 0 0 0

Nombre de subdirectorio: CS1jjjjj. jjj (j= espacio)

Longitud del nombre de directorio: 0006 (6 caracteres)


Ruta absoluta del directorio: \OMRON

Bytes de datos de comando: 001A (26 decimal)

Respuesta solicitada, puerto nmero 7, 0 reintentos


Tiempo de supervisin de respuesta: 0000 hex. (6553,5 segundos)

3-24 Instrucciones de memoria de archivos


En esta seccin se describen las instrucciones utilizadas con la memoria de archivos (rea EM o tarjetas de memoria).
Nota La memoria de archivos tambin se puede manipular mediante la ejecucin de
CMND(490) si desea enviar un comando FINS a la CPU local. Para obtener informacin ms detallada, consulte el Manual de operacin de autmatas programables de la serie CS1.
Instruccin

Mnemnico

Cdigo de
funcin

Pgina

READ DATA FILE

FREAD

700

678

WRITE DATA FILE

FWRIT

701

685

677

Instrucciones de memoria de archivos

Seccin 3-24

3-24-1 LECTURA DE ARCHIVO DE DATOS: FREAD(700)


Funcin

Lee los datos especificados o una cantidad de datos desde el archivo de datos
especificado en la memoria de archivos al rea de datos especificada en la
CPU.

Smbolo de diagrama de
rels

FREAD(700)
C

C: Canal de control

S1

S1: Nmero de canales y primer


canal fuente
S2: Nombre de archivo

S2

D: Primer canal de destino

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

FREAD(700)

Ejecutado una vez para diferencial ascendente

@FREAD(700)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C: Canal de control
Tal y como se muestra en el siguiente diagrama, el primer dgito indica si el archivo fuente est en la tarjeta de memoria o en la memoria de archivos de EM, el
segundo, si hay que leer los datos reales o el nmero de canales de datos, el
tercero indica la presencia de retornos de carro y el cuarto, el tipo de datos.
C

15

12 11

8 7

4 3

Especificador de memoria de archivos


0: Tarjeta de memoria
1: Memoria de archivos de EM
Especificador de funciones
0: Leer datos
1: Leer nmero de canales
Retornos de carro (slo -EV1)
0: Sin retornos
8: Retorno cada 10 campos
9: Retorno cada campo
A: Retorno cada 2 campos
B: Retorno cada 4 campos
C: Retorno cada 5 campos
D: Retorno cada 16 campos

Tipo de datos (slo -EV1)


0: Binario (extensin: .IOM, canales/campo: NA)
1: Canales sin delimitar (extensin: .TXT, canales/campo: 1)
2: Dos canales sin delimitar (extensin: .TXT, canales/campo: 2)
3: Canales delimitados por coma (extensin: .CSV, canales/campo: 1)
4: Dos canales delimitados por coma (extensin: .CSV, canales/campo: 2)
5: Canales delimitados por tabuladores (extensin: .TXT, canales/campo: 1)
6: Dos canales delimitados por tabuladores (extensin: .,TXT canales/campo: 2)

678

Instrucciones de memoria de archivos


Nota

Seccin 3-24

1. Cada campo contendr 1 canal de la memoria de E/S para los tipos de datos
de canales y 2 canales de memoria de E/S para los tipos de datos de dos
canales.
2. Cuando se leen los datos con retornos de carros, los bits de 00 a 11 de C se
deben seleccionar entre 8 y D hex.
3. Con dos canales, el primer canal de datos se almacena en la direccin de
memoria mayor; p. ej. 12345678 se almacenar con 1234 en D00001 y con
5678 en D00000.
S1 y S1+1: Nmero de elementos que se van a leer
El valor hexadecimal de 8 dgitos en S1 y S1+1 especifica el nmero de canales
o de campos que se van a leer de la memoria de archivos. Si este nmero es
superior al de los canales del archivo de datos, los datos del archivo se transferirn de forma normal y no se producir ningn error.
S1+1

S1
S1+1 contiene los 4 dgitos de la izquierda y S1, los 4 de la derecha.

Tipo de
datos
Binario

Bits 12 a 15 de C
0 hex. (binario)

Contenido de S1 y S1+1
Nmero de canales para leer desde
la memoria de archivos.
00000000 a 3FFFFFFF hex.

Canal

1 hex. (sin delimitar),


3 hex. (delimitados por
comas) o 5 hex.
(delimitados por
tabuladores)

Dos canales

2 hex. (sin delimitar),


4 hex. (delimitados por
comas) o 6 hex.
(delimitados por
tabuladores)

Nmero de campos para leer desde


memoria de archivos (nmero de
canales para leer desde memoria de
archivos).
00000000 a 1FFFFFFF hex.
Nmero de campos para leer desde
memoria de archivos (mitad de
nmero de canales para leer desde
memoria de archivos).
00000000 a 0FFFFFFF hex.

S1+2 y S1+3: Primer canal fuente


El valor hexadecimal de 8 dgitos en S1+2 y S1+3 especifica el canal por donde
se empieza a leer desde el principio del archivo.
S1+3

S1+2
S1+3 contiene los 4 dgitos de la izquierda y S1+2, los 4 de la derecha.

Tipo de
datos

Nota

Bits 12 a 15 de C

Binario

0 hex. (binario)

Canal

1 hex. (sin delimitar),


3 hex. (delimitados por
comas) o 5 hex.
(delimitados por
tabuladores)

Dos canales

2 hex. (sin delimitar),


4 hex. (delimitados por
comas) o 6 hex.
(delimitados por
tabuladores)

Contenido de S1+2 y S1+3


Canal por donde se empieza a leer
desde el principio de la memoria de
archivos.
00000000 a 3FFFFFFF hex.
Campo por donde se empieza a leer
desde el principio de la memoria de
archivos (nmero de canales desde
el principio).
00000000 a 1FFFFFFF hex.
Campo por donde se empieza a leer
desde el principio de la memoria de
archivos (mitad de nmero de
canales desde el principio).
00000000 a 0FFFFFFF hex.

1. S1+2 y S1+3 slo se utilizan para los datos de texto y CVS sin retornos de
carro (bits 08 a 11 de C seleccionados a 0 hex.) o para los datos binarios.

679

Instrucciones de memoria de archivos

Seccin 3-24

Siempre que utilice retornos de carro para leer datos (bits 08 a 11 de C seleccionados entre 8 y D hex.), seleccione S1+2 y S1+3 a 00000000 hex.
2. S a S1+3 deben estar en la misma rea de datos.
3. S1 a S1+3 slo se utilizan en la lectura de datos.
4. Si el canal de inicio especificado sobrepasa el nmero de canales del archivo de datos, el indicador de error de lectura de archivo (A34310) se pondr
en ON y los datos del archivo no se leern.
S2: Nombre de archivo
S2 es la direccin de inicio de los canales que contienen la ruta absoluta y el
nombre de archivo en ASCII. Utilice los caracteres ASCII de la a a la z, de la A
a la Z y de 0 a 9.
El lmite de caracteres del nombre completo de la ruta al directorio que contiene
el archivo de datos es 65, incluido el guin inicial (ASCII 5C). El nombre de archivo puede tener un mximo de 8 caracteres, pero no puede incluir caracteres nulos (ASCII 00) ya que se trata de un carcter utilizado para marcar el final de una
cadena de caracteres. No incluya la extensin del nombre de archivo; la extensin .IOM se aadir automticamente.

S2

F1

F2

S2+1

F3

F4

F73

F74

S2+38

Nota

Almacene la cadena de caracteres


empezando por el byte de la izquierda
en S2.
Los nombres completos de ruta y archivo pueden tener un mximo de 74
caracteres (bytes), incluyendo el guin
inicial y el carcter nulo final.

1. Asegrese de que la cadena de caracteres que contiene los nombres de


ruta y archivo no sobrepasen el final del rea de datos.
2. Si el archivo o directorio especificados no existen, el indicador de archivo no
encontrado (A34311) se pondr en ON y no se leern los datos del archivo.
Escriba los nombres de ruta y archivo en ASCII, comenzando por el byte de S2
de la izquierda, como se muestra en el ejemplo de \ABC\XYZ.IOM (la extensin
.IOM se aade automticamente).

S2
S2+1
S2+2
S2+3
S2+4

\
B
\
Y
NUL

A
C
X
Z

S2
S2+1
S2+2
S2+3
S2+4

5C
42
5C
59
00

41
43
58
5A

D: Primer canal de destino


Durante la lectura de datos, D especifica la direccin de inicio donde se almacenarn los datos ledos de la memoria de archivos.
Durante la lectura del nmero de canales de datos, el nmero de canales se
escribe en D y D+1 con un valor hexadecimal de 8 dgitos (00000000 a
7FFFFFF). D contiene los 4 dgitos de la derecha y D+1, los 4 de la izquierda.
Descripcin

680

Lectura de datos (tercer dgito de C = 0)


FREAD(700) lee el nmero de canales o campos especificados en S1 y A1+1
desde el archivo especificado en S2 (con la extensin .IOM, .TXT o .CSV), co-

Instrucciones de memoria de archivos

Seccin 3-24

menzando por la direccin especificada en S1+2 y S1+3. Posteriormente, se


escriben los datos en la RAM, comenzando por el canal especificado en D.
Direccin de lectura de inicio
especificada en S1+2 y S1+3

Archivo especificado en S2

CPU

Nmero de canales especificados en S1 y S1+1

Tarjeta de memoria o memoria de archivos de EM


(Especificada por el 1er dgito de C).

Nota Los datos se almacenan ordenados por direcciones absolutas de la memoria


interna, de modo que los datos de salida sobrescribirn los del rea siguiente si
se supera la capacidad del rea de datos especificada en D. Para obtener informacin detallada, consulte la seccin Precauciones.
Al ejecutar FREAD(700), el nmero de canales, o campos, especificados en S1
y S+1 se escribe en A346 y A347 (nmero de datos que se van a transmitir); este
valor se reducir en 1 a medida que se transfieren los canales o campos. Se
puede comprobar el contenido de estos canales para verificar que se ha transmitido el nmero de canales o campos esperado.
Lectura del nmero de canales de datos (tercer dgito de C = 1)
FREAD(700) busca el nmero de canales del archivo especificado en S2 (con la
extensin .IOM) y escribe el valor hexadecimal de 8 dgitos en D y D+1.
Archivo especificado en S2

CPU
Nmero de canales
escritos en D y D+1.

Nmero de
canales

Tarjeta de memoria o memoria de archivos de EM


(Especificada por el 1er dgito de C).

Especificaciones de
operandos

rea
rea CIO
rea de trabajo
rea de bits de
retencin
rea de bits
auxiliares

S1

S2

CIO 0000 a
CIO 0000 a
CIO6143
CIO 6140
W000 a W511 W000 a
W508
H000 a H511 H000 a 508

CIO 0000 a CIO 6143

A000 a A959

A000 a A444

A000 a A447

A448 a A956

A448 a A959

W000 a W511
H000 a W511
A448 a A959

rea de
temporizador

T0000 a
T4095

T0000 a
T4092

T0000 a T4095

rea de contador

C0000 a
C4095

C0000 a
C4092

C0000 a C4095

rea DM

D00000 a
D32767

D00000 a
D32764

D00000 a D32767

rea EM sin banco

E00000 a
E32767

E00000 a
E32764

E00000 a E32767

rea EM con
banco

En_00000 a
En_32767

En_00000 a
En_32764

En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

(n = 0 a C)

681

Instrucciones de memoria de archivos

Seccin 3-24

rea
Direcciones de
DM/EM indirectas
en binario

C
--

S1
S2
@ D00000 a @ D32767

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de
DM/EM indirectas
en BCD

--

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

Registros de datos

Valores
especificados
exclusivamen
te
--

Registros de ndice

--

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si la memoria de archivos especificada en C no


existe.
ON si las selecciones de C no estn dentro el rango
especificado.
ON si el nombre de archivo especificado en S2 no
cumple las condiciones requeridas.
ON si el indicador de operacin de memoria de archivos
estaba en ON.
ON si no se especific ninguna constante para C (no se
aplica a V1).
ON si los datos especificados para S1 estn fuera de
rango (slo -EV1).
ON si se especific un rea no vlida para D.
OFF en todos los dems casos.

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre

682

Direccin

Operacin

Tipo de tarjeta de
memoria

A34300 a
A34302

Contiene un nmero binario que indica el tipo


de tarjeta de memoria, si existe, instalada.
(0: Ninguna, 4: Flash ROM)

Indicador de error de
formato de tarjeta de
memoria

A34307

ON si la tarjeta de memoria no est


formateada o se produjo un error en el
formateo.

Indicador de error de
lectura de archivo

A34310

ON si no se pudo leer un archivo porque los


datos estaban daados o contiene un tipo de
datos incorrecto.

Indicador de archivo
no encontrado

A34311

ON si no se leyeron los datos porque que el


archivo especificado no existe.

Instrucciones de memoria de archivos


Nombre
Indicador de operacin
de memoria de
archivos

Seccin 3-24
Direccin
A34313

Operacin
ON para cualquiera de lo siguiente:
CPU se envi un comando FINS a s misma
con CMND(490).
Ejecucin de FREAD(700) o FWRIT(701) en
curso
Se est sobrescribiendo el programa con un
bit de control en memoria.

Indicador de acceso a
archivo

A34314

Indicador de deteccin
de tarjeta de memoria

A34315

Banco inicial de
formato de archivo EM

A344

Copia de seguridad en curso


ON si se est accediendo a datos de archivo.
Utilice este indicador como una condicin de
ejecucin para evitar que una instruccin de
memoria de archivos se ejecute al mismo
tiempo que otra.
ON si se ha detectado una tarjeta de
memoria.
Contiene el nmero de banco inicial del rea
EM formateada para utilizar como memoria
de archivos de EM. Contiene FFFF si el rea
EM no se ha formateado.
Para utilizar el rea EM como memoria de
archivos, se debe seleccionar a 1 la memoria
de archivos de EM en la configuracin del
PLC y seleccionar el banco inicial de dicha
memoria (0 a C). Todos los bancos de EM,
del primero al ltimo, se formatearn para
utilizarlos como memoria de archivos.

Indicador de error de
A34306
formato de memoria de
archivos de EM
Nmero de datos para A346 a
transferir
A347

ON si existe un error de formato en el banco


inicial de la memoria de archivos de EM.
El contenido de estos canales indica el
estado de la transferencia de archivos.
Al ejecutar las instrucciones FREAD(700) o
FWRIT(701), el nmero de canales o campos
que se van a transferir se escribe en dichos
canales. Este valor se reduce en 1 cada vez
que se transfiere un canal o campo.
Del valor binario de 32 bits, A346 contiene
los 16 bits de la derecha y A347 los 16 de la
izquierda.

Precauciones

En el procesamiento normal de instrucciones, FREAD(700) slo se utiliza para


iniciar la lectura de la memoria de archivos. Los tiempos de ejecucin de las instrucciones especificados al final de este manual son los tiempos necesarios para iniciar la lectura, no para completarla. La lectura real (transferencia) se realiza mediante el procesamiento de acceso a archivos en servicios de perifricos.
De este modo, una vez ejecutado FREAD(700), la lectura se ejecuta continuamente, incluso si la condicin de ejecucin est en OFF durante los siguientes
ciclos. Una vez completada la transferencia, el indicador de operacin de memoria de archivos (A34313) se pondr en OFF. Este indicador se puede utilizar
para obtener un control exclusivo de las instrucciones de la memoria de archivos.
El tiempo necesario para completar la transferencia de datos para FREAD(700)
depende de la cantidad de datos que se estn transmitiendo y del tiempo de
servicio asignado al acceso a archivos, entre otras condiciones. Como regla general, el tiempo de transferencia correspondiente a un ciclo de 10 ms para un

683

Instrucciones de memoria de archivos

Seccin 3-24

archivo del directorio raz con las selecciones del tiempo de servicio por defecto,
ser 0,92 s para 1.024 canales y 4,64 para 9.999 canales.
El indicador de operacin de memoria de archivos (A34313) se pondr en ON al
ejecutar FREAD(700). Se producir un error y la instruccin no se ejecutar si
A34313 ya est en ON.
El indicador de error de lectura de archivo (A34310) se pondr en ON, pero la
instruccin no se ejecutar si el archivo especificado contiene un tipo de datos
incorrecto o si stos estn daados. El cdigo de caracteres correspondiente a
los archivos CSV o de texto debe ser un valor hexadecimal con delimitadores
cada 4 dgitos en caso de datos de canal y de 8, en caso de datos de dos canales. Los datos se leern hasta que se detecte un carcter no vlido.
La CPU necesita unos pocos segundos para detectar una tarjeta de memoria
una vez insertada sta. Si el acceso a una tarjeta de memoria se va a realizar al
poco tiempo de encender el equipo o de insertar la tarjeta de memoria, utilice el
indicador de deteccin de tarjeta de memoria (A34315) en una condicin de entrada NA, tal y como se muestra a continuacin, para asegurar que se ha detectado la tarjeta de memoria.
Condicin
ejecucin

A34315

A34313
FREAD

Indicador de deteccin de tarjeta de memoria

Ejemplos

Indicador de
operacin de
memoria de archivos

S1
S2
D

Cuando CIO 000000 se pone en ON, tal y como se muestra en el siguiente


ejemplo, FREAD(700) lee 10 canales de datos desde el archivo \ABC\XYZ.IOM,
comenzando por el principio + 5 canales y enva los 10 a D00400 hasta D00409.

Memoria de archivos: Tarjeta de memoria


Funcin: Leer datos
Nmero de canales para leer: 10 canales
Canal de inicio: Principio del archivo+5
canales
Nombre de directorio: \ABC
Nombre de archivo: XYZ

Ignorado

Archivo \ABC\XYZ.IOM
Wd 0
+5 canalesWd 5
Wd 14

684

+10 canales

CPU

Instrucciones de memoria de archivos

Seccin 3-24

3-24-2 ESCRITURA DE ARCHIVO DE DATOS: FWRIT(701)


Sobrescribe o anexiona datos en el archivo de datos especificado de la memoria de archivos, con los datos especificados del rea de datos de la CPU. Si el
archivo especificado no existe, se crear un nuevo archivo con ese nombre. Los
datos se pueden escribir como binarios, de texto o en formato CSV.

Funcin

Smbolo de diagrama de
rels

Variacio-- nes

FWRIT(701)

Variacio-nes

C: Canal de control

D1

D1:Primer canal de destino

D2

D2: Nombre de archivo

S: Primer canal fuente

Ejecutado cada ciclo para condicin ON

FWRIT(701)

Ejecutado una vez para diferencial ascendente

@FWRIT(701)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C: Canal de control
Tal y como se muestra en el siguiente diagrama, el tercer dgito del canal de control indica si se debe anexionar o sobrescribir los datos del archivo de datos,
mientras que el cuarto dgito indica si el archivo de destino est en la tarjeta de
memoria o en la memoria de archivos de EM.

Operandos

15

12 11

8 7

4 3

C
Especificador de memoria de archivos
0: Tarjeta de memoria
1: Memoria de archivos de EM
Especificador de funciones
0: Apndice
1: Sobrescribir
Retornos de carro (slo -EV1)
0: Sin retornos
8: Retorno cada 10 campos
9: Retorno cada campo
A: Retorno cada 2 campos
B: Retorno cada 4 campos
C: Retorno cada 5 campos
D: Retorno cada 16 campos
Tipo de datos (slo -EV1)
0: Binario (extensin: .IOM, canales/campo: NA)
1: Canales sin delimitar (extensin: .TXT, canales/campo: 1)
2: Dos canales sin delimitar (extensin: .TXT, canales/campo: 2)
3: Canales delimitados por coma (extensin: .CSV, canales/campo: 1)
4: Dos canales delimitados por coma (extensin: .CSV, canales/campo: 2)
5: Canales delimitados por tabuladores (extensin: .TXT, canales/campo: 1)
6: Dos canales delimitados por tabuladores (extensin: .,TXT canales/campo: 2)

Nota

1. Cada campo contendr 1 canal de la memoria de E/S para los tipos de datos
de canales y 2 canales de memoria de E/S para los tipos de datos de dos
canales.

685

Instrucciones de memoria de archivos

Seccin 3-24

2. Con dos canales, el primer canal de datos se lee en la direccin de memoria


mayor; p. ej. 12345678 se escribir con 1234 en D00001 y con 5678 en
D00000.
3. Si se especifica el delimitador, ste se aadir despus de cada canal para
los tipos de datos de canales y despus de cada dos en el caso de los tipos
de datos de dos canales (para delimitador de comas, se aade un cdigo
de coma y uno de tabulador para los tabuladores).
4. Si se especifican canales no delimitados o dos canales, los datos de todos
los campos se escriben continuamente sin delimitadores.
5. Si se especifican retornos de carro, se aadir uno despus de cada grupo
del nmero de canales especificado. Si no se especifica ningn retorno de
carro, los datos se escribirn continuamente sin stos.
D1 y D1+1: Nmero de elementos que se van a escribir
El valor hexadecimal de 8 dgitos en D1 y D1+1 especifica el nmero de canales
o de campos que se van a escribir en la memoria de archivos.
D1+1

D1
D1+1 contiene los 4 dgitos de la izquierda y D1, los 4 de la derecha.

Tipo de
datos
Binario

Bits 12 a 15 de C

Contenido de D1 y D1+1

0 hex. (binario)

Nmero de canales para escribir


desde la memoria de archivos.
00000000 a 3FFFFFFF hex.

Canal

1 hex. (sin delimitar),


3 hex. (delimitados por
comas) o 5 hex.
(delimitados por
tabuladores)

Dos canales

2 hex. (sin delimitar),


4 hex. (delimitados por
comas) o 6 hex.
(delimitados por
tabuladores)

Nmero de campos para escribir


desde memoria de archivos (nmero
de canales para escribir desde
memoria de archivos).
00000000 a 1FFFFFFF hex.
Nmero de campos para escribir
desde memoria de archivos (mitad
del nmero de canales para escribir
desde memoria de archivos).
00000000 a 0FFFFFFF hex.

D1+2 y D1+3: Primer canal de destino


El valor hexadecimal de 8 dgitos en D1+2 y D1+3 especifica el canal por donde
se empieza a escribir desde el principio del archivo.
D1+3

D1+2
D1+3 contiene los 4 dgitos de la izquierda y D1+2, los 4 de la derecha.

686

Instrucciones de memoria de archivos

Seccin 3-24

Tipo de
datos
Binario

Bits 12 a 15 de C
0 hex. (binario)

Contenido de D1+2 y D1+3


Canal por donde se empieza a
escribir desde el principio de la
memoria de archivos.

Canal

1 hex. (sin delimitar),


3 hex. (delimitados por
comas) o 5 hex.
(delimitados por
tabuladores)

Dos canales

2 hex. (sin delimitar),


4 hex. (delimitados por
comas) o 6 hex.
(delimitados por
tabuladores)

00000000 a 3FFFFFFF hex.


Campo por donde se empieza a
escribir desde el principio de la
memoria de archivos (nmero de
canales desde el principio).
00000000 a 1FFFFFFF
Campo por donde se empieza a
escribir desde el principio de la
memoria de archivos (mitad del
nmero de canales desde el
principio).
00000000 a 0FFFFFFF hex.

Nota

1. D1+2 y D1+3 slo se utilizan para sobrescribir los datos 1) de texto y CVS
sin retornos de carro (bits 08 a 11 de C seleccionados a 0 hex.) o 2) binarios.
Siempre que utilice retornos de carro para escribir datos (bits 08 a 11 de C
entre 8 y D hex.), seleccione D1+2 y D1+3 a 00000000 hex.
2. D a D1+3 deben estar en la misma rea de datos.
3. Si el canal de inicio especificado sobrepasa el nmero de canales del archivo de datos, el indicador de error de escritura de archivo (A34308) se pondr en ON y los datos no se escribirn.
D2: Nombre de archivo
D2 es la direccin de inicio de los canales que contienen la ruta absoluta y el
nombre de archivo en ASCII. Utilice los caracteres ASCII de la a a la z, de la A
a la Z y de 0 a 9.
El lmite de caracteres del nombre completo de la ruta al directorio que contiene
el archivo de datos es 65, incluido el guin inicial (ASCII 5C). El nombre de archivo puede tener un mximo de 8 caracteres, pero no puede incluir caracteres nulos (ASCII 00) ya que se trata de un carcter utilizado para marcar el final de una
cadena de caracteres. No incluya la extensin del nombre de archivo; las extensiones .IOM, .TXT o .CSV se aadirn automticamente.
D2

F1

F2

D2+1

F3

F4

F73

F74

D2+38

Nota

Almacene la cadena de caracteres


empezando por el byte de la izquierda
en D2.
Los nombres completos de ruta y archivo pueden tener un mximo de 74
caracteres (bytes), incluyendo el guin
inicial y el carcter nulo final.

1. Asegrese de que la cadena de caracteres que contiene los nombres de


ruta y archivo no sobrepasan el final del rea de datos.
2. Si el directorio especificado no existe, el indicador de archivo no encontrado
(A34311) se pondr en ON y no se escribirn los datos del archivo.
Escriba los nombres de ruta y archivo en ASCII, comenzando por el byte de la
izquierda en D2, tal y como se muestra en el ejemplo de \ABC\XYZ.IOM (la extensin se aade automticamente).
D2
D2+1
D2+2
D2+3
D2+4

*\ *
*B*
*\ *
*Y*
NUL

*A*
*C*
*X*
*Z *

D2
D2+1
D2+2
D2+3
D2+4

5C
42
5C
59
00

41
43
58
5A

S: Primer canal fuente


S especifica la direccin de inicio que contiene los datos que se van a escribir en

687

Instrucciones de memoria de archivos

Seccin 3-24

la memoria de archivos. Las direcciones absolutas de la memoria de E/S interna


leen los datos, permitiendo que FWRIT(701) contine leyendo los datos fuente
desde la siguiente rea de datos si el nmero de canales que est leyendo es
mayor que el final del rea de datos especificado en S.
Descripcin

En el procesamiento de instrucciones, FWRIT(701) slo se utiliza para comenzar la escritura de la memoria de archivos. Los tiempos de ejecucin de las instrucciones especificados al final de este manual son los tiempos necesarios para iniciar la escritura, no para completarla. La escritura real (transferencia) se
realiza mediante el procesamiento de acceso a archivos en el servicio de perifricos. De este modo, una vez ejecutado FWRIT(701), la escritura se ejecuta
continuamente, incluso si la condicin de ejecucin est en OFF durante los siguientes ciclos. Una vez completada la transferencia, el indicador de operacin
de memoria de archivos (A34313) se pondr en OFF. Este indicador se puede
utilizar para obtener un control exclusivo de las instrucciones de la memoria de
archivos.
El tiempo necesario para completar la transferencia de datos para FWRIT(701)
depende de la cantidad de datos que se estn transmitiendo y del tiempo de
servicio asignado al acceso a archivos, entre otras condiciones. Como regla general, el tiempo de transferencia correspondiente a un ciclo de 10 ms para un
archivo del directorio raz con las selecciones del tiempo de servicio por defecto
ser 1,97 s (archivo nuevo) o 1,33 s (archivo existente) para 1.024 canales, y
6,64 s (archivo nuevo) para 9.999 canales.
Los datos fuente se leen desde las direcciones absolutas de la memoria interna
en la RAM, de modo que se leer todo el bloque de datos, incluso si se extienden a dos o ms reas. Por ejemplo, si la primera direccin de destino est en el
rea de trabajo pero la cantidad de datos supera la capacidad de este rea,
FWRIT(701) continuar leyendo los datos desde el principio de la siguiente
rea; en este caso, el rea de temporizador. Para ver un mapa de la memoria en
el que se incluye la ubicacin de las reas de datos en la RAM, consulte Apndice D del Manual de operacin de autmatas programables de la serie CS1
(W339).
Al ejecutar FWRIT(701), el nmero de canales o campos especificados en D1 y
D+1 se escribe en A346 y A347 (nmero de datos que se van a transferir); este
valor se reducir en 1 con cada transferencia. Se puede comprobar el contenido
de estos canales para verificar que se ha transmitido el nmero de canales o
campos esperado.
Sobrescritura de datos en un archivo existente (tercer dgito de C=1)
FWRIT(701) utiliza los datos del rea de datos, comenzando por el primer canal
especificado en S, para sobrescribir los datos de la memoria de archivos en el
tipo de datos especificado. Sobrescribe el nmero de canales o campos especificado en D1 y D+1 en el archivo especificado en D2 (con las extensiones .IOM,
.TXT o .CVS) comenzando por la direccin especificada en D1+2 y D1+3.
CPU
Direccin
de inicio
especificada en S

Canal de inicio especificado en


D1+2 y D1+3

Archivo especificado en D2

Nmero de canales especificados en D1 y


D1+1

Sobrescribir
Tarjeta de memoria o memoria de
archivos de EM
(Especificada por el 1er dgito de C).

Anexin de datos a un archivo existente (tercer dgito de C=0)


FWRIT(701) anexiona los datos del rea de datos, comenzando por el primer
canal especificado en S, a un archivo de datos de la memoria de archivos en el

688

Instrucciones de memoria de archivos

Seccin 3-24

tipo de datos especificado. Anexiona el nmero de canales o campos especificados en D1 y D1+1 al archivo especificado en D2 (con las extensiones .IOM,
.TXT o .CVS).
CPU

Archivo especificado en D2

Fin de
archivo

Direccin
de inicio
especificada en S

Datos
existentes

Nmero de canales especificados en D1 y


D1+1

Apndice
Tarjeta de memoria o memoria de archivos de EM
(Especificada por el 1er dgito de C).

Creacin de un archivo nuevo con datos fuente


Si el archivo especificado en D2 no existe, FWRIT(701) crea un archivo nuevo
con el mismo nombre y extensin (.IOM, .TXT o .CVS) y escribe los datos fuente
especificados en el tipo de datos especificado, comenzando por el principio del
archivo. En este caso, no importa si se ha especificado o no la anexin o la sobrescritura.
Comienzo
de archivo

CPU
Direccin
de inicio
especificada en S

Archivo especificado en D2

Nuevo fichero creado

Nmero de canales especificados


en D1 y D1+1

Tarjeta de memoria o memoria de


archivos de EM
(Especificada por el 1er dgito de C).

Especificaciones de
operandos

rea
rea CIO

D1

D2

CIO 0000 a
CIO 0000 a
CIO 6143
CIO 6140
W000 a W511 W000 a
W508
H000 a H511 H000 a 508

CIO 0000 a CIO 6143

A000 a A959

A000 a A444

A000 a A447

A448 a A956

A448 a A959

T0000 a
T4095
C0000 a
C4095
D00000 a
D32767

T0000 a
T4092
C0000 a
C4092
D00000 a
D32764

T0000 a T4095

rea EM sin banco

E00000 a
E32767

E00000 a
E32764

E00000 a E32767

rea EM con
banco

En_00000 a
En_32767

En_00000 a
En_32764

En_00000 a En_32767

(n = 0 a C)

(n = 0 a C)

--

@ D00000 a @ D32767

rea de trabajo
rea de bits de
retencin
rea de bits
auxiliares
rea de
temporizador
rea de contador
rea DM

Direcciones de
DM/EM indirectas
en binario

W000 a W511
H000 a H511

C0000 a C4095
D00000 a D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

689

Instrucciones de memoria de archivos

Seccin 3-24

rea
Direcciones de
DM/EM indirectas
en BCD

C
--

D1
D2
*D00000 a *D32767

*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

Valores
especificados
exclusivamen
te

Registros de datos

--

Registros de ndice

--

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si el tipo de memoria de archivos especificado en C


no existe.
ON si las selecciones de C no estn dentro el rango
especificado.
ON si el nombre de archivo especificado en D2 no
cumple las condiciones requeridas.
ON si el indicador de operacin de memoria de archivos
estaba en ON.
ON si no se especific ninguna constante para C (no se
aplica a -EV1)
ON si los datos especificados para D1 estn fuera de
rango (slo -EV1).
ON si se especific un rea no vlida para S.
OFF en todos los dems casos.

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre

690

Direccin

Operacin

Tipo de tarjeta de
memoria

A34300 a
A34302

Contiene un nmero binario que indica el tipo


de tarjeta de memoria, si existe, instalada.
(0: Ninguna, 4: Flash ROM)

Indicador de error de
formato de tarjeta de
memoria

A34307

ON si la tarjeta de memoria no est


formateada o se produjo un error en el
formateo.

Indicador de error de
escritura de archivo

A34308

ON si se produjo un error al escribir en el


archivo.

Indicador de
imposibilidad de
escritura de archivo

A34309

ON si no fue posible escribir los datos por


tratarse de un archivo protegido contra
escritura o porque no haba suficiente
espacio libre en memoria.

Indicador de archivo
inexistente

A34311

ON si el directorio especificado no existe al


escribir un archivo.

Instrucciones de memoria de archivos


Nombre
Indicador de operacin
de memoria de
archivos

Seccin 3-24
Direccin
A34313

Operacin
ON para cualquiera de lo siguiente:
CPU se envi un comando a s misma con
CMND(490).
Ejecucin de FREAD(700) o FWRIT(701) en
curso.
Se est sobrescribiendo el programa con un
bit de control en memoria.

Indicador de acceso a
archivo

A34314

Indicador de deteccin
de tarjeta de memoria

A34315

Banco inicial de
formato de archivo de
EM

A344

Copia de seguridad en curso.


ON si se est accediendo a datos de archivo.
Utilice este indicador como una condicin de
ejecucin para evitar que una instruccin de
memoria de archivos se ejecute al mismo
tiempo que otra.
ON si se ha detectado una tarjeta de
memoria.
Contiene el nmero de banco inicial del rea
EM formateada para utilizar como memoria
de archivos de EM. Contiene FFFF si el rea
EM no se ha formateado.
Para utilizar el rea EM como memoria de
archivos, se debe seleccionar a 1 la memoria
de archivos de EM en la configuracin del
PLC y seleccionar el banco inicial de dicha
memoria (0 a C). Todos los bancos de EM,
del primero al ltimo, se formatearn para
utilizarlos como memoria de archivos.

Indicador de error de
A34306
formato de memoria de
archivos de EM
Nmero de datos para A346 a
transferir
A347

ON si existe un error de formato en el banco


inicial de la memoria de archivos de EM.
El contenido de estos canales indica el
estado de la transferencia de archivos.
Al ejecutar la instruccin FWRIT(701), el
nmero de canales o campos que se van a
transferir se escribe en estos canales. Este
valor se reduce en 1 cada vez que se
transfiere un canal.
Del valor binario de 32 bits, A346 contiene
los 16 bits de la derecha y A347 los 16 de la
izquierda.

Precauciones

El indicador de operacin de memoria de archivos (A34313) se pondr en ON al


ejecutar FWRIT(701). Se producir un error y la instruccin no se ejecutar si
A34313 ya est en ON.
El indicador de imposibilidad de escritura de archivo (A34309), se pondr en ON
y la instruccin no se ejecutar si no se pudieron escribir los datos por tratarse
de un archivo protegido contra escritura o porque no haba suficiente espacio
libre en memoria.
El indicador de error de escritura de archivo (A34308) se pondr en ON, pero la
instruccin no se ejecutar si el archivo especificado contiene un tipo de datos
incorrecto o si stos estn daados.
La CPU necesita unos pocos segundos para detectar una tarjeta de memoria
una vez insertada sta. Si el acceso a una tarjeta de memoria se va a realizar al
poco tiempo de encender el equipo o de insertar la tarjeta de memoria, utilice el
indicador de deteccin de tarjeta de memoria (A34315) en una condicin de en-

691

Instrucciones de memoria de archivos

Seccin 3-24

trada NA, tal y como se muestra a continuacin, para asegurar que se ha detectado la tarjeta de memoria.
Condicin
ejecucin

A34315

A34313
FWRIT

Indicador de deteccin de tarjeta de memoria

Indicador de
operacin de
memoria de archivos

D1
D2
S

Nota La estructura de los archivos de datos se muestra a continuacin.


En los formatos binarios (.IOM), los datos son los que aqu se muestran si 1234
hex., 5678 hex., 9ABC hex. y DEF0 hex. se almacenan en el archivo ABC.IOM
(aunque el usuario no necesita saber esta estructura).
XX
XX
a

Memoria E/S

1234
5678
9ABC
DEF0

XX
12
34
56
78
9A
BC
DE
F0

48 bytes (reservados para uso del


sistema)

8 bytes

Contenido de ABC.IOM

En los formatos CSV (.CSV), los datos son los que aqu se muestran si 1234
hex., 5678 hex., 9ABC hex. y DEF0 hex. se almacenan en el archivo ABC.CSV
(la estructura bsica sera la misma para los datos de texto .TXT):

Memoria E/S

1234
5678
9ABC
DEF0

Convertidos a ASCII

31
32
33
34
2C
35
36
37
38
2C

1
2
3
4
,
5
6
7
8
,

4 bytes
Delimitador
1234,5678,9ABC,DEF0
4 bytes
Delimitador

a
Contenido de ABC.CSV

692

Archivo mostrado como datos de texto

Instrucciones de memoria de archivos

Seccin 3-24

En los formatos de canales largos (.CSV), los datos son los que aqu se muestran si 1234 hex., 5678 hex., 9ABC hex. y DEF0 hex. se almacenan en el archivo
ABC.CSV (la estructura bsica sera la misma para los datos de texto .TXT):

Memoria E/S

1234
5678
9ABC
DEF0

Convertidos a ASCII
(canal con direccin
ms alta, primero del
campo)

35
36
37
38
31
32
33
34
2C

5
6
7
8
1
2
3
4
,

8 bytes
56781234,DEF09ABC
Delimitador

Archivo mostrado como datos de texto

Contenido de ABC.CSV

Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo,


FWRIT(701) lee 10 canales de datos desde D00400 hasta D00409 y utiliza los
datos para escribir 10 canales en el archivo \ABC\XYZ.IOM, comenzando por el
principio del archivo + 5 canales.

Ejemplos

Memoria de archivos: Tarjeta de memoria


Funcin: Sobrescribir datos
C
D1
D2
S

D1: D00200

D1+1: D00201
D1+2: D00202

D1+3: D00203

D2: D00300

Nombre de directorio: \ABC

D2+1: D00301
D2+2: D00302

Nombre de archivo: XYZ

D2+3: D00303
D2+4: D00304

Nmero de canales para escribir: 10 canales


Canal de inicio: Principio del archivo+5 canales

5
5
Ignorado

Archivo \ABC\XYZ.IOM

CPU

Wd 0
+5 canales

Wd 5
10 canales

Wd 14

Sobrescribir

693

Instrucciones de visualizacin: VISUALIZAR MENSAJE: MSG(046)

Seccin 3-25

3-25 Instrucciones de visualizacin: VISUALIZAR MENSAJE:


MSG(046)
Funcin

Lee los 16 canales especificados de los caracteres ASCII extendidos y muestra


el mensaje en un dispositivo perifrico, como una consola de programacin.

Smbolo de diagrama de
rels

Variacio-- nes

MSG(046)

Variacio-nes

N: Nmero de mensaje

M: Primer canal del mensaje

Ejecutado cada ciclo para condicin ON

MSG(046)

Ejecutado una vez para diferencial ascendente

@MSG(046)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de mensaje
El nmero de mensaje debe ser 0000 a 0007 hexadecimal (o entre 0 y 7 en decimal).
M: Primer canal del mensaje
Al mostrar un mensaje, M especifica la direccin del primer canal que contiene
el mensaje ASCII. Cuando se borra un mensaje, M puede ser cualquier constante hexadecimal (0000 a FFFF).

Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A000 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

694

Constantes

#0000 a #0007 (binario) o


&0 a &7

#0000 a #FFFF (binario)

Registros de datos

DR0 a DR15

---

Instrucciones de visualizacin: VISUALIZAR MENSAJE: MSG(046)


rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Seccin 3-25

--,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Si la condicin de ejecucin es ON, MSG(046) registra los 16 canales de datos


ASCII (hasta 32 caracteres, incluido el nulo) desde M a M+15 para el nmero de
mensaje especificado en N. Una vez registrado el mensaje, conecte la consola
de programacin y aparecer el mensaje despus de los mensajes de error que
se hayan generado.

Descripcin

Una vez registrado el mensaje, podr modificar su visualizacin escribindolo


en el rea de almacenamiento de mensajes.
Para borrar un mensaje registrado, ejecute MSG(046) con S seleccionado al
nmero del mensaje que desea borrar y N a una constante (0000 a FFFF).
Los mensajes registrados durante la ejecucin del programa se retendrn incluso si se interrumpe la ejecucin, pero se borrarn todos al ejecutar de nuevo el
programa.
Nota Consulte el Apndice A del CS1-series Programming Consoles Operation Manual (W341) (Manual de operacin de consolas de programacin de la serie
CS1) para obtener una tabla de caracteres ASCII extendidos.
Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si el contenido de S no es un cdigo hexadecimal


entre 0000 y 0007.
OFF en todos los dems casos.

Los mensajes registrados se actualizan cada vez que se ejecuta MSG(046).

Precauciones

Todos los caracteres de un mensaje que siguen al carcter nulo (00) se convierten en espacios en el display de la consola de programacin.
El carcter almacenado en el byte de la izquierda precede al carcter del byte de
la derecha.
El siguiente diagrama muestra cmo se convierten 16 canales de datos hexadecimales en un mensaje que aparecer en el display de la consola de programacin.

Ejemplos

Display de la consola de programacin

N+1

N+2

N+15

16 canales
(32 caracteres)

MSG
A B C D E F
16 caracteres 2 lneas

695

Instrucciones de reloj

Seccin 3-26
Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, los 16 canales de datos D00100 a D00115 se leen como los 32 caracteres de datos ASCII
para el mensaje 7 y aparecen en el dispositivo perifrico.

N
M
M:

4D

41

54

45

52

49

41

4C

20
48

53
4F

52

54

D00107

Lee los datos


ASCII hasta
00.

16 caracteres 2 lneas mx.

MSG
MATERIAL SHORT
Espacios

Dejar espacios.
(Valores ignorados)

D00115

ASCII
Los 4 bits de la izquierda

Los cuatro bits de la derecha

SP

3-26 Instrucciones de reloj


En esta seccin se describen las instrucciones del reloj del sistema.
Instruccin

696

Mnemnico

CALENDAR ADD

CADD

Cdigo de
funcin
730

Pgina

CALENDAR SUBTRACT

CSUB

731

700

HOURS TO SECONDS

SEC

065

704

SECONDS TO HOURS

HMS

066

706

CLOCK ADJUSTMENT

DATE

735

708

697

Instrucciones de reloj

Seccin 3-26

3-26-1 SUMAR CALENDARIO: CADD(730)


Funcin

Aade la hora a los datos del calendario de los canales especificados.

Smbolo de diagrama de
rels

Variacio-- nes

CADD(730)

Variacio-nes

C: Primer canal del calendario

T: Primer canal de la hora

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

CADD(730)

Ejecutado una vez para diferencial ascendente

@CADD(730)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C a C+2: Datos del calendario


Seleccione los datos del calendario en C hasta C+2 como se muestra en el siguiente diagrama.
C a C+2 deben estar en la misma rea de datos.

15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)

C+1

15

8 7

Hora: 00 a 23 (BCD)
Da: 01 a 31 (BCD)
15

8 7

C+2

Mes: 01 a 12 (BCD)
Ao: 00 a 99 (BCD)

697

Instrucciones de reloj

Seccin 3-26
T y T+1: Datos de tiempo
Seleccione los datos de tiempo en T y T+1 como se muestra en el siguiente diagrama. T y T+1 deben estar en la misma rea de datos.
15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

T+1

Horas: 0000 a 9999 (BCD)

R a R+2: Datos de resultado


R a R+2 contienen el resultado de la suma. R a R+2 deben estar en la misma
rea de datos.
15

8 7

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

8 7

R+1

Hora: 00 a 23 (BCD)
Da: 01 a 31 (BCD)
15

8 7

R+2

Mes: 01 a 12 (BCD)
Ao: 00 a 99 (BCD)

698

Instrucciones de reloj
Especificaciones de
operandos

Seccin 3-26
rea
rea CIO

CIO 0000 a
CIO 6141
W000 a W509

CIO 0000 a
CIO 6142
W000 a W510

CIO 0000 a
CIO 6141
W000 a W509

rea de bits de
retencin
rea de bits auxiliares

H000 a H509

H000 a H510

H000 a H509

A000 a A957

A000 a A958

A448 a A957

rea de temporizador

T0000 a T4093

T0000 a T4094

T0000 a T4093

rea de contador

C0000 a C4093

C0000 a C4094

C0000 a C4093

rea DM

D00000 a
D32765
E00000 a
E32765
En_00000 a
En_32765

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

D00000 a
D32765
E00000 a
E32765
En_00000 a
3En_2765

(n = 0 a C)

(n = 0 a C)

(n = 0 a C)

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

--

Valores
especificados
exclusivamente

Registros de datos

--

Registros de ndice

--

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

--

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR005+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

CADD(730) aade los datos del calendario (canales C a C+2) a los de tiempo
(canales T y T+1) y enva los datos del calendario resultante a R hasta R+2.

C
C+1
C+2

Minutos
Da
Ao

T
T+1

Minutos

R
R+1

Minutos
Da
Ao

R+2

Segundos
Hora
Mes

Segundos
Horas

Segundos
Hora
Mes

699

Instrucciones de reloj
Indicadores

Seccin 3-26
Nombre

Operacin

Etique-ta

Indicador de
error

ER

ON si los datos del calendario de C a C+2 no estn


dentro de los rangos especificados.
ON si los datos de tiempo de T y T+1 no estn dentro
de los rangos especificados.
OFF en todos los dems casos.

Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, los datos
del calendario de D00100 a D00102 (ao, mes, da, hora, minutos y segundos)
se aaden a los datos de tiempo en D00200 y D00201 (horas, minutos y segundos) y el resultado se enva a D00300 hasta D00302.

Ejemplos

C:

T
R

T:

R:

99

12

06

00

04
00

18
01

18:30:20
10 de diciembre de 1999

10 minutos, 15 segundos
600 horas

18:40:35
4 de enero de 2000

3-26-2 RESTAR CALENDARIO: CSUB(731)


Funcin

Quita la hora a los datos del calendario de los canales especificados.

Smbolo de diagrama de
rels

Variacio-- nes

CSUB(731)

Variacio-nes

C: Primer canal del calendario

T: Primer canal de la hora

R: Primer canal de resultado

Ejecutado cada ciclo para condicin ON

CSUB(731)

Ejecutado una vez para diferencial ascendente

@CSUB(731)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

700

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

C a C+2: Datos del calendario


Seleccione los datos del calendario de C a C+2 como se muestra en el siguiente

Instrucciones de reloj

Seccin 3-26
diagrama.
C a C+2 deben estar en la misma rea de datos.
15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)

C+1

15

8 7

Hora: 00 a 23 (BCD)
Da: 01 a 31 (BCD)
15

8 7

C+2

Mes: 01 a 12 (BCD)
Ao: 00 a 99 (BCD)

T y T+1: Datos de tiempo


Seleccione los datos de tiempo en T y T+1 como se muestra en el siguiente diagrama. T y T+1 deben estar en la misma rea de datos.
15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

T+1

Horas: 0000 a 9999 (BCD)

701

Instrucciones de reloj

Seccin 3-26
R a R+2: Datos de resultado
R a R+2 contienen el resultado de la suma. R a R+2 deben estar en la misma
rea de datos.
15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

R+1

Hora: 00 a 23 (BCD)
Da: 01 a 31 (BCD)
15

8 7

R+2

Mes: 01 a 12 (BCD)
Ao: 00 a 99 (BCD)

Especificaciones de
operandos

rea
rea CIO

CIO 0000 a
CIO 6141
W000 a W509

CIO 0000 a
CIO 6142
W000 a W510

CIO 0000 a
CIO 6141
W000 a W509

rea de bits de
retencin
rea de bits auxiliares

H000 a H509

H000 a H510

H000 a H509

A000 a A957

A000 a A958

A448 a A957

rea de temporizador

T0000 a T4093

T0000 a T4094

T0000 a T4093

rea de contador

C0000 a C4093

C0000 a C4094

C0000 a C4093

rea DM

D00000 a
D32765
E00000 a
E32765
En_00000 a
En_32765

D00000 a
D32766
E00000 a
E32766
En_00000 a
En_32766

D00000 a
D32765
E00000 a
E32765
En_00000 a
3En_2765

rea de trabajo

rea EM sin banco


rea EM con banco

Direcciones de DM/EM
indirectas en binario

(n = 0 a C)
(n = 0 a C)
@ D00000 a @ D32767

(n = 0 a C)

@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

702

Constantes

--

Registros de datos

--

Valores
especificados
exclusivamente

--

Instrucciones de reloj

Seccin 3-26
rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

-,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR005+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

CSUB(731) quita los datos de tiempo (canales T y T+1) del calendario (canales
C a C+2) y enva los datos resultantes a R hasta R+2.

Descripcin

C
C+1
C+2

T
T+1

Minutos

R
R+1

Minutos
Da
Ao

R+2

Indicadores

Nombre
Indicador de
error

Etique-ta

ER

Minutos
Da
Ao

Segundos
Hora
Mes

Segundos
Horas

Segundos
Hora
Mes

Operacin
ON si los datos del calendario de C a C+2 no estn
dentro de los rangos especificados.
ON si los datos de tiempo de T y T+1 no estn dentro
de los rangos especificados.
OFF en todos los dems casos.

Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, los datos de
tiempo en D00200 y D00201 (horas, minutos y segundos) se quitan a los datos
del calendario de D00100 y D00102 (ao, mes, da, hora, minutos y segundos) y
el resultado se enva a D00300 hasta D00302.

Ejemplos

C:
C

18:30:20
10 de julio de 1998

T
R
T:

R:

50 horas, 10 minutos, 15 segundos

16:20:05
8 de julio de 1998

703

Instrucciones de reloj

Seccin 3-26

3-26-3 HORAS A SEGUNDOS: SEC(065)


Funcin

Convierte los datos de tiempo en formato horas/minutos/segundos en un tiempo equivalente en segundos.

Smbolo de diagrama de
rels

Variacio-- nes

SEC(065)

Variacio-nes

S: Primer canal fuente

D:Primer canal de destino

Ejecutado cada ciclo para condicin ON

SEC(065)

Ejecutado una vez para diferencial ascendente

@SEC(065)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

S y S+1: Datos fuente


Seleccione los datos fuente de hora/minutos/segundos en S y S+1 como se
muestra en el siguiente diagrama. S y S+1 deben estar en la misma rea de datos.
15

8 7

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

S+1

Horas: 0000 a 9999 (BCD)

D y D+1: Datos de resultado


D y D+1 contienen los datos de resultado en formato de slo segundos. D y D+1
deben estar en la misma rea de datos.
15

Los 4 dgitos de la derecha


Segundos: 0000 a 9999 (BCD)
15

D+1

Los 4 dgitos de la izquierda


Segundos: 0000 a 3599 (BCD)

704

Instrucciones de reloj
Especificaciones de
operandos

Seccin 3-26
rea

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin
rea de bits auxiliares

H000 a H510

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A000 a A958

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

Valores especificados
exclusivamente

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

SEC(065) convierte los datos BCD de 8 dgitos con formato horas/minutos/segundos a slo segundos y enva el resultado a D y D+1.
Minutos

Segundos
Horas

Segundos

Indicadores

Nombre
Indicador de
error

Etique
-- ta

ER

Operacin
ON si los datos de minutos en S (bits 08 a 15) no son BCD
ni se incluyen en el rango de 00 a 59.
ON si los datos de segundos en S (bits 00 a 07) no son
BCD ni se incluyen en el rango de 00 a 59.

Indicador de
igual

Precauciones

OFF en todos los dems casos.


ON si el contenido de D es 0000 despus de la operacin.
OFF en todos los dems casos.

El valor mximo para los datos fuente es 9.999 horas, 59 minutos y 59 segundos
(35.999.999 segundos).

705

Instrucciones de reloj
Ejemplos

Seccin 3-26
Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, los datos en
formato horas/minutos/segundos en D00200 y D00201 (34 horas, 17 minutos y
36 segundos) se convierten en datos de slo segundos y el resultado se enva a
D00100 y D00101.

17 minutos, 36 segundos
34 horas
Horas/minutos/segundos segundos
123.456 segundos

3-26-4 SEGUNDOS A HORAS: HMS(066)


Funcin

Convierte los datos de segundos en un tiempo equivalente en formato horas/minutos/segundos.

Smbolo de diagrama de
rels

Variacio-- nes

HMS(066)

Variacio-nes

S: Primer canal fuente

D:Primer canal de destino

Ejecutado cada ciclo para condicin ON

HMS(066)

Ejecutado una vez para diferencial ascendente

@HMS(066)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

S y S+1: Datos fuente


Seleccione los datos fuente de segundos en S y S+1 como se muestra en el siguiente diagrama.
S y S+1 deben estar en la misma rea de datos.
15

Los 4 dgitos de la derecha


Segundos: 0000 a 9999 (BCD)
15

S+1

Los 4 dgitos de la izquierda


Segundos: 0000 a 3599 (BCD)

706

Instrucciones de reloj

Seccin 3-26
D y D+1: Datos de resultado
D y D+1 contienen los datos de resultado en formato horas/minutos/segundos.
D y D+1 deben estar en la misma rea de datos.

15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

D+1

Horas: 0000 a 9999 (BCD)

rea

rea CIO

CIO 0000 a CIO 6142

rea de trabajo

W000 a W510

rea de bits de
retencin

H000 a H510

rea de bits auxiliares

A000 a A958

rea de temporizador

T0000 a T4094

rea de contador

C0000 a C4094

rea DM

D00000 a D32766

rea EM sin banco

E00000 a E32766

rea EM con banco

En_00000 a En_32766

A448 a A958

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)

Constantes

00000000 a 35999999
(BCD)

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

707

Instrucciones de reloj

Seccin 3-26
HMS(066) convierte los datos BCD de 8 dgitos de slo segundos en S y S+1 al
formato horas/minutos/segundos y enva el resultado a D y D+1.

Descripcin

Segundos

Minutos

Segundos

Horas

Indicadores

Nombre

Operacin

Etique
-- ta

Indicador de
error

ER

Indicador de
igual

ON si los datos de segundos en S y S+1 no son BCD ni se


incluyen en el rango de 0 a 35.999.999.
OFF en todos los dems casos.
ON si el contenido de D es 0000 despus de la operacin.
OFF en todos los dems casos.

Precauciones

El valor mximo para los datos fuente es 35.999.999 segundos (9.999 horas, 59
minutos y 59 segundos).

Ejemplos

Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, los datos de
segundo en D00100 y D00101 (123.456 segundos) se convierten en datos de
horas/minutos/segundos y se enva el resultado a D00200 y D00201.

123.456 segundos

S:

Segundos Horas/minutos/segundos
D:

17 minutos, 36 segundos
34 horas

3-26-5 AJUSTAR RELOJ: DATE(735)


Cambia la seleccin del reloj interno a la seleccin de los canales fuente especificados.

Funcin

Nota La seleccin del reloj interno tambin se puede cambiar desde un dispositivo
perifrico o con el comando CLOCK WRITE FINS (0702).
Smbolo de diagrama de
rels

DATE(735)
S: Primer canal fuente

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

DATE(735)

Ejecutado una vez para diferencial ascendente

@DATE(735)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

708

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

Instrucciones de reloj
Operandos

Seccin 3-26
S a S+3: Nueva seleccin del reloj
Seleccione el reloj en S a S+3 como se muestra en el siguiente diagrama.
S a S+3 deben estar en el mismo rea de datos.
15

Segundos: 00 a 59 (BCD)
Minutos: 00 a 59 (BCD)
15

S+1

Hora: 00 a 23 (BCD)
Da: 01 a 31 (BCD)
15

S+2

Mes: 01 a 12 (BCD)
Ao: 00 a 99 (BCD)
15

8 7

S+3

Da de la semana:
Siempre a 00.

00 = domingo
01 = lunes
02 = martes
03 = mircoles
04 = jueves
05 = viernes
06 = sbado

La siguiente tabla muestra la estructura del rea de calendario/reloj.


Direcciones
A35100 a A35107

Segundo (00 a 59, BCD)

A35108 a A35115

Minuto (00 a 59, BCD)

A35200 a A35207

Horas (00 a 23, BCD)

A35208 a A35215

Da del mes (01 a 31, BCD)

A35300 a A35307

Mes (01 a 12, BCD)

A35308 a A35315

Ao (00 a 99, BCD)

A35400 a A35407

Da de la semana (00 a 06 = domingo a sbado,


hexadecimal)
Siempre a 00.

A35408 a A35415

Especificaciones de
operandos

Contenido

rea

rea CIO

CIO 0000 a CIO 6140

rea de trabajo

W000 a W508

rea de bits de
retencin

H000 a H508

rea de bits auxiliares

A000 a A956

rea de temporizador

T0000 a T4092

rea de contador

C0000 a C4092

709

Instrucciones de reloj

Seccin 3-26
rea

rea DM

D00000 a D32764

rea EM sin banco

E00000 a E32764

rea EM con banco

En_00000 a En_32764
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

DATE(735) cambia la seleccin del reloj interno segn los datos del reloj de los
cuatro canales fuente. La nueva seleccin queda reflejada inmediatamente en
el rea de calendario/reloj (A351 a A354).
CPU
Reloj interno
Nueva seleccin

Indicadores

Nombre
Indicador de
error

Etique-ta

ER

Minutos

Segundos

Da

Hora

Ao

Mes

00

Da semana

Operacin
ON si la nueva seleccin del reloj de S a S+3 no est
dentro del rango especificado.
OFF en todos los dems casos.

Precauciones

710

No se generar ningn error, incluso si el reloj interno est configurado con una
fecha irreal (p. ej. 31 de noviembre).

Instrucciones de depuracin
Ejemplos

Seccin 3-27
Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, la fecha predeterminada del reloj interno es 20:15:30 del jueves, 9 de octubre de 1998.

S:
Minuto

Segundo

Da del
mes

Hora

Ao

Mes

Siempre
a 00.

Da de la semana

3-27 Instrucciones de depuracin


3-27-1 Muestreo de memoria de seguimiento: TRSM(045)
Funcin

Cuando se ejecuta TRSM(045), el estado de un bit o canal preseleccionado se


muestrea y almacena en la memoria de seguimiento. TRSM(045) se puede utilizar en cualquier sitio del programa y las veces que se desee.

Smbolo de diagrama de
rels
Variacio-- nes

TRSM(045)

Variacio-nes

Ejecutado en cada ciclo

TRSM(045)

Ejecutado una vez para diferencial ascendente

No soportado
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Descripcin

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

Antes de ejecutar TRSM(045), debe especificar con un dispositivo perifrico el


bit o canal que va a seguir. Cada vez que ejecuta TRSM(045), el valor actual del
bit o canal especificado se muestrea y graba ordenado en la memoria de seguimiento. El seguimiento finaliza cuando la memoria de seguimiento est llena. El

711

Instrucciones de depuracin

Seccin 3-27
contenido de esta memoria se puede supervisar desde un dispositivo perifrico
cuando as lo requiera.
rea de datos del PLC
TRSM(045) ejecutado.
Bit o palabra especificado.

Muestreo de datos
Memoria de seguimiento

El seguimiento finaliza
cuando la memoria de
seguimiento est llena.

Esta instruccin slo indica el momento de muestreo de los datos especificados. El resto de las selecciones y operaciones de seguimiento de datos se establecen con el dispositivo perifrico. Existen otros dos tipos de muestreo de datos de control que son: muestreo al final de cada ciclo y muestreo durante el intervalo especificado (independientemente del tiempo de ciclo).
TRSM(045) no requiere ninguna condicin de ejecucin y siempre se ejecuta
como si tuviera la condicin de ejecucin ON. Conecte TRSM(045) directamente a la barra de bus izquierda.
Utilice TRSM(045) para muestrear el valor del bit o canal especificado cuando la
condicin de ejecucin de la instruccin sea ON. Si es ON en todos los ciclos, el
valor del bit o canal especificado se almacenar en la memoria de seguimiento
en todos los ciclos.
Puede incorporar dos o ms instrucciones TRSM(045) en un mismo programa.
En este caso, el valor del mismo bit o canal especificado se almacenar en la
memoria de seguimiento cada vez que se ejecute la instruccin TRSM(045).
Los datos de
la direccin
m se almacenan en la
memoria de
seguimiento.
Los datos de
la direccin m
se almacenan
en la memoria
de seguimiento.
Datos almacenados cada ciclo.

Utilice un dispositivo perifrico para especificar la direccin que se


va a seguir.

Memoria de seguimiento

Nota Consulte el manual de operacin del dispositivo perifrico correspondiente para


obtener informacin detallada sobre el seguimiento de datos.
Las operaciones de seguimiento de datos realizadas con el dispositivo perifrico se resumen en la siguiente lista:

712

Instrucciones de depuracin
1, 2, 3...

Seccin 3-27
1. Seleccionar los siguientes parmetros con el dispositivo perifrico:
a) Seleccionar la direccin del bit o canal a seguir.
b) Seleccionar la condicin de activacin. Una de estas tres condiciones
permite controlar la validez de los datos almacenados en la memoria de
seguimiento:
i) El bit de inicio del seguimiento pasa de OFF a ON.
ii) Un bit especificado pasa de OFF a ON.
iii) El valor de un canal especificado coincide con el valor establecido.
c) Seleccionar TRSMcomo intervalo de muestreo para realizar el muestreo durante la ejecucin de TRSM(045) en el programa.
d) Seleccionar retraso.
2. Si el bit de inicio de muestreo pasa de OFF a ON con el dispositivo perifrico, el muestreo de datos especificados se iniciar cada vez que se ejecute
TRSM(045) y dichos datos se almacenarn en la memoria de seguimiento.
El indicador de seguimiento en curso (A50813) se pondr en ON al mismo
tiempo.
3. Si se cumple la condicin de activacin (bit de inicio de seguimiento en ON,
bit especificado en ON o valor del canal especificado coincide con el valor
seleccionado), los datos mostrados sern vlidos comenzando con la siguiente muestra, ms o menos el nmero de muestras especificado en la
seleccin de retraso. El indicador de supervisin de la activacin de seguimiento (A50811) se pondr en ON al mismo tiempo.
4. El seguimiento finalizar cuando TRSM(045) se haya ejecutado las veces
suficientes para llenar la memoria de seguimiento. Una vez finalizado el seguimiento, el indicador de seguimiento completado (A50812) se pondr en
ON y el indicador seguimiento en curso (A50813) se pondr en OFF.
5. Leer el contenido de la memoria de seguimiento con el dispositivo perifrico.
La siguiente tabla muestra los bits e indicadores relevantes del rea auxiliar. El
usuario slo podr controlar A50814 y A50815, mientras que A00815 no se debe poner en ON desde el programa, es decir, slo se pondr en ON desde el
dispositivo perifrico.
Nombre

Direccin

Operacin

Indicador de
supervisin de
activacin de
seguimiento

A50811

Este indicador se pone en ON una vez


establecida la condicin de activacin con el bit
de inicio de seguimiento. Se pone en OFF al
iniciar el muestreo del prximo seguimiento (bit
de inicio de muestreo).

Indicador de
seguimiento
completado

A50812

Este indicador se pone en ON una vez se haya


llenado la memoria de seguimiento con las
muestras de seguimiento y en OFF la siguiente
vez que el bit de inicio de muestreo pase de
OFF a ON.

Indicador de
seguimiento en
curso

A50813

Este indicador se pone en ON cuando el bit de


inicio de seguimiento pasa de OFF a ON y en
OFF una vez completado el seguimiento.

713

Instrucciones de depuracin

Seccin 3-27
Nombre
Bit de inicio de
seguimiento

Bit de inicio de
muestreo

Direccin
Operacin
A50814
Las condiciones de activacin de seguimiento
se establecen cuando este bit pasa de OFF a
ON. Las muestras se registrarn cuando el
retraso especificado (retardo positivo) o el
nmero especificado de las muestras existentes
(retraso negativo) sean vlidos.
A50815
Si pasa de OFF a ON desde un dispositivo
perifrico, las muestras de datos comenzarn a
almacenarse en la memoria de seguimiento con
uno de los siguientes tres mtodos utilizados
para determinar el muestreo:
1) Muestreo peridico (intervalos de 10 a 2.550
ms)
2) Muestreo durante la ejecucin de TRSM(045)
3) Muestreo al final de cada ciclo.
Utilice un dispositivo perifrico para poner este
bit en ON y OFF.

Precauciones

TRSM(045) se procesa como NOP(000) si no se est realizando un seguimiento de datos o si el intervalo de muestreo establecido en los parmetros con un
dispositivo perifrico no est seleccionado en la muestra de la instruccin de
ejecucin de TRSM(045).
No ponga el bit de inicio de muestreo (A50815) en ON y OFF desde el programa.
Utilice un dispositivo perifrico para poner este bit en ON y OFF.

Ejemplo

El siguiente ejemplo muestra la operacin de seguimiento de datos global.

Dispositivo perifrico desde el que se opera


(Bit de inicio de muestreo: A50815)
Bit de inicio de seguimiento: A50814

Indicador de seguimiento en curso: A50813


Indicador de seguimiento completado: A50812

Indicador de supervisin de activacin


de seguimiento: A50811

SeleccinMuesde retra- tras vliso


das

Muestreo

: Ejecucin de TRSM(045)

Ejemplo: datos de canal


Memoria de
seguimiento

Ver nota.
Vlido desde aqu en adelante

714

Final del seguimiento


una vez llena la memoria de seguimiento.

Instrucciones de diagnstico de fallos

Seccin 3-28

Nota La memoria de seguimiento tiene una estructura anular. Los datos se almacenan en el final del rea de la memoria de seguimiento para luego volver al principio del rea, finalizando justo antes de la primera muestra de datos vlida.

3-28 Instrucciones de diagnstico de fallos


Esta seccin describe las instrucciones que se utilizan para definir y manejar
errores.
Instruccin

Mnemnico

FAILURE ALARM

FAL

Cdigo de
funcin
006

Pgina

SEVERE FAILURE ALARM

FALS

007

719

FAILURE POINT DETECTION

FPD

269

723

715

3-28-1 ALARMA DE FALLO: FAL(006)


Genera o borra los errores no fatales definidos por el usuario. Los errores no
fatales no detienen el funcionamiento del PLC.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

FAL(006)

Variacio-nes

N: Nmero FAL

M: Primer canal del mensaje

Ejecutado cada ciclo para condicin ON

FAL(006)

Ejecutado una vez para diferencial ascendente

@FAL(006)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

Nota El mtodo de entrada del nmero FAL, N es diferente para CX-Programmer que
para la consola de programacin: entrada de #0 a #511 para CX-Programmer y
de 000 a 511 para la consola de programacin.
Operandos

La siguiente tabla muestra las funciones de los operandos.


N

#0000

#0001 a #01FF

0 a 11

Funcin

#FFFF

Borra el error no fatal con el nmero FAL


correspondiente.
Borra todos los errores no fatales.

Otro*

Borra el error no fatal ms grave.

#0000 a #FFFF

Genera un error no fatal con el nmero FAL


correspondiente (sin mensaje).
Genera un error no fatal con el nmero FAL
correspondiente.
El mensaje ASCII de 16 caracteres incluido
en el tramo M a M+7 se mostrar en el
dispositivo perifrico.

Direccin de
canal

Nota *Otras selecciones seran constantes de #0200 a #FFFE o una direccin de canal.
Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

715

Instrucciones de diagnstico de fallos


rea
rea de bits de
retencin
rea de bits auxiliares

Seccin 3-28

---

M
H000 a H511

---

A000 a A447
A448 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en BCD

---

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

Valores especificados
exclusivamente

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

(n = 0 a C)
#0000 a #FFFF
(binario)

,IR0 a ,IR15
--2048 a +2047,IR0 a
--2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

El funcionamiento de FAL(006) depende del valor de N. Seleccione N a 0000


para borrar un error y a 0001 hasta 01FF para generarlo.

Descripcin

Generacin de errores no fatales


Si se ejecuta FAL(006) con N seleccionado a un nmero FAL (&1 a &511), se
generar un error fatal con dicho nmero y se iniciar el siguiente procesamiento.
1, 2, 3...

1. El indicador de error FAL (A40215) se pondr en ON (el PLC seguir funcionando).


2. El indicador de nmero FAL ejecutado se pondr en ON para el nmero FAL
correspondiente. Los indicadores A36001 a A39115 corresponden a nmeros FAL comprendidos entre 0001 y 01FF (1 a 511).
3. El cdigo de error se escribir en A400. Los cdigos 4101 a 42FF corresponden a nmeros FAL entre 0001 y 01FF (1 a 511).
Nota Si se produce un error fatal o uno no fatal ms grave al mismo tiempo
que se ejecuta la instruccin FAL(006), el cdigo del error ms grave
se escribir en A400.
4. El cdigo de error y la hora a la que se produjo se escribirn en el rea de
registro de errores (A100 a A199).
5. El indicador ERR de la CPU se pondr intermitente.

716

Instrucciones de diagnstico de fallos

Seccin 3-28

6. Si se ha especificado en M la direccin de un canal, se registrar el mensaje


que comienza en M (mostrado en el dispositivo perifrico).
Indicador de error FAL en ON
La ejecucin
de FAL(006)
genera un
error no fatal
con el nmero FAL N.

Indicador de nmero FAL ejecutado correspondiente en ON


Cdigo de error escrito en A400
Cdigo de error y tiempo escrito en rea de almacenamiento de error
El indicador ERR parpadea
Mensaje en la consola
de programacin

La siguiente tabla muestra los cdigos de error y los indicadores de error de


FAL(006).
Nmero FAL
1 a 511 decimal

Cdigos de error FAL


4101 a 42FF

Indicadores de nmeros FAL


ejecutados
A36001 a A39115

Si M es una direccin de canal y existe un mensaje almacenado en M, este ltimo aparecer en el display del dispositivo perifrico cada vez que ejecute
FAL(006). Si no se requiere ningn mensaje, especifique una constante para M.
El mensaje que comienza en M quedar registrado cuando se ejecute FAL(006)
y aparecer una vez registrado y conectada la consola de programacin.
En M hasta M+7, se puede almacenar un mensaje ASCII con un mximo de 16
caracteres. El byte de la izquierda de cada canal (el ms significativo) ser el
primero en aparecer.
El carcter nulo (00 hexadecimal) es el cdigo de fin del mensaje. Si se omite, se
mostrarn los 16 caracteres de los canales entre M y M+7.
Si una vez ejecutado FAL(006), se modifica el contenido de los canales que contienen el mensaje, este ltimo cambiar en consecuencia.
Borrado de errores no fatales
Si ejecuta FAL(006) con N seleccionado a 0, podr borrar un determinado error
no fatal o todos. Tambin puede borrar los errores desde un dispositivo perifrico.
Si M est comprendido entre #0001 y #01FF (1 a 511), FAL(006) borrar el error
no fatal con el nmero FAL. El indicador de nmero FAL correspondiente se
pondr en OFF y el cdigo de error en A400 se borrar.
Si M es #FFFF, FAL(006) borrar todos los errores no fatales que se hayan producido, incluyendo los del sistema.
Si M est comprendido entre #0200 y #FFFE o es una direccin de canal,
FAL(006) borrar el error no fatal ms grave, incluyendo los errores no fatales
del sistema, que se haya producido.
Si se produce ms de un error FAL, se borrar el FAL menor.
Indicadores

Nombre
Indicador de
error

Etique-ta

ER

Operacin
ON si N no est dentro del rango especificado de 0 a
511 decimal.
OFF en todos los dems casos.

717

Instrucciones de diagnstico de fallos

Seccin 3-28

La siguiente tabla muestra los canales e indicadores relevantes del rea auxiliar.
Nombre

Direccin

Operacin

Indicador de error
FAL
Indicadores de
nmeros FAL
ejecutados

A40215

ON si se genera un error con FAL(006).

A36001 a
A39115

rea de registro de
errores

A100 a
A199

Cdigo de error

A400

Cuando se genera un error con FAL(006), el


indicador correspondiente se pone en ON. Los
indicadores A36001 a A39115 corresponden a
nmeros FAL entre 0001 y 01FF.
El rea de registro de errores contiene los
cdigos de error junto con la hora y fecha de los
20 errores ms recientes, incluyendo los
generados por FAL(006).
Cuando se produce un error, el cdigo
correspondiente se almacena en A400. Los
cdigos de error de los nmeros FAL entre 0001
y 01FF son los comprendidos entre 4101 y 42FF
respectivamente.
Si se producen dos o ms errores
simultneamente, el cdigo de error
correspondiente al error ms grave se
almacenar en A400.

Precauciones

N debe estar comprendido entre 0000 y 01FF. Si N no se incluye en el rango


especificado, se producir un error y el indicador de error se pondr en ON.

Ejemplos

Generacin de un error no fatal


Si CIO 000000 est en ON, como en el siguiente ejemplo, FAL(006) generar
un error fatal con el nmero FAL 31 y ejecutar los siguientes procesos:
1, 2, 3...

1. El indicador de error FAL (A40215) se pondr en ON.


2. El indicador de nmero FAL ejecutado correspondiente (A36114) se pondr
en ON.
3. El cdigo de error correspondiente (411F) se escribir en A400.
Nota Si se producen dos o ms errores al mismo tiempo, se almacenar
en A400 el cdigo del error ms grave (el cdigo mayor).
4. El cdigo de error junto con la hora y fecha en las que se produjo se escribirn en el rea de registro de errores (A100 a A199).
5. El indicador ERR de la CPU se pondr intermitente.
6. El mensaje ASCII en D00100 a D00107 aparecer en el display del dispositivo perifrico. Si no se requiere ningn mensaje, especifique una constante
para M.

#31
M

M:

4C

4F

57

20

56

4F

4C

54

41

47

45

00

MENSAJE
BAJA TENSIN

Borrado de un error no fatal concreto


Si CIO 000001 est en ON, como en el siguiente ejemplo, FAL(006) borrar el
error no fatal con el nmero FAL 31, el indicador de nmero FAL ejecutado co-

718

Instrucciones de diagnstico de fallos

Seccin 3-28

rrespondiente (A36114) se pondr en OFF y el indicador de error FAL (A40215)


en OFF.
000001
#0

Seleccione N a 0 para borrar

#001F los errores.

Seleccione M al nmero FAL


que desee (031(001F)).

Borrado de todos los errores no fatales


Si CIO 000002 est en ON, como en el siguiente ejemplo, FAL(006) borrar todos los errores no fatales, los indicadores de nmeros FAL ejecutados correspondientes (A36001 a A39115) se pondrn en OFF y el indicador de error FAL
(A40215) en OFF.
000002
#0
M

Seleccione N a 0 para borrar los errores.


Seleccione M en FFFF para borrar todos
los errores no fatales (FAL(006) y sistemas de error).

Borrado del error no fatal ms grave


Si CIO 000003 est en ON, como en el siguiente ejemplo, FAL(006) borrar el
error no fatal ms grave que se haya producido y restablecer el cdigo de error
a A400. Si el error borrado se gener con FAL(006), el indicador de nmero FAL
ejecutado correspondiente y el de error FAL (A40215) se pondrn en OFF.
000003
#0
#0000

Seleccione N a 0 para borrar los errores.


Seleccione M a 0000, otra constante entre 0200 y FFFE, o una direccin de canal
para borrar el error no fatal ms grave
(en este caso, M est establecido como
0000).

3-28-2 ALARMA DE FALLO GRAVE: FALS(007)


Funcin

Genera errores fatales definidos por el usuario. Los errores fatales detienen el
funcionamiento del PLC.

Smbolo de diagrama de
rels

Variacio-- nes

FALS(007)

Variacio-nes

N: Nmero FALS

M: Primer canal del mensaje

Ejecutado cada ciclo para condicin ON

FALS(007)

Ejecutado una vez para diferencial ascendente

No soportado.
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero FALS
Especifica el nmero FALS del error generado. N debe ser 1 a 511. FAL(006) y
FALS(007) comparten los mismos nmeros FAL y FALS.

719

Instrucciones de diagnstico de fallos

Seccin 3-28

M: Primer canal del mensaje.


Especifica el primero de los 8 canales que contienen un mensaje ASCII y que
aparecer en el display del dispositivo perifrico al ejecutar FALS(007).
Especifique una constante (0000 a FFFF) si no se requiere ningn mensaje.
Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A000 a A959

rea de temporizador

---

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

Direcciones de DM/EM
indirectas en binario

---

(n = 0 a C)
@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767
Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

Valores especificados
exclusivamente

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

(n = 0 a C)
#0000 a #FFFF
(binario)

,IR0 a ,IR15
--2048 a +2047,IR0 a
--2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR+(++)0 a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Si ejecuta FALS(007), se generar un error fatal con el nmero FALS y se llevar a cabo el siguiente procedimiento:

Descripcin
1, 2, 3...

1. El indicador de error FALS (A40106) se pondr en ON (el PLC dejar de


funcionar).
2. El cdigo de error se escribir en A400. Los cdigos de error C101 a C2FF
corresponden a nmeros FAL entre 0001 y 01FF (1 a 511).
Nota Si se ha producido un error ms grave que la instruccin FALS(007)
(uno con un cdigo de error mayor), A400 incluir el cdigo del error
ms grave.
3. El cdigo de error junto con la hora y fecha en las que se produjo se escribirn en el rea de registro de errores (A100 a A199).
4. El indicador ERR de la CPU se encender.

720

Instrucciones de diagnstico de fallos

Seccin 3-28

5. Si se ha especificado en M la direccin de un canal, se registrar el mensaje


ASCII que comienza en M (mostrado en el dispositivo perifrico).

Indicador de error FALS en ON


La ejecucin
de FALS(007)
genera un
error fatal con
el nmero
FALS N.

Cdigo de error escrito en A400


Cdigo de tiempo/fecha escrito en el rea de registro de errores
El indicador ERR se enciende
Mensaje en la consola de
programacin

La siguiente tabla muestra los cdigos de error de FALS(007).


Nmero FALS
1 a 511

Cdigos de error FALS


C101 a C2FF

Nota El mtodo de entrada del nmero FALS, N, es diferente para CX-Programmer


que para la consola de programacin: entrada de #1 a #511 para CX-Programmer y de 001 a 511 para la consola de programacin.
Visualizacin de mensaje
Si FALS(007) se ejecuta con N seleccionado a 0000, podr borrar un determinado error fatal o todos. Tambin puede borrar los errores desde un dispositivo
perifrico.
Si M es una direccin de canal, el mensaje ASCII que comienza en M aparecer
en el dispositivo perifrico cuando se ejecute FALS(007). Si no se requiere ningn mensaje, especifique una constante para M.
El mensaje que comienza en M quedar registrado cuando se ejecute
FALS(007) y aparecer una vez registrado y conectada la consola de programacin.
En M hasta M+7, se puede almacenar un mensaje ASCII con un mximo de 16
caracteres. El byte de la izquierda de cada canal (el ms significativo) ser el
primero en aparecer.
El carcter nulo (00 hexadecimal) es el cdigo de fin del mensaje. Si se omite, se
mostrarn los 16 caracteres de los canales entre M y M+7.
Si, una vez ejecutado FALS(007), se modifica el contenido de los canales que
contienen el mensaje, este ltimo cambiar en consecuencia.
Borrado de errores de FALS(007)
Para borrar los errores generados por FALS (007), elimine primero la causa del
error y, a continuacin, borre el error en la consola de programacin o apague y
vuelva a encender el PLC.
Indicadores

Nombre
Indicador de
error

Etique-ta

ER

Operacin
ON si N no est dentro del rango especificado de 0001a
01FF (1 a 511 decimal).
OFF en todos los dems casos.

721

Instrucciones de diagnstico de fallos

Seccin 3-28

La siguiente tabla muestra los canales e indicadores relevantes del rea auxiliar.
Nombre

Direccin

Operacin

Indicador de error
FALS

A40106

ON si se genera un error con FALS (007).

rea de registro de
errores

A100 a
A199

Cdigo de error

A400

El rea de registro de errores contiene los


cdigos de error y la hora y fecha de los 20
errores ms recientes, incluyendo los
generados por FALS(007).
Cuando se produce un error, el cdigo
correspondiente se almacena en A400. Los
cdigos de error de los nmeros FALS entre
0001 y 01FF (1 a 511 decimal) son C101 a
C2FF respectivamente.
Si se producen dos o ms errores
simultneamente, el cdigo de error
correspondiente al error ms grave se
almacenar en A400.

El carcter nulo (00 hexadecimal) es el cdigo de fin del mensaje. Si se omite, se


mostrarn los 16 caracteres de los canales entre M y M+7.

Precauciones

N debe estar comprendido entre 0001 y 01FF. Si N no est dentro del rango especificado, se producir un error y el indicador de error se pondr en ON.
Cuando CIO 000000 est en ON, como en el siguiente ejemplo, FALS(007) genera un error fatal con el nmero FAL 31 y ejecuta los siguientes procesos:

Ejemplos
1, 2, 3...

1. El indicador de error FALS (A40106) se pondr en ON


2. El cdigo de error correspondiente (C11F) se escribir en A400.
Nota A400 incluir el cdigo del error ms grave que se haya producido,
incluidos los errores de sistema fatales y no fatales, as como los generados por FAL(006) y FAL(007).
3. El cdigo de error junto con la hora y fecha en las que se produjo se escribirn en el rea de registro de errores (A100 a A199).
4. El indicador ERR de la CPU se encender.
5. El mensaje ASCII en D00100 a D00107 aparecer en el display del dispositivo perifrico. Si no se requiere ningn mensaje, especifique una constante
para M.

#31
M

M:

722

4C

4F

57

20

56

4F

4C

54

41

47

45

00

MENSAJE
BAJA TENSI N

Instrucciones de diagnstico de fallos

Seccin 3-28

3-28-3 DETECCIN DE PUNTO DE FALLO: FPD(269)


Funcin

Diagnostica un fallo en un bloque de instrucciones, mediante la supervisin del


tiempo entre la ejecucin de FPD(269) y la ejecucin de una salida de diagnstico, y la bsqueda de la entrada que impide que una salida se ponga en ON.

Smbolo de diagrama de
rels

Variacio-- nes

FPD(269)

Variacio-nes

C: Canal de control

T: Tiempo de supervisin

R: Primer canal de registro

Ejecutado cada ciclo para condicin ON

FPD(269)

Ejecutado una vez para diferencial ascendente

No soportado.
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
No se admite

Operandos

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
No se admite

C: Canal de control
C debe ser una constante entre 0000 y 01FF, o entre 8000 y 81FF.
El siguiente diagrama muestra la funcin de los dgitos del canal de control.
15

12 11

C
Nmero FAL: 000 a 1FF
Modo de salida de diagnstico
0: Salida de direccin de bit (hexadecimal)
8: Salida de direccin de bit y mensaje (ASCII)

T: Tiempo de supervisin
T debe estar entre 0000 y 270F (entre 0 y 9.999 decimal). El valor 0 inhabilita la
supervisin de tiempo, los valores en el rango de 1a 270F establecen el tiempo
de supervisin de 0,1 a 999,9 segundos.
R: Primer canal de registro
Las funciones de los canales de registro se describen en la pgina 726.
Especificaciones de
operandos

rea

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A447

rea de temporizador

---

A448 a A959
T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

A448 a A959

(n = 0 a C)

723

Instrucciones de diagnstico de fallos

Seccin 3-28

rea
Direcciones de DM/EM
indirectas en binario

T
@ D00000 a @ D32767

---

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767

---

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

Registros de datos

Valores
especificados
exclusivamente
---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

(n = 0 a C)
#0000 a #270F

---

(binario)

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a
+2047,IR15
DR0 a DR15, IR0 a IR15

FPD(269) realiza diagnsticos de supervisin de tiempo y lgicos. La funcin de


supervisin de tiempo genera un error no fatal con el nmero FAL especificado
si la salida de diagnstico no est en ON dentro del tiempo de supervisin especificado. La funcin de diagnstico lgico indica la entrada que impide que la
salida se ponga en ON.

Descripcin

Funcin de supervisin de tiempo:


Inicia la temporizacin cuando la condicin de ejecucin
A pasa a ON. Genera un error no fatal si la salida B no
se pone en ON dentro del tiempo de supervisin.
Condicin de
ejecucin A

T
R
Siguiente bloque
de instrucciones

Bloque de procesamiento de errores (opcional)

Bloque de diagnstico lgico*


Condicin C de ejecucin de diagnstico
lgico

Salida de diagnstico B

Funcin de diagnstico lgico


Determina qu entrada en C impide
que la salida B se ponga en ON.

Nota *El bloque de diagnstico lgico comienza con la primera instruccin LD (no LD
TR) o LD NOT que sigue a FPD(269) y termina con la primera instruccin OUT
(no OUT TR) u otra instruccin de derecha.
Funcin de supervisin de tiempo
FPD(269) inicia la temporizacin cuando se ejecuta (cuando la condicin de
ejecucin A pasa a ON); genera un error no fatal y el indicador de acarreo se

724

Instrucciones de diagnstico de fallos

Seccin 3-28

pone en ON si la salida de diagnstico no se pone en ON dentro del tiempo de


supervisin especificado.
Condicin de ejecucin
para FPD(269)
Salida de diagnstico B

Tiempo de supervisin (T)

Indicador de acarreo
Errores no fatales generados.

Nota La salida de diagnstico debe ponerse en ON antes de que transcurra el tiempo


de supervisin. La funcin de teaching se puede utilizar para establecer el tiempo de supervisin automticamente.
El siguiente proceso se llevar a cabo cuando el indicador de acarreo se ponga
en ON. No se realizar si el nmero FAL est a 000 en C.
1, 2, 3...

1. El indicador de error FAL (A40215) se pondr en ON (el PLC continua funcionando).


2. El indicador de nmero FAL ejecutado para el nmero FAL especificado se
pondr en ON. Los indicadores A36001 a A39115 corresponden a nmeros
FAL entre 001 y 1FF.
3. El cdigo de error correspondiente se escribir en A400. Los cdigos de
error 4101 a 42FF corresponden a nmeros FAL entre 001 y 1FF
(Si se ha producido un error ms grave, con un cdigo de error mayor, al
mismo tiempo, el cdigo de error del error ms grave se almacenar en
A400).
4. El cdigo de error junto con la hora y fecha en las que se produjo se escribirn en el rea de registro de errores (A100 a A199).
5. El indicador ERR de la CPU se pondr intermitente.
6. Si ha seleccionado el modo de salida para la salida de direcciones de bit y
mensajes (dgito de la izquierda de C seleccionado a 8), el mensaje ASCII
almacenado en R+6 a R+9 se mostrar como un mensaje de error no fatal.
Funcin de diagnstico lgico
Cuando la condicin de ejecucin FPD(269) est en ON, sta determina el bit
de entrada que permite la salida del diagnstico en OFF y escribe la direccin de
bit en el rea de registro que comienza en R.
Si los bits de entrada CIO 000000 a CIO 000003 estn en ON, como en el siguiente ejemplo, FPD(269) determinar la condicin de CIO 000002 normalmente cerrado como la que permite que CIO 000100 de salida permanezca en
OFF. FPD(269) pondr en ON el indicador de direccin de bit encontrada (bit 15
de R) y escribir la direccin en los canales de registro R+2 a R+4.

Bloque de diagnstico lgico


Condicin de ejecucin
de diagnstico lgico

La funcin de diagnstico lgico se ejecuta cada ciclo siempre y cuando la condicin de ejecucin para FPD(269) est en ON. El funcionamiento de esta funcin es independiente de la funcin de supervisin de tiempo.
Cuando dos o ms bits de entrada impiden que la salida del diagnstico se ponga en ON, la direccin del primer bit de salida en la condicin de ejecucin (en la

725

Instrucciones de diagnstico de fallos

Seccin 3-28

lnea de instrucciones superior y la ms prxima a la barra de bus izquierda) se


enva a R+2 hasta R+4.
La funcin de diagnstico lgico comprobar los bits de entrada en las instrucciones LD, LD NOT, AND, AND NOT, OR y OR NOT (incluyendo las variaciones
de refresco inmediato y diferenciado). No se comprobarn los bits de entrada en
otras instrucciones ni los operandos direccionados indirectamente a travs de
los registros de ndice.
El bloque de diagnstico lgico comienza con la primera instruccin LD (no LD
TR) o LD NOT que sigue a FPD(269) y termina con la primera instruccin OUT
(no OUT TR) u otra de derecha.
Existen dos modos de salida de diagnsticos, especificados con el dgito de la
izquierda de C.
1, 2, 3...

Funciones de canales de
registro

1. Modo de salida de direccin de bit (dgito de la izquierda de C = 0)


El bit 15 de R (indicador de direccin de bit encontrada ) se pone en ON
cuando se encuentra una direccin de bit de entrada y el bit 14 de R indica si
la entrada est normalmente en ON o en OFF.
La direccin de memoria de E/S interna de 8 dgitos hexadecimal del bit de
entrada se enva a R+3 y R+2.
2. Modo de salida de direccin de bit y mensaje (dgito de la izquierda de C =
8)
El bit 15 de R (indicador de direccin de bit encontrada ) se pone en ON
cuando se encuentra una direccin de bit de entrada y el bit 14 de R indica si
la entrada est normalmente en ON o en OFF.
La direccin del bit de entrada se enva a R+2 hasta R+4 a modo de 6 caracteres ASCII.
Los canales de registro contienen los resultados de la funcin de diagnstico y
tambin pueden contener un mensaje de error en ASCII que aparece cuando la
funcin de supervisin de tiempo genera un error. La funcin de los canales de
registro depende del modo de salida de diagnstico especificado con el dgito
de la izquierda de C.
Salida de direccin de bit (C=0jjj)
Cuando el dgito de la izquierda de C est a 0, la direccin de memoria de E/S
interna de 8 dgitos hexadecimal del bit de entrada se enva a R+2 y R+3. R contiene dos indicadores cuya funcin es sealar si se ha encontrado un bit de entrada y si se utiliza en una condicin de entrada normalmente abierta o normalmente cerrada.
R

15 14 13

No se puede utilizar.
Tipo de entrada
0: Normalmente abierta
1: Normalmente cerrada
Indicador de direccin de bit encontrada
0: Todava no encontrada
1: Direccin de bit encontrada
R+1

15

No se puede utilizar.
R+2

R+3

Salida de mensaje y direccin de bit (C=8jjj)


Cuando el dgito de la izquierda de C est a 8, la direccin ASCII de 6 caracteres

726

Instrucciones de diagnstico de fallos

Seccin 3-28

del bit de entrada se enva a R+2 y R+3. R contiene dos indicadores cuya funcin es sealar si se ha encontrado un bit de entrada y si se utiliza en una condicin de entrada normalmente abierta o normalmente cerrada.
15 14 13

R
No se puede utilizar.
Tipo de entrada
0: Normalmente abierta
1: Normalmente cerrada
Indicador de direccin de bit encontrada
0: Todava no encontrada
1: Direccin de bit encontrada
15

R+1
No se puede utilizar.

Los canales de registro R+2 a R+4 indican la direccin de la entrada que impide
que la salida de diagnstico se ponga en ON. La direccin de bit se enva a estos
canales en ASCII. La siguiente tabla muestra las representaciones ASCII para
cada rea.
rea

Texto ASCII

Notas

rea auxiliar

A00000 a A95915

---

rea de
retencin

H00000 a H51115

---

rea de trabajo

W00000 a W51115

---

rea CIO

000000 a 665515

---

Indicadores de
tarea
rea de
temporizador
rea de
contador

TK0000 a TK0031

---

_T0000 a _T4095

El _ representa un espacio ASCII.


(Cdigo de carcter 20.)

_C0000 a _C4095

15
R+2

R+3

R+4

Direccin de bit escrita en ASCII

Los valores de W51115 correspondientes a los canales de registro de R+2 a


R+5 seran:
Canal

Bits 8 a 15

Bits 0 a 7

R+2

R+3

R+4

R+5

2D (hexadecimal)

Tipo de entrada (hexadecimal)


30: Normalmente abierta
31: Normalmente cerrada

El usuario puede almacenar un mensaje ASCII en los canales de registro de


R+6 a R+9 que aparecer en el dispositivo perifrico si la funcin de supervisin

727

Instrucciones de diagnstico de fallos

Seccin 3-28

de tiempo genera un error no fatal. Marque el final del mensaje con el carcter
nulo (00 hexadecimal).
15

8 7

R+6
R+7
R+8
R+9

Seleccin del tiempo de


supervisin con la
funcin de teaching
1, 2, 3...

Si se especifica una direccin de canal para T, el tiempo de supervisin se puede establecer automticamente con la funcin de teaching. Lleve a cabo el siguiente procedimiento si existe una direccin de canal establecida para T:
1. Ponga en ON el bit de teaching de FPD.
2. FPD(269) mide el tiempo transcurrido desde que la condicin de ejecucin
para FPD(269) se pone en ON hasta que la salida del diagnstico se pone
en ON.
3. Si el tiempo medido sobrepasa la seleccin del tiempo de supervisin, el
primero se multiplica por 1,5 y este nuevo valor se almacena en T.

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si C no est dentro del rango especificado de 0000


a 01FF o de 8000 a 81FF.
ON si T no est dentro del rango especificado de 0000 a
270F.

Indicador de
acarreo

CY

OFF en todos los dems casos.


ON si la salida de diagnstico todava est en OFF una
vez transcurrido el tiempo de supervisin.

La siguiente tabla muestra los canales e indicadores relevantes del rea auxiliar.
Nombre

A40215

rea de
registro de
errores
Cdigo de
error

A100 a
A199

Bit de teaching
de FPD

Precauciones

Direccin

Indicador de
error FAL
Indicadores de
nmeros FAL
ejecutados

A36001 a
A39115

A400

A59800

Operacin
ON si se registra un error no fatal (FAL) en la
supervisin de tiempo.
Cuando un se registra un error no fatal (FAL) en la
supervisin de tiempo, el indicador correspondiente
se pone en ON. Los indicadores A36001 a A39115
corresponden a nmeros FAL entre 0001 y 01FF.
El rea de registro de errores contiene los cdigos de
error y la hora y fecha de los 20 errores ms
recientes, incluyendo los generados por FPD(269).
Cuando se produce un error, el cdigo
correspondiente se almacena en A400. Los cdigos
de error de los nmeros FAL entre 0001 y 01FF son
los comprendidos entre 4101 y 42FF
respectivamente.
Si se producen dos o ms errores simultneamente,
el cdigo de error correspondiente al error ms grave
se almacenar en A400.
Ponga este bit en ON si desea seleccionar
automticamente el tiempo de supervisin (funcin
de teaching) cada vez que ejecute FPD(269).

Mientras se est utilizando la funcin de supervisin de tiempo, la condicin de


ejecucin para FPD(269) debe permanecer en ON durante todo el tiempo de
supervisin establecido en T.
La condicin de ejecucin para FPD(269) debe estar compuesta por una combinacin de entradas normalmente abiertas y normalmente cerradas.

728

Instrucciones de diagnstico de fallos

Seccin 3-28

El bloque de procesamiento de errores es opcional. Si se incluye uno de estos


bloques, asegrese de utilizar salidas u otras instrucciones de derecha. No puede utilizar LD ni LD NOT en este momento.
Puede utilizar FPD(269) ms de una vez en el programa, pero cada instruccin
debe tener una seleccin de registro nica (R).
El tiempo de supervisin se refresca slo cuando se ejecuta FPD(269). Si el
tiempo de ciclo supera los 100 ms, el tiempo de supervisin no se refrescar con
normalidad y FPD(269) no funcionar correctamente, ya que el tiempo de supervisin se actualiza en unidades de 100 ms.
El siguiente ejemplo del programa muestra la operacin de la funcin de supervisin de tiempo y de diagnstico lgico. En l, la salida de diagnstico
(CIO 020000) no se pone en ON porque CIO 010000 y CIO 010003 permanecen en OFF en la condicin de ejecucin de diagnstico lgico.

Ejemplos

Condicin de
ejecucin

T
R
Bloque de procesamiento de errores (opcional)

Bloque de diagnstico lgico


Condicin de ejecucin de diagnstico lgico

Salida de diagnstico

La salida de diagnstico (CIO 020000)


permanece en OFF porque las condiciones de entrada estn en OFF.

Funcin de supervisin de tiempo


Si la salida de diagnstico (CIO 020000) no se pone en ON 10 segundos despus de que CIO 030000 y CIO 030001 estn en ON, se generar un error no
fatal y se llevar a cabo el siguiente procedimiento:
1, 2, 3...

1. El indicador de acarreo se pone en ON.


2. Si los 3 dgitos de la derecha de C especifican un nmero FAL de 00A hex.
(10), el indicador de nmeros FAL ejecutado correspondiente (A36010) se
pone en ON, el cdigo de error correspondiente (410A) se escribe en A400
y el indicador de error FAL (A40215) se pone en ON.
Funcin de diagnstico lgico (C=000A)
Dado que el dgito de la izquierda de C es 0 (modo de salida de direccin de bit),

729

Instrucciones de diagnstico de fallos

Seccin 3-28

la direccin de memoria de E/S interna de CIO 010000 se enva al D00303 y


D00302 (CIO 010000 est en una lnea de instruccin superior a CIO 010003).
Nmero FAL = 10
Modo de salida de diagnstico = 0 (salida de direccin de bit)
Tipo de entrada
0: Normalmente abierta

Indicador de direccin
de bit encontrada
1: Direccin de bit encontrada
R:

No utilizado.
No utilizado.

Contiene la direccin de memoria de E/S interna.

Funcin de diagnstico lgico (C=800A)


Dado que el dgito de la izquierda de C es 8 (modo de salida de mensaje y direccin de bit), la direccin de CIO 010000 (010000) se enva a D00302 hasta
D00304 en ASCII.

Indicador de direccin
de bit encontrada
1: Direccin de bit encontrada
R: D00300
R+1: D00301
R+2: D00302
R+3: D00303

No utilizado.
30

31

30

30

R+4: D00304
R+5: D00305

30

30

2D

30

R+6: D00306
R+7: D00307

54

25

25

F4

R+8: D00308

25

00

00

00

R+9: D00309

730

Nmero FAL = 10
Modo de salida de diagnstico = 8 (salida de mensaje y direccin de bit)
Tipo de entrada
0: Normalmente abierta

Contiene direcciones de bits en ASCII..


(010000 se convierte a ASCII).

Mensaje de error FAL seleccionado por


el usuario emitido a un dispositivo perifrico por la funcin de supervisin de
tiempo. El display del perifrico mostrar lo siguiente: 010000--0 ERROR.

Otras instrucciones

Seccin 3-29
Seleccin del tiempo de supervisin con la funcin de teaching
El tiempo de supervisin se puede establecer automticamente utilizando la
funcin de teaching si se ha especificado una direccin de canal para T.
Condicin de
ejecucin

T
R

La funcin de teaching
establece el tiempo de
supervisin en T automticamente.

Salida de diagnstico

Para iniciar la funcin de teaching, ponga A59800 en ON (bit de teaching de


FPD). Mientras A59800 est en ON, FPD(269) mide el tiempo que tarda la salida de diagnstico (CIO 020000) en ponerse en ON despus de que la condicin
de ejecucin (CIO 030000) se ponga en ON. Si el resultado supera el tiempo de
supervisin en T, el tiempo medido se multiplica por 1,5 y el valor obtenido se
almacena en T como el nuevo tiempo de supervisin.
Bit de teaching de FPD A59800

Condicin de ejecucin CIO 030000


No se genera error.
Salida de diagnstico

CIO 020000
Tiempo medido: ta

ts (ta 1,5)

Teaching

ts: Seleccin inicial en T


ta: Tiempo medido
ts: Seleccin nueva en T despus de teaching
(Cuando ta > ts, ts = ta 1,5)

3-29 Otras instrucciones


En esta seccin se describen las instrucciones para la manipulacin del indicador de acarreo, la seleccin del banco de EM y la ampliacin del tiempo de ciclo
mximo.
Instruccin

Mnemnico

Cdigo de
funcin

Pgina

SET CARRY

STC

040

732

CLEAR CARRY

CLC

041

732

SELECT EM BANK

EMBC

281

733

EXTEND MAXIMUM CYCLE


TIME

WDT

094

735

731

Otras instrucciones

Seccin 3-29

3-29-1 ACARREO A ON: STC(040)


Selecciona el indicador de acarreo (CY).
Smbolo de diagrama de
rels
Variacio-- nes

STC(040)
Variacio-nes

Ejecutado cada ciclo para condicin ON

STC(040)

Ejecutado una vez para diferencial ascendente

@STC(040)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Descripcin

OK

Subrutinas
OK

Tareas de
interrupcin
OK

Cuando la condicin de ejecucin es ON, STC(040) pone en ON el indicador de


acarreo (CY). Aunque STC(040) ponga el indicador de acarreo en ON, ste modificar su estado (ON/OFF) en funcin de la ejecucin de las instrucciones siguientes que le afecten.

Indicadores

Precauciones

reas de programa
de pasos

No soportado.

Nombre

Operacin

Etique-ta

Indicador de
error

ER

OFF

Indicador de
igual

OFF

Indicador de
acarreo

CY

ON

Indicador de
negativo

OFF

ROL(027), ROLL(572), ROR(028) y RORL(573) utilizan el indicador de acarreo


en las operaciones de desplazamiento rotatorio. Cuando utilice alguna de estas
instrucciones, utilice STC(040) y CLC(041) para seleccionar y borrar el indicador de acarreo.

3-29-2 ACARREO A OFF: CLC(041)


Funcin

Pone en OFF el indicador de acarreo (CY).

Smbolo de diagrama de
rels
Variacio-- nes

CLC(041)
Variacio-nes

Ejecutado cada ciclo para condicin ON

CLC(041)

Ejecutado una vez para diferencial ascendente

@CLC(041)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Descripcin

732

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

Cuando la condicin de ejecucin es ON, CLC(041) pone en OFF el indicador


de acarreo (CY). Aunque CLC(041) ponga el indicador de acarreo en OFF, ste
modificar su estado (ON/OFF) en funcin de la ejecucin de las instrucciones
siguientes que le afecten.

Otras instrucciones

Seccin 3-29

Indicadores

Nombre

Operacin

Etique-ta

Indicador de
error
Indicador de
igual
Indicador de
acarreo
Indicador de
negativo

ER

OFF

OFF

CY

OFF

OFF

+C(402), +CL(403), +BC(406) y +BCL(407) utilizan el indicador de acarreo en


las operaciones de suma. Utilice CLC(041) justo antes de ejecutar alguna de
estas instrucciones para impedir la influencia de otras instrucciones previas.
--C(412), --CL(413), --BC(416) y --BCL(417) utilizan el indicador de acarreo en
las operaciones de resta. Utilice CLC(041) justo antes de ejecutar alguna de estas instrucciones para impedir la influencia de otras instrucciones previas.
ROL(027), ROLL(572), ROR(028) y RORL(573) utilizan el indicador de acarreo
en las operaciones de desplazamiento rotatorio. Cuando utilice alguna de estas
instrucciones, utilice STC(040) y CLC(041) para seleccionar y borrar el indicador de acarreo.

Precauciones

Nota Las instrucciones +(400), +L(401), +B(404), +BL(405), --(410), --L(411),


--B(414) y --BL(415) no incluyen el indicador de acarreo en las operaciones de
suma y de resta. Como norma general, utilice estas instrucciones en las operaciones de suma y de resta.

3-29-3 SELECCIONAR BANCO DE EM: EMBC(281)


Funcin

Cambia el banco de EM actual.

Smbolo de diagrama de
rels

EMBC(281)
N

Variacio-- nes

Variacio-nes

N: Nmero de banco de EM

Ejecutado cada ciclo para condicin ON

EMBC(281)

Ejecutado una vez para diferencial ascendente

@EMBC(281)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

N: Nmero de banco de EM
Especifica el nuevo nmero de banco de EM en hexadecimal (0000 a 000C).
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

733

Otras instrucciones

Seccin 3-29
rea
rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

#0000 a #000C (binario)

Registros de datos

DR0 a DR15

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

EMBC(281) cambia el banco de EM (Memoria de datos extendida) al indicado


en el nmero de banco de EM (N). Al mismo tiempo, el nuevo nmero de banco
de EM se enva a A301.
Existe un mximo de 13 bancos (0 a C) disponibles en el rea EM con 32.768
canales (E00000 a E32767) en cada uno. Hay dos mtodos de identificacin de
las direcciones de EM. Utilice EMBC(281) para cambiar el banco de EM actual
con el primer mtodo.

Descripcin

1, 2, 3...

Indicadores

1. Las direcciones de EM se pueden especificar sin el nmero de banco,


E00000 a E32767, para indicar las direcciones del banco de EM actual.
2. Las direcciones de EM se pueden especificar con el nmero de banco,
En_00000 a En_32767 (n = 0 a C), para indicar las direcciones de un determinado banco de EM.
Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si N no est dentro del rango de 0000 a 000C.


ON si N especifica un nmero de banco de EM
inexistente.
(Este error se producir si el banco de EM especificado
se ha registrado como memoria de archivos en la
configuracin del PLC).
OFF en todos los dems casos.

La siguiente tabla muestra los indicadores relevantes del rea auxiliar.


Nombre
Banco de EM actual

Precauciones

734

Direccin
A301

Operacin
Contiene el nmero del banco de EM actual
en hexadecimal (0000 a 000C).

El nmero de banco de EM actual modificado en una tarea de ciclo se retiene


cuando se cambia la operacin entre las tareas. Por ejemplo, si utiliza
EMBC(281) en la tarea 1 para cambiar el banco de EM actual del banco B al C,
este ltimo se mantiene como el banco de EM para todas las tareas de ciclo,
incluso cuando la operacin se cambia a la tarea 2.
El nmero de banco de EM actual modificado en una tarea de interrupcin slo
es vlido durante la ejecucin de la interrupcin en la que se cambi. El nmero

Otras instrucciones

Seccin 3-29
de banco de EM anterior se devolver una vez completada la tarea de interrupcin.
Se producir un error si el banco de EM especificado se ha registrado como memoria de archivos en la configuracin del PLC.

Ejemplos

Cuando CIO 000000 se pone en ON, como en el siguiente ejemplo, el nmero


de banco de EM actual se cambia por el banco C y el nuevo nmero (000C hex.)
se enva a A301.

3-29-4 AMPLIAR TIEMPO DE CICLO MXIMO: WDT(094)


Funcin

Ampla el tiempo de ciclo mximo, pero slo para el ciclo en el que se ejecuta la
instruccin. WDT(094) se puede utilizar para prevenir los errores de tiempos de
ciclo largos cuando se requiere un tiempo de ciclo ms largo para un proceso
especial.

Smbolo de diagrama de
rels

WDT(094)
T: Seleccin del temporizador

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

WDT(094)

Ejecutado una vez para diferencial ascendente

@WDT(094)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos

Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
OK

T: Seleccin del temporizador


Especifica la seleccin del temporizador de guarda entre 0000 y 0F9F hexadecimal o entre &0000 y &3999 decimal.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin
rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

0000 a 0F9F (binario)

---

735

Otras instrucciones

Seccin 3-29
rea
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

WDT(094) ampla el tiempo de ciclo mximo para el ciclo en el que se ejecuta la


instruccin. La seleccin del temporizador de guarda en la configuracin del
PLC se ampla con un intervalo de T 10 ms (0 a 39.990 ms).
La siguiente tabla muestra las selecciones del temporizador de guarda en la
configuracin del PLC. El valor por defecto del tiempo de ciclo mximo es 1.000
ms, aunque se puede seleccionar a cualquier valor entre 1 y 40.000 ms en unidades de 10 ms.

Descripcin

Nombre

Funcin

Selecciones

Tiempo de
ciclo de
guarda

Si el tiempo de ciclo supera el valor


mximo seleccionado, se registrar
un error de tiempo de ciclo demasiado
largo (error fatal).
Establece el tiempo de ciclo mximo.
(Esta seleccin slo es vlida si la
primera seleccin se ha establecido
en 1).

Indicadores

Nombre
Indicador de
error

1: Seleccin de tiempo por


usuario
0001 a 0FA0
(1 a 40.000 ms, unidades de
10 ms)

Operacin

Etique-ta

ER

0: Seleccin por defecto


(1.000 ms)

ON si la seleccin del temporizador de guarda supera


los 40 segundos.
OFF en todos los dems casos.

La siguiente tabla muestra los canales e indicadores relevantes del rea auxiliar.
Nombre

Direccin

Indicador de tiempo
de ciclo demasiado
largo

A40108

Tiempo de ciclo
mximo

A262 y
A263

Tiempo de ciclo
actual

A264 y
A265

Operacin
ON si el tiempo de ciclo actual supera el tiempo
de ciclo mximo (tiempo de ciclo de guarda)
seleccionado en la configuracin del PLC. Error
fatal que detiene la ejecucin del programa.
Canales que contienen el tiempo de ciclo
mximo en binarios de 32 bits. Este valor se
actualiza cada ciclo.
Canales que contienen el tiempo de ciclo actual
en binarios de 32 bits. Este valor se actualiza
cada ciclo.

Precauciones

WDT(094) se puede utilizar ms de una vez en un ciclo. Si WDT(094) se ejecuta


ms de una vez, se suman todas las ampliaciones del tiempo de ciclo, aunque el
resultado no puede ser superior a 40.000 ms. WDT(094) no se puede ejecutar
de nuevo si el ciclo ya se ha ampliado a 40.000 ms.

Ejemplos

Ejemplo del tiempo de ciclo mximo predeterminado (1.000 ms):


1, 2, 3...

736

1. Cuando CIO 000000 se pone en ON, la primera instruccin WDT(094) ampla el tiempo de ciclo mximo a 300 ms (30 10 ms). De este modo, el tiempo de ciclo mximo en este momento es 1.300 ms.
2. Cuando CIO 000001 se pone en ON, la segunda instruccin WDT(094) intenta ampliar el tiempo de ciclo mximo en otros 39.000 ms. Dado que el
nuevo tiempo de ciclo mximo (40.300 ms) supera el lmite de 40.000 ms,
los 300 ms extras se ignoran. Como resultado se obtiene que la segunda
instruccin WDT(094) ampla el tiempo de ciclo mximo en 38.700 ms.

Instrucciones de programacin de bloques

Seccin 3-30

3. Cuando CIO 000002 se pone en ON, la tercera instruccin WDT(094) intenta ampliar el tiempo de ciclo mximo en otros 1.000 ms. Dado que el tiempo
de ciclo mximo ya ha alcanzado el lmite de 40.000 ms, esta tercera instruccin no se ejecuta.
1

3-30 Instrucciones de programacin de bloques


En esta seccin se describen los programas de bloques y las instrucciones de
programacin de bloques.
Instruccin

Mnemnico

BLOCK PROGRAM BEGIN

BPRG

Cdigo de
funcin
096

Pgina

BLOCK PROGRAM END

BEND

801

742

BLOCK PROGRAM PAUSE

BPPS

811

745

BLOCK PROGRAM RESTART

BPRS

812

745

CONDITIONAL BLOCK EXIT


(NOT)
IF (NOT)

EXIT (NOT)

806

751

IF (NOT)

802

747

ELSE

ELSE

803

747

IF END

IEND

804

747

ONE CYCLE AND WAIT


(NOT)
TIMER WAIT

WAIT (NOT)

805

754

TIMW

813

758

COUNTER WAIT

CNTW

814

761

HIGH-SPEED TIMER WAIT

TMHW

815

764

LOOP

LOOP

809

767

LOOP END (NOT)

LEND (NOT)

810

767

742

3-30-1 Introduccin
Programas de bloques

Un mximo de 128 programas de bloques incluidos en el programa del usuario


global (todas las tareas) con la serie CS1. La ejecucin de cada uno de los programas de bloques se controla mediante una nica condicin de ejecucin. Todas las instrucciones comprendidas entre BPRG(096) y BEND<801) se ejecutan siempre que la condicin de ejecucin para BPRG(096) se ponga en ON. La
condicin de ejecucin no afecta a la ejecucin de las instrucciones de programacin de bloques, exceptuando BPRG(096). Esto permite el agrupamiento de
la programacin que se va a ejecutar bajo una nica condicin de ejecucin en
un programa de bloques.
Cada uno de estos bloques se inicia con una condicin de ejecucin en el diagrama de rels y todas las instrucciones de un bloque se escriben a modo de

737

Instrucciones de programacin de bloques

Seccin 3-30

mnemnicos. Un programa de bloques es una combinacin de instrucciones de


diagrama de rels e instrucciones mnemnicas.
Este tipo de programas permite realizar operaciones de programacin que pueden resultar difciles si incluyen diagramas de rel, como bifurcaciones condicionales o progresiones de pasos.
El siguiente ejemplo muestra dos programas de bloques.

rea del programa de bloques n 1


Si CIO 000000 est en ON, se ejecutar
el contenido del programa de bloques 1.
Las instrucciones MOV(021) y SET se
ejecutarn incondicionalmente y el programa de bloques finalizar.

rea del programa de bloques n 2


Si CIO 000001 est en ON, se ejecutar
el contenido del programa de bloques 2.
Si CIO 000003 y CIO 000004 estn los
dos en ON, se efectuar la suma binaria
(CIO 0002 + #000A D00001). Si uno
de estos bits, o los dos, estn en OFF,
#0001 se mover a D00001 ,
CIO 000015 se seleccionar incondicionalmente y el programa de bloques finalizar.

Tareas y programas de bloques


Los programas de bloques pueden incluirse en las tareas. Mientras que las tareas se utilizan para dividir unidades grandes de programacin, los programas
de bloques se pueden utilizar dentro de las tareas para dividir la programacin
en unidades ms pequeas controladas por una nica condicin de ejecucin
de diagrama de rels.
Como las tareas, los programas de bloques que no se ejecutan, es decir, que
tienen una condicin de ejecucin OFF, no requieren un tiempo de ejecucin y,
por lo tanto, se pueden utilizar para reducir el tiempo de ciclo (similar a los saltos). Tambin como las tareas, los bloques se pueden parar o reiniciar desde un
programa de bloques.
Adems de estas similitudes, tambin existen diferencias entre tareas y programas de bloques. Una de ellas es que las condiciones de entrada no se utilizan
dentro de los programas de bloques, a no ser que se programen intencionadamente con las instrucciones IF(802), WAIT(805), EXIT(806), IEND(810) u otras.
Tambin hay instrucciones que no se pueden utilizar dentro de los programas
de bloques, como las que detectan diferenciales ascendentes y descendentes.

738

Instrucciones de programacin de bloques

Seccin 3-30

Los programas de bloques se pueden utilizar dentro de tareas cclicas o de interrupcin. Cada uno de estos programas, del 0 al 127, slo se puede utilizar
una vez, incluso si se trata de una tarea diferente.
Programa
Tarea 1

Programa de bloques 001


Programa de bloques n

Tarea 2

Tarea n

Utilizacin de las instrucciones de programacin de bloques

En resumen, IF(802), ELSE(803) y IEND(810) se utilizan para las condiciones


de ejecucin, junto con los bits, incluidas en los programas de bloques.
Si se va a ejecutarA o B, entonces IF A ELSE B IEND se utilizan como se
muestra a continuacin.
Condicin de
ejecucin

Condicin de
ejecucin ON?

A ejecutado (entre
IF y ELSE).

B ejecutado (despus de ELSE).

Si se va a ejecutarA o nada , entonces IF A IEND se utilizan como se muestra a


continuacin.
Condicin
de ejecucin

Condicin
de ejecucin ON?

A ejecutado (entre
IF y IEND).

Si la ejecucin va a esperar hasta que una condicin de ejecucin o un bit est


en ON (p. ej. en las progresiones de pasos), entonces se utilizar WAIT(805).
Si la ejecucin va a esperar hasta que se especifique un periodo de tiempo (p.
ej. en las progresiones de pasos programados), entonces se utilizar
TIMW(813) o TMHW(815).
Si la ejecucin va a esperar hasta que se alcance el tiempo especificado (p. ej.
en las progresiones de pasos con contadores), entonces se utilizar
CNTW(814).
Si la ejecucin se va a repetir en una parte del programa de bloques hasta que
se cumpla una condicin, entonces se utilizar LOOP(809) y LEND(810).
Si la ejecucin del programa de bloques va a finalizar a mitad del programa, basndose en una condicin de ejecucin, se utilizar EXIT(806).

739

Instrucciones de programacin de bloques

Seccin 3-30

Si otro programa de bloques que se est ejecutando se va a parar o reiniciar


desde un programa de bloques, entonces se utilizarn BPPS(811) y
BPRS(812).

Instrucciones con condiciones de ejecucin dentro de programas de bloques


Las siguientes instrucciones pueden tomar condiciones de ejecucin dentro de
un programa de bloques.
Tipo de instruccin
Instrucciones de programacin
p g
de
bl
bloques

Instrucciones de diagrama de rels

Nombre de
instruccin

Mnemnico

IF (NOT)

IF(802) (NOT)

ONE CYCLE AND


WAIT (NOT)
EXIT

WAIT(805) (NOT)
EXIT(806) NOT

LOOP END

LEND(810) NOT

CONDITIONAL
JUMP
CONDITIONAL
JUMP NOT

CJP(510)
CJPN(511)

Instrucciones con restricciones de aplicacin dentro de programas de bloques


Las instrucciones listadas en la siguiente tabla slo se pueden utilizar para crear
condiciones de ejecucin de IF(802), WAIT(805), EXIT(806), LEND(810),
CJP(510) o CJPN(511) y no se pueden utilizar de forma aislada. La ejecucin de
estas instrucciones es impredecible si se utilizan de forma aislada o en combinacin con otras instrucciones.
Mnemnico

Nombre

LD/LD NOT

LOAD/LOAD NOT

AND/AND NOT

AND/AND NOT

OR/OR NOT

OR/OR NOT

UP/DOWN

CONDITION ON/CONDITION OFF

>, <,=, >=, <=, <> (S) (L)


LD TST/TST NOT

Instrucciones de comparacin de
smbolos (instrucciones no de derecha)
Instrucciones LOAD BIT TEST

AND TST/TST NOT

Instrucciones AND Bit Test

OR TST/TST NOT

Instrucciones OR BIT TEST

>$, <$,=$, >=$, <=$, <>$

Instruccin de comparacin de cadenas


de texto

Ejemplo correcto

Ejemplo incorrecto
Utilizado
como condicin de
ejecucin
para IF.

740

No se
puede utilizar como
condicin
de ejecucin para
MOV(021)
.

Instrucciones de programacin de bloques

Seccin 3-30

Instrucciones no aplicables a programas de bloques


Las instrucciones listadas en la siguiente tabla no se pueden utilizar dentro de
programas de bloques.
Grupo de
instruccio-nes
Instrucciones
d salida
de
lid de
d
secuencia

Mnemnico

Instrucciones
de
temporizador
y contador

Alternativa

Utilizar SET y RSET.

OUT

OUTPUT

OUT NOT

OUTPUT NOT

DIFU(013)

DIFFERENTIATE UP

Ninguna

DIFD(014)

DIFFERENTIATE
DOWN
KEEP

Ninguna

FOR(512) y
NEXT(513)
BREAK(514)

FOR-NEXT LOOPS

Utilizar LOOP(809) y
LEND(810) (NOT).

IL(002) e
ILC(003)
JMP(004)0 y
JME(005) 0

INTERLOCK e
INTERLOCK CLEAR
Multiple JUMP y
Multiple JUMP END

END(001)

END

TIM

TIMER

TIMH(015)

HIGH-SPEED TIMER

TMHH(540)

ONE-MS TIMER

TTIM(087)

ACCUMULATIVE
TIMER
LONG TIMER

KEEP(011)
Instrucciones
de control de
secuencia

Nombre

TIML(542)
MTIM(543)
CNT

Ninguna

BREAK LOOP

MULTI-OUTPUT
TIMER
COUNTER

Dividir el programa en
bloques ms pequeos.
Utilizar JMP(004) y
JME(005) (pero el salto
se realizar
incondicionalmente).
Utilizar BEND(801).
Utilice TIMW(813),
(
),
TMHW(815) y
CNTW(814) El resto de
CNTW(814).
instrucciones del
programa de bloques no
se ejecutar
hasta que
j
q
el temporizador o el
contador terminen de
contar.

CNTR(012)

REVERSIBLE
COUNTER

Instrucciones
de subrutinas

SBN(092) y
RET(093)

SUBROUTINE
ENTRY y
SUBROUTINE
RETURN

Ninguna

Instrucciones
de
desplazamien
to

SFT(010)

SHIFT REGISTER

Utilizar otras
instrucciones de
desplazamiento.

Instrucciones
de pasos

STEP(???) y
SNXT(???)

STEP y STEP NEXT

Utilizar WAIT(805).

Instrucciones
de control de
datos

PID(190)

PID CONTROL

Ninguna

Instrucciones
de
diagnstico

FPD(269)

FAILURE POINT
DETECTION

Ninguna

Instrucciones
de diferencial
ascendente y
descendente

Mnemnicos
con @

Instrucciones de
diferencial
ascendente
Instrucciones de
diferencial
descendente

Ninguna

Mnemnicos
con %

Ninguna

741

Instrucciones de programacin de bloques

3-30-2

Seccin 3-30

INICIO/FIN DE PROGRAMA DE BLOQUE: BPRG(096)/BEND(801)

Funcin

Definir un rea de programacin de bloques. Para cada BPRG(096) debe haber


un BEND(801) correspondiente.

Smbolos de diagrama de
rels

BLOCK PROGRAM BEGIN


BPRG(096)
N

N: Nmero de programa de
bloques

BLOCK PROGRAM END


BEND(801)

Variacio-- nes

BPRG(096)
Variacio-nes

Ejecutado cada ciclo para condicin ON

Ejecutado una vez para diferencial ascendente


Ejecutado una vez para diferencial
descendente
Especificacin de refresco inmediato

BPRG(096)
No soportado.
No soportado.
No soportado.

BEND(801)
Variacio-- nes

reas de programa
aplicables

reas de programa
de bloques
(Ver nota).

Siempre ejecutado en programa de bloques


reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Nota BPRG(096) slo se permite una vez al principio de cada programa de bloques.
Operandos

Especificaciones de
operandos (BPRG(096))

742

N: Nmero de programa de bloques


El nmero de programa de bloques debe estar comprendido entre 0 y 127 decimal.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin
rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD

---

Constantes

0 a 127

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

---

---

Instrucciones de programacin de bloques


Descripcin

Seccin 3-30

BPRG(096) ejecuta el programa de bloques con el nmero de bloque designado en N, el que va inmediatamente detrs y termina en BEND(801). Todas las
instrucciones comprendidas entre BPRG(096) y BEND(801) se ejecutan con la
condicin de ejecucin ON (incondicionalmente).

Programa de bloques
Se ejecuta cuando la condicin de ejecucin est
en ON.

Cuando la condicin de ejecucin para BPRG(096) es OFF, el programa de bloques no se ejecuta ni se requiere un tiempo de ejecucin para la instruccin en
el programa de bloques.
La ejecucin del programa de bloques se puede detener utilizando BPPS(811)
desde dentro de otro programa de bloques, incluso si la condicin de ejecucin
para BPRG(096) es ON.
Indicadores

BPRG(096)
Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si BPRG(096) ya se est ejecutando.


ON si N no es una constante entre 0 y 127.
ON si se utiliza ms de una vez el mismo nmero de
programa de bloques.
OFF en todos los dems casos.

BEND(801)
Nombre

Operacin

Etique-ta

Indicador de
error

ER

ON si no se est ejecutando un programa de bloques.

Indicador de
igual
Indicador de
negativo

OFF

OFF

OFF en todos los dems casos.

Nota El mtodo de entrada del nmero de bloque, N, es diferente para CX-Programmer que para la consola de programacin. Entrada de #0000 a #007F o &0 a
&127 para CX-Programmer y de #0000 a #007F para la consola de programacin.
Precauciones

Los nmeros de programa de bloques slo se pueden utilizar una vez dentro de
todo el programa del usuario.
Los programas de bloques no se pueden anidar.
Anidamiento imposible.

743

Instrucciones de programacin de bloques

Seccin 3-30

Si el programa de bloques est en una seccin enclavada del programa y la condicin de ejecucin para IL(002) es OFF, el programa de bloques no se ejecutar.

BPRG(096) y el correspondiente BEND(801) deben estar en la misma tarea.


Se producir un error y el indicador de error se pondr en ON si BPRG(096) est
enmedio de un programa de bloques, BEND(801) no est en un programa de
bloques, N no est entre #0000 y #007F (binario), no hay programa de bloques o
si se utiliza ms de una vez el mismo nmero de programa de bloques.
Los indicadores de igual y de negativo se pondrn en OFF y se ejecutar
BEND(801).
Ejemplos

Cuando CIO 000000, en el siguiente ejemplo, est en ON se ejecuta el programa de bloques 0. Cuando CIO 000000 est en OFF, no se ejecuta el programa
de bloques.

Programa de bloques 0

Las dos secciones del programa que se muestran a continuacin ejecutan


MOV(???), ++B(???) y SET para la misma condicin de ejecucin (si
CIO 000000 se pone en ON).

744

Instrucciones de programacin de bloques

3-30-3

Seccin 3-30

PAUSA/REINICIO DE PROGRAMA DE BLOQUE:


BPPS(811)/BPRS(812)
Detiene y reinicia el programa de bloques especificado desde otro programa de
bloques.

Funcin

Smbolo de diagrama de
rels

BPPS(811)

BPRS(812)

Variacio-- nes

Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

N: Nmero de programa
de bloques

Siempre ejecutado en programa de bloques

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Nota BPRG(096) y BPRS(812) se deben utilizar en las regiones de programacin de


bloques, incluso dentro de las subrutinas y las tareas de interrupcin.
Operandos

Especificaciones de
operandos

Descripcin

N: Nmero de programa de bloques


El nmero de programa de bloques debe estar comprendido entre 0 y 127 decimal.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin

---

rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

0 a 127

BPPS(811) se utiliza dentro de un programa de bloques para detener la ejecucin de otro programa de bloques especificado en N, el nmero de programa de
bloques. BPPS(811) detiene el programa incluso si BPRG(096) tiene una condicin de ejecucin ON. El programa de bloques no se reiniciar hasta que se ejecute BPRS(812).

745

Instrucciones de programacin de bloques

Seccin 3-30

BPRS(812) reinicia el programa de bloques especificado en N, el nmero del


programa de bloques. Una vez iniciado, este programa se ejecutar mientras
BPRG(096) disponga de una condicin de ejecucin ON para l.

a
a

Indicadores

a
BPPS(811) ejecutado para programa de
bloques n.

Programa de bloques n.
Una vez que se ha detenido, este programa de bloques no se ejecutar aunque el bit a est en ON.

Nombre
Indicador de
error

Programa de bloques n. Este


programa de bloques no se
ejecutar mientras el bit a est en ON.

Operacin

Etique-ta

ER

BPRS(812) ejecutado
para programa de
bloques n.

ON si BPPS(811) o BPRS(812) no estn en un


programa de bloques.
ON si N no est entre 0 y 127.

Indicador de
igual
Indicador de
negativo

OFF en todos los dems casos.


OFF

OFF

Nota El mtodo de entrada del nmero de bloque, N, es diferente para CX-Programmer que para la consola de programacin. Entrada de 0 a 127 para el CX-Programmer y de 0 a 127 para la consola de programacin.
Precauciones

746

Si BPPS(811) o BPRS(812) no estn en un programa de bloques o si N no est


entre #0000 y #007F (binario), se producir un error y el indicador de error se
pondr en ON.
BPPS(811) se utiliza para detener el programa de bloques en el que est incluido. Cuando se utiliza BPRS(812) para reiniciar el programa de bloques desde
otro programa de bloques, el programa que se ha detenido se reinicia desde la
siguiente instruccin despus de BPPS(811).
Si un programa de bloques interrumpido contiene TIMW(813) o TMHW(815), el
PV del tiempo seguir transcurriendo, incluso durante la interrupcin.

Instrucciones de programacin de bloques

Seccin 3-30

El siguiente diagrama incluye un ejemplo bsico de cmo detener un programa de bloques.

Ejemplo

Programa de bloques 0

El programa de bloques 1 se detendr si


CIO 000000 y CIO 000001 estn en ON.

Si se ejecut BPPS(811) en el programa


de bloques 0, el programa 1 no se ejecutar incluso si CIO 000002 est en ON.

Programa de
bloques 1

Nota Si el programa de bloques que se est interrumpiendo aparece despus de


BPPS(811), no se ejecutar. Si aparece antes, se detendr al iniciarse el siguiente ciclo.
Si CIO 000000 est en ON, el siguiente programa detendr la ejecucin del programa 1 o del 2 dependiendo del estado de CIO 000001. El programa de bloques que se interrumpi se iniciar transcurridos 10 segundos.
Direccin Instruccin
0

Detiene el programa de bloques 1


Detiene el programa de bloques 2

Reinicia el programa de bloques 1


Reinicia el programa de bloques 2

000000
000001
000002
000003
000004
000005
000006
000007

LD
BPRG(096)
IF(802)
BPPS(811)
ELSE(803)
BPPS(811)
IEND(804)
TIMW(803)

000000
00
000001
01
02

#
000008
000009
000010

3-30-4

Operandos

BPRS(812)
BPRS(812)
BEND(801)

0000
0100
1
2

Bifurcaciones: IF(802), ELSE(803) y IEND(804)

Funcin

Origina la bifurcacin del programa de bloques, basndose en una condicin de


ejecucin o en el estado de un bit de operando.

Smbolo de diagrama de
rels

IF(802)

B: Bit de operando

IF(802)
IF(802) NOT

ELSE(803)
IEND(804)

Variacio-- nes

Variacio-nes

Siempre ejecutado en programa de bloques

747

Instrucciones de programacin de bloques


reas de programa
aplicables

reas de programa
de bloques
OK

Seccin 3-30
reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Nota IF(802), ELSE(803) y IEND(804) se deben utilizar en las regiones de programacin de bloques, incluso dentro de las subrutinas y las tareas de interrupcin.
Especificaciones de
operandos

rea

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115
A00000 a A44715
A44800 a A95915

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

Indicadores de tarea

TK0000 a TK0031

Indicadores de
condicin

ER, CY, >, =, <, N, OF, UF, >=, <>, <=, ON, OFF, AER

Pulsos de reloj

0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Operacin de IF(802) sin operando


Si no se especifica un bit de operando, se deber crear una condicin de ejecucin previa a IF(802) que comience por LD. Si la condicin de ejecucin es ON,
se ejecutarn las instrucciones comprendidas entre IF(802) y ELSE(803) y si es
OFF, se ejecutarn las instrucciones entre ELSE(803) y IEND(804).
Condicin de
ejecucin

Condicin de
ejecucin ON?

A ejecutado (entre
IF y ELSE).

748

B ejecutado (despus de ELSE).

Instrucciones de programacin de bloques

Seccin 3-30

Si se omite la instruccin ELSE(803) y la condicin de ejecucin es ON, se ejecutarn las instrucciones comprendidas entre IF(802) y IEND(804) y si es OFF,
slo se ejecutarn las instrucciones posteriores a IEND(804).
Condicin de
ejecucin

Condicin
de ejecucin ON?

A ejecutado (entre
IF y IEND).

Operacin de IF(802) o IF NOT(802) con un operando


Se puede especificar un bit de operando, B, para IF(802) o IF NOT(802). Si el bit
de operando est en ON, se ejecutarn las instrucciones entre IF(802) y ELSE(803). Si el bit de operando est en OFF, se ejecutarn las instrucciones entre ELSE(803) e IEND(804). En el caso de IF NOT(802), si el bit de operando
est en ON se ejecutarn las instrucciones entre IF(802) y ELSE(803), y si el bit
de operando est en OFF, se ejecutarn las instrucciones entre ELSE(803) e
IEND(804).
Bit de operando ON?

A ejecutado (entre
IF y ELSE).

B ejecutado
(despus de ELSE).

Si se omite la instruccin ELSE(803) y el bit de operando est en ON, se ejecutarn las instrucciones comprendidas entre IF(802) e IEND(804) y si est en
OFF, slo se ejecutarn las instrucciones posteriores a IEND(804). Lo mismo se
aplica al estado contrario del bit de operando si se utiliza IF NOT(802).
Bit de operando ON?

A ejecutado (entre
IF y IEND).

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si las instrucciones de bifurcacin no estn en un


programa de bloques.
ON si hay ms de 254 bifurcaciones anidadas.
OFF en todos los dems casos.

Indicador de
igual

OFF

Indicador de
negativo

OFF

749

Instrucciones de programacin de bloques

Seccin 3-30

Precauciones

Las instrucciones realizadas en los programas de bloques, por lo general, se


ejecutan incondicionalmente. No obstante, la bifurcacin se puede utilizar para
crear una condicin de ejecucin basada en las condiciones de ejecucin o de
los bits de operandos.
Utilice IF A ELSE B IEND para originar la bifurcacin entre A y B.
Utilice IF A IEND si se cumple la condicin ejecutar A y si no pase al siguiente
bloque.
Se pueden anidar las bifurcaciones hasta 253 niveles.
Si las instrucciones de bifurcacin no estn en un programa de bloques o si hay
ms de 254 bifurcaciones anidadas, se producir un error y el indicador de error
se pondr en ON.
Los indicadores de igual y de negativo se pondrn en ON cuando se ejecuten
IF(802), ELSE(803) o IEND(804).

Bifurcaciones de
anidamiento

En la bifurcacin superior se pueden anidar hasta 253 bifurcaciones.

Ejemplos

El siguiente ejemplo muestra dos programas de bloques diferentes controlados


por CIO 000000 y CIO 000002.
El primero ejecuta una de las dos sumas en funcin del estado de CIO 000001.
Este bloque se ejecuta cuando CIO 000000 est en ON. Si CIO 000001 est en
ON, 0001 se suma al contenido de CIO 0001. Si CIO 000001 est en OFF, 0002
se suma al contenido de CIO 0001. En cualquier caso, el resultado se enva a
D00000.
El segundo bloque se ejecuta cuando CIO 000002 est en ON y muestra dos
niveles de anidamiento. Si ambos, CIO 000003 y CIO 000004, estn en ON, se
suman los contenidos de CIO 1200 y de CIO 0002 y el resultado se enva a
D00010; a continuacin, 0001 se mueve a D0001, basndose en el estado de
CY. Si CIO 000003 o CIO 000004 est en OFF, se salta toda la operacin de
suma y CIO 000301 se pone en ON.

750

Instrucciones de programacin de bloques

Seccin 3-30

000000

IF(802)
+B(404)

ELSE(803)
+B(404)

IEND(804)
BEND(801)

000001

Direc-cin

Instruccin

000000

LD

000001

BPRG(096)

000002

IF(802)

000003

+B(404)

Operan-dos
000000

0001
#0001
D00000

0001
#0001
D00000

0001
#0002
D00000

000004

ELSE(803)

000005

+B(404)
0001
#0002
D00000

000002
000006

IEND(804)

000007

BEND(801)

000008

LD

000003
000004

000009

BPRG(096)

000010

LD

000003

000011

AND

000004

1200
0002
D00010
CY

000012

IF(802)

000013

+B(404)

LD
AND
IF(802)
+B(404)

IF(802)
MOV(030)

000002
1

1200
0002

#0001
D00011

IEND(804)
ELSE(803)
SET(016)
IEND(804)
BEND(801)

3-30-5

00
000001

D00010

000301

000014

IF(802)

000015

MOV(030)

A50004
#0001
D00011

000016

IEND(804)

000017

ELSE(803)

000018

SET(016)

000019

IEND(804)

000020

BEND(801)

000301

SALIDA DE BLOQUE CONDICIONAL (NOT): EXIT (NOT)(806)

Funcin

Sale del programa de bloques, es decir, no ejecuta ninguna otra instruccin en


el programa de bloques utilizando BEND(801), en funcin del estado del bit de
operando o de la condicin de ejecucin. EXIT(806) sin un bit de operando sale
del programa si la condicin de ejecucin est en ON. EXIT(806) con un bit de
operando sale del programa si el bit est en ON. EXIT NOT(806) debe tener un
bit de operando y sale del programa si el bit est en OFF.

Smbolo de diagrama de
rels

Variacio-- nes

reas de programa
aplicables

EXIT(806)

Variacio-nes

EXIT(806)

EXIT NOT(806)

Siempre ejecutado en programa de


bloques

reas de programa
de bloques
OK

B: Bit de operando

reas de programa
de pasos
OK

EXIT(806)
EXIT(806)

EXIT NOT(806)

Subrutinas
OK

Tareas de
interrupcin
OK

751

Instrucciones de programacin de bloques

Seccin 3-30

Nota EXIT(806) y EXIT NOT(806) se deben utilizar en las regiones de programacin


de bloques, incluso dentro de las subrutinas y las tareas de interrupcin.
Especificaciones de
operandos

rea

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115
A00000 a A44715
A44800 a A95915

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

Indicadores de tarea

TK0000 a TK0031

Indicadores de
condicin
Pulsos de reloj

ER, CY, >, =, <, N, OF, UF, >=, <>, <=, ON, OFF, AER

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD

---

Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Operacin sin operando


EXIT(806) se puede ejecutar sin un operando. Si se ejecuta de este modo, es
necesario crear una condicin de ejecucin que comience por LD. Si la condicin de ejecucin es OFF, el resto del programa se ejecutar con normalidad. Si
la condicin de ejecucin es ON, no se ejecutarn el resto de las instrucciones
en el programa de bloques utilizando BEND(801).
Condicin
de ejecucin OFF

Condicin
de ejecucin ON

A ejecutado. A ejecutado.

Condicin de ejecucin

B ejecutado.

Bloque finalizado.

Operacin con un operando


Si el bit de operando B est en OFF para EXIT(806), el resto del programa de

752

Instrucciones de programacin de bloques

Seccin 3-30

bloques se ejecutar con normalidad. Si el bit de operando est en ON para


EXIT(806), el resto de las instrucciones en el programa de bloques no se ejecutarn con BEND(801). En el caso de EXIT NOT(806), se ejecutar el resto del
programa de bloques si el bit de operando est en ON y se evitar si est en
OFF.
Bit de operando en OFF
(ON para
EXIT NOT)

Bit de operando
en ON
(OFF para EXIT
NOT)

A ejecutado. A ejecutado.

B ejecutado.

Bloque finalizado.

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si EXIT(806) o EXIT NOT(806) no estn en un


programa de bloques.
OFF en todos los dems casos.

Indicador de
igual
Indicador de
negativo

OFF

OFF

Precauciones

Si EXIT(806) o EXIT NOT(806) no estn en un programa de bloques, se producir un error y el indicador de error se pondr en ON.

Ejemplos

Si CIO 000000 est en OFF, se ejecutar el programa de bloques. Si


CIO 000001 est en ON, se ejecutar A, se omitir B y el programa pasar directamente a BEND(801). La seccin B del programa continuar omitindose
hasta que CIO 000001 se vuelva a poner en ON.
Aunque la programacin de EXIT (NOT)(806) y de IF-IEND sean parecidas, el
tiempo de ejecucin de EXIT (NOT)(806), normalmente, es inferior porque des-

753

Instrucciones de programacin de bloques

Seccin 3-30

de EXIT (NOT)(806) hasta el final del programa no se ejecuta ninguna instruccin.


CIO 000001 ON CIO 000001 OFF
0

Bloque finalizado
CIO 000003 y

2 CIO 000004 ON

CIO 000003 o
CIO 000004 OFF

Bloque finalizado

3-30-6

UN CICLO Y ESPERA (NOT): WAIT(805)/WAIT(805) NOT


Detiene la ejecucin del resto del programa de bloques hasta que la condicin
de ejecucin se pone en ON y el bit de operando pasa a ON o a OFF.

Funcin
Smbolo de diagrama de
rels

WAIT(805)
WAIT(805)

WAIT(805) NOT

Variacio-- nes

Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

B: Bit de operando

Siempre ejecutado en programa de bloques


reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Nota WAIT(805)/WAIT(805) NOT se deben utilizar en las regiones de programacin


de bloques, incluso dentro de las subrutinas y las tareas de interrupcin.
Especificaciones de
operandos

rea

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin
rea de bits auxiliares

H00000 a H51115
A00000 a A44715
A44800 a A95915

754

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

Indicadores de tarea

TK0000 a TK0031

Indicadores de
condicin

ER, CY, >, =, <, N, OF, UF, >=, <>, <=ON, OFF, AER

Pulsos de reloj

0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

Instrucciones de programacin de bloques

Seccin 3-30

rea

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Operacin sin operando


Si no se especifica ningn bit de operando, ser necesario crear una condicin
de ejecucin previa a WAIT(805)/WAIT(805 NOT que comience por LD. Si la
condicin de ejecucin es ON para WAIT(805), se omitir el resto de la instruccin en el programa de bloques. En el ciclo siguiente, no se ejecutar ninguna
parte del programa de bloques, excepto la condicin de ejecucin para
WAIT(805). Si la condicin de ejecucin es ON, se ejecutar la instruccin desde WAIT(805) hasta el final del programa.
Condicin
de ejecucin OFF

Condicin Condicin
de ejecu- de ejecucin OFF cin ON

A ejecutado.

B ejecutado.

Condicin de
ejecucin

C ejecutado.

C ejecu- C ejecutado.
tado.

Esperar

Operacin con un operando


Se puede especificar un bit de operando, B, para WAIT(805) o para WAIT
NOT(805). Si el bit de operando est en OFF (ON para WAIT NOT(805)), se
omitirn el resto de la instrucciones en el programa de bloques. En el ciclo siguiente, no se ejecutar ninguna parte del programa de bloques, excepto la
condicin de ejecucin para WAIT(805) o WAIT(805) NOT. Cuando la condicin

755

Instrucciones de programacin de bloques

Seccin 3-30

de ejecucin se ponga en ON (OFF para WAIT(805) NOT), se ejecutarn las


instrucciones desde WAIT(805) o WAIT(805) NOT hasta el final del programa.

Bit de operando OFF

Bit de operando OFF

Bit de operando ON

A ejecutado.

B ejecutado.

C ejecutado.

C ejecu- C ejecutado.
tado.

Esperar

Indicadores

Nombre

Operacin

Etique-ta

Indicador de
error

ER

ON si WAIT(805) o WAIT(805) NOT no estn en un


programa de bloques.

Indicador de
igual
Indicador de
negativo

OFF en todos los dems casos.


OFF

OFF

WAIT(805) y WAIT(805) NOT se pueden utilizar en progresiones de pasos dentro de un programa de bloques.

Precauciones

Si WAIT(805) o WAIT(805) NOT no estn en un programa de bloques, se producir un error y el indicador de error se pondr en ON.
Los indicadores de igual y de negativo se pondrn en OFF cuando se ejecute
WAIT(805) o WAIT(805) NOT.
Nota Las direcciones de programa de las instrucciones WAIT con operandos especificados y las de la primera instruccin que crea la condicin de ejecucin para
las instrucciones WAIT sin operandos se registran en memoria para permitir
que la ejecucin contine basada en el operando de bit/condicin de ejecucin.
Si la edicin online se realiza desde un dispositivo perifrico, el estado WAIT se
borrar y el programa de bloques se volver a ejecutar desde el principio.
Cuando CIO 000000, en el siguiente ejemplo, est en ON se ejecuta el programa de bloques 00. La ejecucin se llevar a cabo del siguiente modo:

Ejemplos
1, 2, 3...

1. Si CIO 000001 est en OFF, no se ejecutar ninguna parte del programa de


bloques hasta que CIO 000001 se ponga en ON. Si CIO 000001 se pone en
ON, se ejecutar A.
2. Si CIO 000002 est en OFF, una vez ejecutadoA, el resto del programa de
bloques no se ejecutar hasta que CIO 000002 se ponga en ON. Si
CIO 000002 se pone en ON, se ejecutar B.

756

Instrucciones de programacin de bloques

Seccin 3-30

3. Si CIO 000003 est en OFF, una vez ejecutadoB, el resto del programa de
bloques no se ejecutar hasta que CIO 000003 se ponga en ON. Si
CIO 000003 se pone en ON, se ejecutar C y se repetir la ejecucin.

CIO 00000
1 ON y
CIO 000 CIO 00000
001
2 OFF
OFF

CIO 00000
1 ON,
CIO 00000
2 ON y
CIO 000001,
CIO 00000 CIO 00002 y
3 OFF
CIO 000003
ON

La siguiente tabla muestra la relacin entre los bits de operando y la ejecucin


de los programas de bloques.
Bits de operando

Ejecucin del programa

CIO 000001

CIO 000002

CIO 000003

Primer ciclo,
CIO 000000 en ON
Nada ejecutado.

Siguiente ciclo

OFF

Cualquier
estado

Cualquier
estado

ON

OFF

Cualquier
estado

A ejecutado.

Esperando a
CIO 000002.

ON

ON

OFF

A y B ejecutados.

Esperando a
CIO 000003.

ON

ON

ON

A, B y C
ejecutados.

A, B y C
ejecutados.

Nada ejecutado;
esperando a
CIO 000001.

Ciclos posteriores
Cuando CIO 000001
se pone en ON, se
ejecuta A y se
comprueba el estado
de CIO 000002.
Cuando CIO 00002 se
pone en ON, se
ejecuta B y se
comprueba el estado
de CIO 000003.
Cuando CIO 000003
se pone en ON, se
ejecuta C.

Como se muestra en el ejemplo, WAIT(805) y WAIT(805) NOT se pueden utilizar para ejecutar los pasos progresivamente dentro de un programa de bloques.

757

Instrucciones de programacin de bloques

3-30-7

Seccin 3-30

TEMPORIZADOR DE ESPERA: TIMW(813)


Retrasa la ejecucin del resto del programa de bloques hasta que haya transcurrido el tiempo especificado. La ejecucin continuar a partir de la instruccin
siguiente a TIMW(813) cuando el temporizador finalice la operacin.

Funcin

Smbolo de diagrama de
rels

TIMW(813)

Variacio-- nes

Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

N
SV

N: Nmero de
temporizador
SV: Valor seleccionado

Siempre ejecutado en programa de bloques


reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
No se admite

Nota TIMW(813) se debe utilizar en regiones de programacin de bloques, incluso en


subrutinas.
Operandos
Especificaciones de
operandos

N: Nmero de temporizador
0000 a 4095
rea

SV

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A000 a A447

rea de temporizador

T0000 a T4095

T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767
(n = 0 a C)
#0000 a #9999

Constantes

---

Registros de datos

---

---

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

(BCD)

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

758

Instrucciones de programacin de bloques


Descripcin

Seccin 3-30

TIMW(813) crea un temporizador de cuenta atrs (temporizador de 100 ms en


SV) entre la ejecucin de la instruccin del programa de bloques anterior y posterior. TIMW(813) puede contar de 0 a 999,9 s con una precisin de 0 a 0,01 s.
La primera parte del programa de bloques se ejecuta la primera vez que se activa el programa. Cuando se alcanza TIMW(813), el indicador de finalizacin se
restablece a OFF, el temporizador se preselecciona a SV y la ejecucin del resto
del programa de bloques espera hasta que finalice SV.
Mientras el temporizador cuenta hacia atrs, slo se ejecutar TIMW(813) para
actualizarlo. Cuando el temporizador termina de contar, el indicador de finalizacin se pone en ON y el resto del programa de bloques se ejecuta. Una vez ejecutado todo el programa, se repite el proceso.
TIMW(813) es similar a una instruccin WAIT con un temporizador para la condicin de ejecucin que se puede utilizar para las progresiones de pasos programados.

A ejecutado y SV
preseleccionado.
Tiempo transcurrido.

B ejecutado.

C ejecutado.

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si TIMW(813) no est en un programa de bloques.


ON si se utiliza una designacin de IR indirecta para N y
la direccin no corresponde a un valor actual del
temporizador.
ON cuando SV no es BCD.

Indicador de
igual
Indicador de
negativo

Precauciones

OFF en todos los dems casos.


OFF

OFF

El resto del programa de bloques posterior a TIMW(813) se ejecutar si el indicador de finalizacin para el temporizador est en set forzado.
Si el indicador de finalizacin del temporizador est en reset forzado, slo se
ejecutar TIMW(813) en el programa de bloques hasta que el estado de reset
forzado se borre.
Se actualizar el valor actual de los temporizadores programados con nmeros
de temporizador entre 0000 y 2047, aunque el temporizador est en standby. Se
mantendr el valor actual de los temporizadores programados con nmeros de
temporizador entre 2048 y 4095 cuando el temporizador est en standby.
Los nmeros del temporizador tambin se utilizan en otras instrucciones de
temporizador. La operacin no ser predecible si se utiliza el mismo nmero de
temporizador para ms de una instruccin de temporizador. Utilice los nmeros
de temporizador una sola vez. En el caso de que slo uno de los temporizadores
est operando al mismo tiempo, podr utilizar el mismo nmero de temporiza-

759

Instrucciones de programacin de bloques

Seccin 3-30

dor. Si se utiliza el mismo nmero de temporizador en ms de una instruccin de


temporizador, se producir un error en la comprobacin del programa.
Si se utiliza una designacin de IR indirecta para N y la direccin no corresponde al valor actual del temporizador o si SV no es BCD, se producir un error y el
indicador de error se pondr en ON.
Los indicadores de igual y de negativo se pondrn en OFF cuando se ejecute
TIMW(813).
Ejemplos

En el siguiente ejemplo, se ejecuta B durante 20 segundos despus de A,


siempre que CIO 000000 est en ON.

Fin temporizacin.

Direccin

Instruccin

Operando

000200

LD

000000

000201

BPRG

.
.
000210

.
.
0001

TIMW

#0200
.
.

.
.

000220

BEND

---

La ejecucin del programa pasar de 2 a 3 y a 4 y volver a 2 en los 20 s previos


a la ejecucin de B, como se muestra en el siguiente diagrama.

760

Instrucciones de programacin de bloques

3-30-8

Seccin 3-30

CONTADOR DE ESPERA: CNTW(814)


Retrasa la ejecucin del resto del programa de bloques hasta alcanzar el contaje especificado. La ejecucin continuar desde la instruccin siguiente a
CNTW(814) cuando el contador finalice la operacin.

Funcin

Smbolo de diagrama de
rels

CNTW(814)

Variacio-- nes

Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

N
SV
I

N: Nmero de contador
SV: Valor seleccionado
I: Entrada de contaje

Siempre ejecutado en programa de bloques

reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Nota CNTW(814) se debe utilizar en las regiones de programacin de bloques, incluso dentro de las subrutinas y las tareas de interrupcin.
Operandos
Especificaciones de
operandos

N: Nmero de contador
0000 a 4095
rea

SV

rea CIO

---

CIO 0000 a
CIO 6143

CIO 000000 a
CIO 614315

rea de trabajo

---

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

---

H000 a H511

---

A000 a A447

W00000 a
W51115
H00000 a
H51115
A00000 a
A44715

A448 a A959

rea de temporizador

---

T0000 a T4095

A44800 a
A95915
T0000 a T4095

rea de contador

C0000 a C4095

C0000 a C4095

C0000 a C4095

Indicadores de tarea

---

Indicadores de
condicin

---

Pulsos de reloj

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario

---

D00000 a
D32767
E00000 a
E32767
En_00000 a
En_32767
(n = 0 a C)
@ D00000 a @
D32767

TK0000 a
TK0031
ER, CY, >, =, <,
N, OF, UF, >=,
<>, <=, ON,OFF,
AER
0,02 s, 0,1 s, 0,2
s, 1 s, 1 min.
-------

---

@ E00000 a
@ E32767
@ En_00000 a
@ En_32767
(n = 0 a C)

761

Instrucciones de programacin de bloques


rea
Direcciones de DM/EM
indirectas en BCD

Seccin 3-30
N

SV
*D00000 a
*D32767

---

I
---

*E00000 a
*E32767
*En_00000 a
*En_32767
Constantes

(n = 0 a C)
#0000 a #FFFF

---

---

(binario)
Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

CNTW(814) crea un contador de disminucin que retrasa la ejecucin de las


instrucciones posteriores en el programa de bloques hasta que el contador haya finalizado la operacin. El valor seleccionado se especifica en BCD entre
0000 y 9999.
La primera parte del programa de bloques se ejecuta la primera vez que se activa el programa. Cuando se alcanza CNTW(814), el indicador de finalizacin se
restablece a 0, el contador se preselecciona a SV y la ejecucin del resto del
programa de bloques espera hasta que el contador haya finalizado la operacin. El contador cuenta los pulsos (diferencial ascendente) de I, la entrada de
contaje.
Mientras el contador cuenta hacia atrs, slo se ejecutar CNTW(814) para actualizarlo. Cuando el contador termina de contar, el indicador de finalizacin se
pone en ON y el resto del programa de bloques se ejecuta. Una vez ejecutado
todo el programa, se repite el proceso.
CNTW(814) es similar a una instruccin WAIT con un contador para la condicin de ejecucin que se puede utilizar para las progresiones de pasos programados.

A ejecutado
SV preseleccionado.
Tiempo transcurrido.

B ejecutado.
C ejecu- C ejecutado.
tado.

762

C ejecutado.

Instrucciones de programacin de bloques


Indicadores

Nombre
Indicador de
error

Seccin 3-30
Operacin

Etique-ta

ER

ON si CNTW(814) no est en un programa de bloques.


ON si se utiliza una designacin de IR indirecta para N y
la direccin no corresponde a un valor actual del
contador.
ON si SV no es BCD con modo BCD seleccionado.

Precauciones

Indicador de
igual

OFF en todos los dems casos.


OFF

Indicador de
negativo

OFF

El resto del programa de bloques posterior a CNTW(814) se ejecutar si el indicador de finalizacin para el contador est en set forzado.
Si el indicador de finalizacin del contador est en reset forzado, slo se ejecutar CNTW(814) en el programa de bloques hasta que el estado de reset forzado se borre.
Los nmeros del contador tambin se utilizan en otras instrucciones de contador. La operacin no ser predecible si se utiliza el mismo nmero de contador
para ms de una instruccin de contador. Utilice los nmeros de contador una
sola vez. En el caso de que slo uno de los contadores est operando al mismo
tiempo, podr utilizar el mismo nmero de contador. Si se utiliza el mismo nmero de contador en ms de una instruccin de contador, se producir un error en
la comprobacin del programa.
Si se utiliza una designacin de IR indirecta para N y la direccin no corresponde al valor actual del contador, se producir un error y el indicador de error se
pondr en ON.
Los indicadores de igual y de negativo se pondrn en OFF cuando se ejecute
CNTW(814).

Ejemplos

Cuando CIO 000000 est en ON, como en el siguiente ejemplo, se ejecuta A y


el resto del programa de bloques B se ejecuta cuando CIO 000100 se haya
contado 7.000 veces.

CIO 000100
contado.

Actualizado
Actualizado

Fin de contaje.

763

Instrucciones de programacin de bloques

Seccin 3-30

Direccin

Instruccin

Operando

000200

LD

000000

000201

BPRG

.
.
000210

.
.
0005

CNTW

#7000
000100
.
.
000220

.
.
---

BEND

La ejecucin del programa pasar de 2 a 3 y a 4 y volver a 2 durante los 7.000


recuentos previos a la ejecucin de B, como se muestra en el siguiente diagrama.

1 4

3-30-9

TEMPORIZADOR DE ALTA VELOCIDAD DE ESPERA:


TMHW(815)
Retrasa la ejecucin del resto del programa de bloques hasta que haya transcurrido el tiempo especificado. La ejecucin continuar desde la instruccin siguiente a TMHW(815) cuando termine el temporizador.

Funcin

Smbolo de diagrama de
rels

TMHW(815)

Variacio-- nes

Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

N
SV

N: Nmero de
temporizador
SV: Valor seleccionado

Siempre ejecutado en programa de bloques


reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
No se admite

Nota TMHW(815) se debe utilizar en regiones de programacin de bloques, incluso


en subrutinas.
Operandos
Especificaciones de
operandos

N: Nmero de temporizador
0000 a 4095
rea

SV

rea CIO

---

CIO 0000 a CIO 6143

rea de trabajo

---

W000 a W511

rea de bits de
retencin

---

H000 a H511

rea de bits auxiliares

---

A000 a A447
A448 a A959

764

Instrucciones de programacin de bloques

Seccin 3-30

rea
rea de temporizador

N
T0000 a T4095

SV
T0000 a T4095

rea de contador

---

C0000 a C4095

rea DM

---

D00000 a D32767

rea EM sin banco

---

E00000 a E32767

rea EM con banco

---

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

---

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a
@ En_32767

Direcciones de DM/EM
indirectas en BCD

---

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

---

(n = 0 a C)
#0000 a #FFFF
(binario)

Registros de datos

---

DR0 a DR15

Registros de ndice

---

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

TMHW(815) crea un temporizador de cuenta atrs (temporizador de 10 ms en


SV) entre la ejecucin de la instruccin del programa de bloques anterior y posterior. TMHW(815) puede contar de 0 a 99,99 s con una precisin de 0 a 0,01 s.
La primera parte del programa de bloques se ejecuta la primera vez que se activa el programa. Cuando se alcanza TIMW(813), el indicador de finalizacin se
restablece a OFF, el temporizador se preselecciona a SV y la ejecucin del resto
del programa de bloques espera hasta que finalice SV.
Mientras el temporizador cuenta hacia atrs, slo se ejecutar TMHW(815) para actualizarlo. Cuando el temporizador termina de contar, el indicador de finalizacin se pone en ON y el resto del programa de bloques se ejecuta. Una vez
ejecutado todo el programa, se repite el proceso.

765

Instrucciones de programacin de bloques

Seccin 3-30

TMHW(815) es similar a una instruccin WAIT con un temporizador para la condicin de ejecucin que se puede utilizar en las progresiones de pasos programados.

A ejecutado
SV preseleccionado.

Tiempo transcurrido.

B ejecutado.

C ejecutado.

Indicadores

Nombre
Indicador de
error

Operacin

Etique-ta

ER

ON si TMHW(815) no est en un programa de bloques.


ON si se utiliza una designacin de IR indirecta para N y
la direccin no corresponde a un valor actual del
temporizador.
ON cuando SV no es BCD.

Precauciones

Indicador de
igual

OFF en todos los dems casos.


OFF

Indicador de
negativo

OFF

El resto del programa de bloques posterior a TMHW(815) se ejecutar si el indicador de finalizacin para el temporizador est en set forzado.
Si el indicador de finalizacin del temporizador est en reset forzado, slo se
ejecutar TMHW(815) en el programa de bloques hasta que el estado de reset
forzado se borre.
Se actualizar el valor actual de los temporizadores programados con nmeros
de temporizador entre 0000 y 2047, aunque el temporizador est en standby. Se
mantendr el valor actual de los temporizadores programados con nmeros de
temporizador entre 2048 y 4095 cuando el temporizador est en standby.
Los nmeros del temporizador tambin se utilizan en otras instrucciones de
temporizador. La operacin no ser predecible si se utiliza el mismo nmero de
temporizador para ms de una instruccin de temporizador. Utilice los nmeros
de temporizador una sola vez. En el caso de que slo uno de los temporizadores
est operando al mismo tiempo, podr utilizar el mismo nmero de temporizador. Si se utiliza el mismo nmero de temporizador en ms de una instruccin de
temporizador, se producir un error en la comprobacin del programa.
Si se utiliza una designacin de IR indirecta para N y la direccin no corresponde al valor actual del temporizador o si SV no es BCD, se producir un error y el
indicador de error se pondr en ON.
Los indicadores de igual y de negativo se pondrn en OFF cuando se ejecute
TMHW(815).

766

Instrucciones de programacin de bloques

Seccin 3-30

En el siguiente ejemplo, se ejecuta B durante 20 segundos despus de A,


siempre que CIO 000000 est en ON.

Ejemplos

Direccin

Instruccin

Operando

000221

LD

000001

000222

BPRG

.
.

.
.

000250

TMHW

0002

.
.

.
.

000281

BEND

---

#0020

3-30-10 Control de lazo: LOOP(809)/LEND(810)/LEND(810) NOT


Crea un lazo que se ejecuta constantemente hasta que una condicin de ejecucin se pone en ON o en OFF o hasta que una condicin de ejecucin se ponga
en ON.

Funcin

Smbolo de diagrama de
rels

LOOP(809)
LEND(810)
LEND(810)

LEND(810) NOT

Variacio-- nes

Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

B: Bit de operando

Siempre ejecutado en programa de bloques


reas de programa
de pasos
OK

Subrutinas
OK

Tareas de
interrupcin
OK

Nota LOOP(809), LEND(810) y LEND(810) NOT se deben utilizar en regiones de


programacin de bloques, incluso dentro de subrutinas y tareas de interrupcin.
Especificaciones de
operandos

rea

rea CIO

CIO 000000 a CIO 614315

rea de trabajo

W00000 a W51115

rea de bits de
retencin

H00000 a H51115

rea de bits auxiliares

A00000 a A44715
A44800 a A95915

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

767

Instrucciones de programacin de bloques


rea
Indicadores de tarea

Seccin 3-30
B
TK0000 a TK0031

Indicadores de
condicin
Pulsos de reloj

ER, CY, >, =, <, N, OF, UF, >=, <>, <=, ON,OFF, AER

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

0,02 s, 0,1 s, 0,2 s, 1 s, 1 min.

-----

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

LOOP(809) designa el comienzo del programa de lazo. LEND(810) o


LEND(810) NOT especifica el final del lazo. Cuando no se alcanza LEND(810) o
LEND(810) NOT, la ejecucin del programa enlazar con el LOOP(809) anterior
hasta que el bit de operando para LEND(810) o LEND(810) NOT se ponga en
ON u OFF (respectivamente) o hasta que la condicin de ejecucin para
LEND(810) se ponga en ON.
Utilizacin de una condicin de ejecucin para LEND(810)
LEND(810) se puede programar con o sin bit de operando. Si no se especifica
ningn bit de operando, se deber crear una condicin de ejecucin antes de
LEND(810) que comience por LD. Si la condicin de ejecucin es OFF, la ejecucin del lazo se repetir comenzando con la instruccin siguiente a LOOP(809).
Si la condicin de ejecucin es ON, el lazo finaliza y la ejecucin contina en la
instruccin siguiente a LEND(810).
Condicin Condicin Condicin
de ejecu- de ejecu- de ejecucin ON cin OFF cin OFF

Condicin
de ejecucin OFF

Condicin de ejecucin

Lazo repetido

Utilizacin de un operando de bit para LEND(810) o LEND(810) NOT


LEND(810) y LEND(810) NOT se pueden programar con un bit de operando. Si
el bit de operando est en OFF para LEND(810) (o en ON para LEND(810)

768

Instrucciones de programacin de bloques

Seccin 3-30

NOT), se repite la ejecucin del lazo empezando por la instruccin siguiente a


LOOP(809). Si el bit de operando est en ON para LEND(810) (o en OFF para
LEND(810) NOT), el lazo finaliza y la ejecucin contina con la instruccin siguiente a LEND(810) o LEND(810) NOT.
Bit de
operando ON

Bit de
operando OFF

Bit de
operando OFF

Bit de
operando OFF

LEND R (LEND NOT B)


Lazo repetido

Nota El estado del bit de operando se debe


invertir para LEND(810) NOT.

Nota

Indicadores

1. La ejecucin dentro de un lazo no refresca los datos de E/S. Para refrescar


los datos de E/S durante el lazo, utilice IORF(184).
2. El tiempo de ciclo mximo se puede sobrepasar si se repiten los lazos durante demasiado tiempo. Disee el programa de tal modo que no se exceda
el tiempo de ciclo mximo.
Nombre
Indicador de
error

Precauciones

Operacin

Etique-ta

ER

ON si una instruccin de control de lazo no est en un


programa de bloques.

Indicador de
igual

OFF en todos los dems casos.


OFF

Indicador de
negativo

OFF

No es posible anidar lazos dentro de lazos.


Incorrecto:
LOOP(809)
LOOP(809)
LEND(810)
LEND(810)
No invierta el orden de LOOP y LEND.
Incorrecto:
LEND(810)
:
:
LOOP(809)
Las bifurcaciones de bloques condicionales se pueden utilizar dentro de un lazo, pero debe incluirse la operacin de bifurcacin al completo.
Correcto:

Incorrecto:

LOOP(809)
IF(802)
IF(802)

LOOP(809)
IF(802)
IF(802)

769

Instrucciones de programacin de bloques

Seccin 3-30

IEND(804)
IEND(804)
LEND(810)

IEND(804)
LEND(810)
IEND(804)

El procesamiento de NOP se realizar si LOOP(809) no se ejecuta.


Si una instruccin de control de lazo no est en un programa de bloques, se producir un error y el indicador de error se pondr en ON.
Los indicadores de igual y de negativo se pondrn en ON cuando se ejecuten
las instrucciones de control de lazo.
Ejemplos

Cuando, en el siguiente ejemplo, CIO 000000 est en ON se ejecuta el programa de bloques. Una vez ejecutado A, B y la instruccin siguiente IORF(184)
se ejecutarn continuamente hasta que CIO 000001 se ponga en ON; entonces, se ejecutar C y el programa finalizar.

Condicin
de ejecucin ON

Condicin
de ejecucin OFF

Condicin
de ejecucin OFF

Repeticin

Direccin

Instruccin

Operando

000220

LD

000000

000201

BPRG

.
.
000210

.
.
---

.
.
000220

LOOP

IORF

.
.
.
.
0000
0000

770

000221

LEND

000001

.
.

.
.

000220

BEND

---

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

3-31 Instrucciones de procesamiento de cadenas de texto


En esta seccin se describen las instrucciones para la manipulacin de cadenas de texto.
Instruccin

3-31-1

Mnemnico

MOV STRING

MOV$

Cdigo de
funcin
664

Pgina

CONCATENATE STRING

+$

656

774

GET STRING LEFT

LEFT$

652

777

GET STRING RIGHT

RGHT$

653

779

GET STRING MIDDLE

MID$

654

781

FIND IN STRING

FIND$

660

783

STRING LENGTH

LEN$

650

785

REPLACE IN STRING

RPLC$

661

787

DELETE STRING

DEL$

658

789

EXCHANGE STRING

XCHG$

665

792

CLEAR STRING

CLR$

666

793

INSERT INTO STRING

INS$

657

795

Instrucciones de comparacin
de cadenas

=$, <>$, <$, <=$,


>$, >=$

670 a 675

797

772

Generalidades de procesamiento de cadenas de texto


Los datos comprendidos entre el principio y un cdigo NUL (00 hex.) se consideran datos de cadenas de texto expresados en ASCII (a excepcin del byte 1 y
los caracteres especiales). Se almacenan en bytes, de izquierda a derecha, y
en canales, de derecha a izquierda.
Si existe un nmero impar de caracteres, 00 hex. (cdigo NUL) se almacena en
el espacio disponible en el byte de la derecha del ltimo canal.
Ejemplo: Cadena de texto ABCDE
=

42

Si existe un nmero par de caracteres, 0000 hex. (dos cdigos NUL) se almacenar en los bytes situados a la izquierda y a la derecha del canal siguiente al
ltimo.
Ejemplo: Cadena de texto ABCD
42

El siguiente diagrama muestra cmo se puede especificar una cadena de texto


mediante la designacin del primer canal de dicha cadena. Los datos de la cadena de texto hasta el siguiente cdigo NUL (00 hex.) se considerarn un nico
bloque de datos ASCII.
Ejemplo: MOV$ D00000 D00100

771

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

Las instrucciones de programacin de cadenas de texto se pueden utilizar para


ejecutar en un PLC diferentes tipos de procesamiento de cadenas de texto (datos sobre el producto, etc.) que habitualmente se ejecutan en un ordenador.
Proceso de
cadenas de
texto

Ordenador

Ordenador

PLC
Cadena de texto

Proceso de
cadenas de
texto

Por ejemplo, los datos de un plan de produccin, como los nombres de los productos, se pueden transferir de un ordenador al PLC. De este modo, operaciones como la insercin y reorganizacin de las cadenas de texto se pueden realizar en el PLC directamente, reduciendo as la carga del procesamiento de datos
en el ordenador.
Caracteres ASCII

La siguiente tabla muestra los caracteres ASCII utilizados en las instrucciones


de procesamiento de cadenas de texto.
Los 4 bits de la izquierda

Los cuatro bits de la derecha

S
P

3-31-2

MOVER CADENA: MOV$(664)

Funcin
Smbolo de diagrama de
rels

Transfiere una cadena de texto.


MOV$(664)
S
D

772

S: Primer canal fuente


D: Primer canal de destino

Instrucciones de procesamiento de cadenas de texto


Variacio-- nes

Variacio-nes

Seccin 3-31

Ejecutado cada ciclo para condicin ON

MOV$(664)

Ejecutado una vez para diferencial ascendente

@MOV$(664)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Primer canal fuente


15
S

Cadena de texto: 4.095 caracteres mx. + NUL

a
S + 2.047 canales mximo

D: Primer canal de destino


15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de S a S + un mximo de 2.047 canales y de D a D + un mximo de


2.047 canales deben estar en la misma rea.
2. Los datos de S a S + un mximo de 2.047 canales y de D a D + un mximo de
2.047 canales se pueden solapar.
rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511
A000 a A447

A448 a A959

A448 a A959
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

773

Instrucciones de procesamiento de cadenas de texto


rea
Registros de ndice

Seccin 3-31
S

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

MOV$(664) transfiere los datos de la cadena de texto designada por S, tal y como son, datos de cadena de texto (incluido el ltimo NUL), a D. El nmero mximo de caracteres que S puede designar es 4.095 (0FFF hex.).

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Etique
Operacin
ta
ER
ON si S designa ms de 4.095 caracteres.
OFF en todos los dems casos.
=

ON si se transfiere 0000 (hex.) a D.


OFF en todos los dems casos.

Precauciones

Si S designa ms de 4.095 caracteres, se generar un error y el indicador de


error se pondr en ON.
Si 0000 (hex.) se transfiere a D, el indicador de igual se pondr en ON.

Ejemplo

El siguiente ejemplo muestra cmo MOV$(664) transfiere la cadena de texto


ABCDEF.

S:

3-31-3

D:

CONCATENAR CADENA: +$(656)

Funcin

Vincula una cadena de texto a otra.

Smbolo de diagrama de
rels

Variacio-- nes

+$(656)

Variacio-nes

S1

S1: Cadena de texto 1

S2

S2: Cadena de texto 2

D:

Primer canal de destino

Ejecutado cada ciclo para condicin ON

+$(656)

Ejecutado una vez para diferencial ascendente

@+$(656)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

774

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

Instrucciones de procesamiento de cadenas de texto


Operandos

Seccin 3-31

S1: Cadena de texto 1


15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Cadena de texto 2


15
S2

Cadena de texto: 4.095 caracteres mx. + NUL

a
S2 + 2.047 canales mximo

D: Primer canal de destino


15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de S1 a S1 + un mximo de 2.047 canales, de S2 a S2 + un mximo de 2.047 canales y de D a D + un mximo de 2.047 deben estar en la
misma rea.
2. Los datos de S2 a S2 + un mximo de 2.047 canales y de D a D + un mximo
de 2.047 canales no se pueden solapar.
rea

S1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

S2

A000 a A447

A448 a A959

A448 a A959
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a 32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

775

Instrucciones de procesamiento de cadenas de texto


rea
Registros de ndice
Direccionamiento
indirecto utilizando
registros de ndice

Seccin 3-31
S1

S2

--,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0V a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

+$(664) conecta los datos de la cadena de texto designada por S1 a los datos de
la cadena de texto designada por S2 y enva el resultado a D a modo de datos de
cadena de texto (incluido el ltimo NUL).
El nmero mximo de caracteres que S1 y S2 pueden designar es 4.095 (0FFF
hex.). Si no existe ningn NUL hasta 4.096 caracteres, se generar un error y el
indicador de error se pondr en ON. Adems, el resultado de este acoplamiento
no puede sobrepasar los 4.095 caracteres (0FFF hex.). Si sobrepasa este nmero, slo se enviarn a D los primeros 4.095 caracteres (aadiendo NUL como
el carcter n 4.096).
Si existe un NUL para S1 y S2, se enviarn los dos caracteres NUL (0000 hex.) a
D.

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Precauciones

Etique
Operacin
ta
ER
ON si S1 y S2 designan ms de 4.095 caracteres.
OFF en todos los dems casos.
=

ON si se transfiere 0000 (hex.) a D.


OFF en todos los dems casos.

Si S1 y S2 designan ms de 4.095 caracteres, se generar un error y el indicador de error se pondr en ON.


Si 0000 (hex.) se transfiere a D, el indicador de igual se pondr en ON.
No solape el canal de comienzo designado por D con el rea de datos de caracteres para S2. Si se solapan, la instruccin no se ejecutar correctamente.

Ejemplo

776

El siguiente ejemplo muestra cmo +$(656) conecta las cadenas de texto


ABCD y EFG y cmo enva el resultado a D.

Instrucciones de procesamiento de cadenas de texto

3-31-4

Seccin 3-31

OBTENER CADENA DE LA IZQUIERDA: LEFT$(652)


Toma un nmero designado de caracteres, empezando por la izquierda (principio), de una cadena de texto.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

LEFT$(652)

Variacio-nes

S1

S1: Primer canal de la cadena de texto

S2

S2: Nmero de caracteres

D:

Primer canal de destino

Ejecutado cada ciclo para condicin ON

LEFT$(652)

Ejecutado una vez para diferencial ascendente

@LEFT$(652)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Cadena de texto


15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Nmero de caracteres (0000 a 0FFF hex. o &0 a &4095)


15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo


de 2.047 canales deben estar en la misma rea.
2. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo
de 2.047 canales se pueden solapar.
rea

S1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A447

rea de temporizador

A448 a A959
T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

S2

A448 a A959

(n = 0 a C)

777

Instrucciones de procesamiento de cadenas de texto


rea
Direcciones de DM/EM
indirectas en binario

Seccin 3-31

S1
@ D00000 a @ D32767

S2

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #0FFF
(binario) o &0 a
&4095

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

LEFT$(652) lee el nmero de caracteres designados por S2, empezando por la


izquierda (el principio) del primer canal de la cadena de texto designada por S1
hasta el cdigo NUL (00 hex.) y enva el resultado a D (aadiendo NUL al final).
Si el nmero de caracteres es superior al designado por S1, se enviar toda la
cadena de texto de S1.
Si se designa 0 (0000 hex.) como el nmero de caracteres que se van a leer, se
enviarn a D los dos caracteres NUL (0000 hex.).

Descripcin

Indicadores

Nombre

Etique
Operacin
ta
ER
ON si S1 designa ms de 4.095 caracteres.

Indicador de
error

ON si S2 designa ms de 4.095 caracteres (0FFF hex.).


OFF en todos los dems casos.

Indicador de
igual

ON si se enva 0000 (hex.) a D.


OFF en todos los dems casos.

Precauciones

El nmero mximo de caracteres que se van a leer y que S2 puede designar es


4.095 (0FFF hex.). Si se designan ms, se generar un error y el indicador de
error se pondr en ON.
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.

Ejemplo

El siguiente ejemplo muestra cmo LEFT$(652) lee cuatro caracteres.


Cadena de texto ABCDE
S2: D00200
S1:
D

778

43

44

Cuatro caracteres (bytes) ledos.

Cadena de texto ABCD


D: D00300

Instrucciones de procesamiento de cadenas de texto

3-31-5

Seccin 3-31

OBTENER CADENA DE LA DERECHA: RGHT$(653)


Lee un nmero designado de caracteres, empezando por la derecha (final), de
una cadena de texto.

Funcin
Smbolo de diagrama de
rels

RGHT$(653)
S1

S1: Primer canal de la cadena de


texto

S2

S2: Nmero de caracteres

Variacio-- nes

Variacio-nes

D:

Primer canal de destino

Ejecutado cada ciclo para condicin ON

RGHT$(653)

Ejecutado una vez para diferencial ascendente

@RGHT$(653)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Cadena de texto

Operandos

15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Nmero de caracteres (0000 a 0FFF hex. o &0 a &4095)


15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo


de 2.047 canales deben estar en la misma rea.
2. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo
de 2.047 canales se pueden solapar.
rea

S1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A447

rea de temporizador

A448 a A959
T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

S2

A448 a A959

(n = 0 a C)

779

Instrucciones de procesamiento de cadenas de texto


rea
Direcciones de DM/EM
indirectas en binario

Seccin 3-31

S1
@ D00000 a @ D32767

S2

@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a #0FFF
(binario) o &0 a
&4095

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

RGHT$(653) lee el nmero de caracteres designados por S2, empezando por


la izquierda (el principio) del primer canal de la cadena de texto designada por
S1 hasta el cdigo NUL (00 hex.) y enva el resultado a D (aadiendo NUL al
final).
Si el nmero de caracteres que se van a leer es superior al designado por S1, se
enviar toda la cadena de texto de S1.
Si se designa 0 (0000 hex.) como el nmero de caracteres que se van a leer, se
enviarn a D los dos caracteres NUL (0000 hex.).

Descripcin

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si S1 designa ms de 4.095 caracteres.
ON si S2 designa ms de 4.095 caracteres (0FFF hex.).
OFF en todos los dems casos.

Indicador de
igual

ON si se enva 0000 (hex.) a D.


OFF en todos los dems casos.

Precauciones

El nmero mximo de caracteres que se van a leer y que S2 puede designar es


4.095 (0FFF hex.). Si se designan ms, se generar un error y el indicador de
error se pondr en ON.
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.

Ejemplo

El siguiente ejemplo muestra cmo RGHT$(653) lee cuatro caracteres.


Cadena de texto ABCDEF
S2: D00200
S1:

780

Cuatro caracteres (bytes) ledos.

Cadena de texto CDEF


D:

Instrucciones de procesamiento de cadenas de texto

3-31-6

Seccin 3-31

OBTENER CADENA DEL MEDIO: MID$(654)


Lee un nmero designado de caracteres a partir de cualquier posicin en medio
de una cadena de texto.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

MID$(654)

Variacio-nes

S1

S1: Primer canal de la cadena de texto

S2

S2: Nmero de caracteres

S3

S3: Posicin inicial

D: Primer canal de destino

Ejecutado cada ciclo para condicin ON

MID$(654)

Ejecutado una vez para diferencial ascendente

@MID$(654)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Cadena de texto

Operandos

15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Nmero de caracteres (0000 a 0FFF hex. o &0 a &4095)


S3: Posicin inicial (0001 a 0FFF hex. o &0 a &4095)
15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo


de 2.047 canales deben estar en la misma rea.
2. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo
de 2.047 canales se pueden solapar.
rea

S1

S2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A447
A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a 32767

S3

A448 a
A959

781

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

rea
rea EM sin banco

S1
S2
E00000 a E32767

rea EM con banco

En_00000 a En_32767

S3

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a
#0FFF
(binario) o
&0 a &4095
DR0 a DR15

#0001 a
#0FFF
(binario) o
&0 a &4095

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Dentro de la cadena de texto identificada por el primer canal designado por S1


hasta el cdigo NUL(00 hex.), MID$(654) lee el nmero de caracteres designados por S2, empezando por el primer canal designado por S3, y enva el resultado a D como datos de la cadena de texto (aadiendo NUL al final).
Si el nmero de caracteres que se van a leer supera la longitud de la cadena de
texto designada por S1, se enviar toda la cadena.

Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si S1 designa ms de 4.095 caracteres.
ON si S2 designa ms de 4.095 caracteres (0FFF hex.).
ON si los datos de S3 estn dentro del rango de 1 a
4.095 (0001 a 0FFF hex.).
ON si S3 es mayor que S1.
OFF en todos los dems casos.

Indicador de
igual

Precauciones

782

ON si se enva 0000 (hex.) a D.


OFF en todos los dems casos.

El rango de la posicin inicial designada por S3 va desde el primer carcter al


4.095 (0001 a 0FFF hex.). Si la seleccin no est dentro de este rango, se generar un error y el indicador de error se pondr en ON.

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

El nmero mximo de caracteres que se van a leer y que S2 puede designar es


4.095 (0FFF hex.). Si se designan ms, se generar un error y el indicador de
error se pondr en ON.
Si se designa 0 (0000 hex.) como el nmero de caracteres que se van a leer, se
enviarn a D los dos caracteres NUL (0000 hex.).
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.
El siguiente ejemplo muestra cmo MID$(654) lee tres caracteres.

Ejemplo

Cadena de texto ABCDEFGHIJ


S2: D00200

Cadena de texto EFG

S1:
Tres caracteres ledos.

S3:

D: D00300

S3: D00400
Desde el 5 carcter (el byte de la izquierda en D00102).

3-31-7

ENCONTRAR EN CADENA: FIND$(660)


Encuentra una cadena de texto designada dentro de otra cadena.

Funcin
Smbolo de diagrama de
rels

FIND$(660)
S1

S1: Primer canal de la cadena de


texto fuente

S2

S2: Primer canal de la cadena de


texto encontrada

D:

Variacio-- nes

Variacio-nes

Primer canal de destino

Ejecutado cada ciclo para condicin ON

FIND$(660)

Ejecutado una vez para diferencial ascendente

@FIND$(660)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Cadena de texto fuente


15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Cadena de texto encontrada


15
S2

Cadena de texto: 4.095 caracteres mx. + NUL

a
S2 + 2.047 canales mximo

Note Los datos de S1 a S1 + un mximo de 2.047 canales y de S2 a S2+ un mximo


de 2.047 canales deben estar en la misma rea.

783

Instrucciones de procesamiento de cadenas de texto


Especificaciones de
operandos

Seccin 3-31

rea

S1

S2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511
A000 a A447

A448 a A959

A448 a A959
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

FIND$(660) encuentra la cadena de texto designada por S2 dentro de la cadena


de texto designada por S1 y enva el resultado (un determinado nmero de caracteres desde el principio de S1) a modo de datos binarios a D. Si la cadena de
texto no coincide, se enva 0000 hex. a D.

Indicadores

Nombre
Indicador de
error
Indicador de
igual

Precauciones

Datos encontrados

Etique
Operacin
ta
ER
ON si S1 o S2 designan ms de 4.095 caracteres.
OFF en todos los dems casos.
=

ON si se enva 0000 (hex.) a D.


OFF en todos los dems casos.

El nmero mximo de caracteres que se van a leer y que S1 o S2 pueden designar es 4.095 (0FFF hex.). Si se designan ms, se generar un error y el indicador de error se pondr en ON.
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.

784

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

El siguiente ejemplo muestra cmo FIND$(660) encuentra un carcter en una


cadena de texto.

Ejemplo

Cadena de texto: ABCDEF

Cadena de texto C

S2: D00200
D: D00300

S1: D00100

3-31-8

LONGITUD DE CADENA: LEN$(650)


Calcula la longitud de una cadena de texto.

Funcin
Smbolo de diagrama de
rels

LEN$(650)

S: Primer canal de la cadena de


texto

D: Primer canal de destino

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

LEN$(650)

Ejecutado una vez para diferencial ascendente

@LEN$(650)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Cadena de texto
15
S

Cadena de texto: 4.095 caracteres mx. + NUL

a
S + 2.047 canales mximo

Note Los datos de S a S + un mximo de 2.047 canales deben estar en la misma


rea.
Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511
A000 a A447

rea de temporizador

A448 a A959
T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

785

Instrucciones de procesamiento de cadenas de texto


rea
Direcciones de DM/EM
indirectas en BCD

Seccin 3-31

S
*D00000 a *D32767

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

DR0 a DR15

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

LENS$(650) calcula el nmero de caracteres empezando por el primer canal de


la cadena de texto designada por S hasta el cdigo NUL (00 hex.), incluido, y
enva el resultado a D, a modo de datos binarios. Si hay un NUL al principio de la
cadena de texto, el resultado obtenido ser 0000 hex.

Indicadores

Nombre
Indicador de
error
Indicador de
igual

1
3
5

2
4

Etique
Operacin
ta
ER
ON si el resultado obtenido supera los 4.095 caracteres.
OFF en todos los dems casos.
=

ON si el resultado obtenido es 0.
OFF en todos los dems casos.

Precauciones

El nmero mximo de caracteres es 4.095 (0FFF hex.). Si el nmero es supe-rior, es decir, si NUL no precede al carcter 4.096, se generar un error y el indicador correspondiente se pondr en ON.
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.

Ejemplo

El siguiente ejemplo muestra cmo LENS$(650) calcula el nmero de caracteres y cmo enva el resultado.
Cadena de texto: ABCDE
S:

786

41
43
45

42
44
00

D: D00200

Instrucciones de procesamiento de cadenas de texto

3-31-9

Seccin 3-31

SUSTITUIR EN CADENA: RPLC$(661)


Sustituye una cadena de texto por otra designada en una posicin tambin de-signada.

Funcin
Smbolo de diagrama de
rels

RPLC$(661)

S1: Primer canal de la cadena de texto

S1

S2: Primer canal de la cadena de texto


de sustitucin

S2

S3: Nmero de caracteres

S3

S4: Posicin inicial

S4

D:

Primer canal de destino

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

RPLC$(661)

Ejecutado una vez para diferencial ascendente

@RPLC$(661)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Cadena de texto

Operandos

15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Cadena de texto de sustitucin


15
S2

Cadena de texto: 4.095 caracteres mx. + NUL

a
S2 + 2.047 canales mximo

S3: Nmero de caracteres (0000 a 0FFF hex. o &0 a &4095)


S4: Posicin inicial (0001 a 0FFF hex. o &0 a &4095)
15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
S2 + 2.047 canales mximo

Note

1. Los datos de S1 a S1 + un mximo de 2.047 canales, de S2 a S2 + un mximo de 2.047 canales y de D a D + un mximo de 2.047 deben estar en la
misma rea.
2. Los datos de D a D + un mximo de 2.047 canales, de S1 a S1 + un mximo
de 2.047 canales y de S2 a S2 + un mximo de 2.047 canales se pueden
solapar.

787

Instrucciones de procesamiento de cadenas de texto


Especificaciones de
operandos

rea

Seccin 3-31
S1

S2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

S3

S4

A000 a A447

A448 a
A959

A448 a A959
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a
#0FFF
(binario)
o &0 a
&4095

#0001 a
#0FFF
(binario)
o &1
&4095

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

RPLC$(661) sustituye parte de la cadena de texto designada por S1, desde la


posicin inicial designada por S4, por la cadena de texto designada por S2 y
enva el resultado a D a modo de datos de cadena de texto (aadiendo NUL al
final). S3 designa el nmero de caracteres que se van a sustituir.
El nmero mximo de caracteres del resultado es 4.095 (0FFF hex.). Si hay
ms, slo se enviarn 4.095 (incluido NUL como el carcter 4.096).
Se pueden sustituir de 0 a 4.095 caracteres (0000 a 0FFF hex.). Si el nmero es
el 0, la cadena de texto designada por S1 se enviar a D tal cual, sin cambios. Si
la cadena de texto de S2 es NUL, se repetir la operacin llevada a cabo para
eliminar el rango de texto designado en S1.
Si se sustituye toda la cadena de texto de S1 por NUL, se enviarn dos caracteres NUL (0000 hex.) a D.

788

Instrucciones de procesamiento de cadenas de texto


Indicadores

Nombre
Indicador de
error

Seccin 3-31

Etique
Operacin
ta
ER
ON si S1 o S2 designan ms de 4.095 caracteres.
ON si S3 designa ms de 4.095 caracteres (0FFF hex.).
ON si los datos de S4 estn dentro del rango de 1 a
4.095 (0001 a 0FFF hex.).
OFF en todos los dems casos.

Indicador de
igual

ON si se enva 0000 (hex.) a D.


OFF en todos los dems casos.

Precauciones

El nmero mximo de caracteres de S1 o S2 es 4.095 (0FFF hex.). Si el nmero


es superior, es decir, si NUL no precede al carcter 4.096, se generar un error y
el indicador correspondiente se pondr en ON.
El rango de la posicin inicial designada por S4 va desde el primer carcter al
4.095 (0001 a 0FFF hex.). Si la seleccin no est dentro de este rango, se generar un error y el indicador de error se pondr en ON.
Si la posicin inicial designada por S4 supera la cadena de texto designada por
S1, se generar un error y el indicador de error se pondr en la posicin de ON.
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.
Seleccione el primer canal de destino D para evitar el solapamiento con la reas
del primer canal de la cadena de texto de sustitucin, S2. RPLC$(654) no funcionar correctamente si dichas reas se solapan.

Ejemplo

El siguiente ejemplo muestra cmo RPLC$(654) lee tres caracteres.


Cadena de texto ABCDEFGHI
S3: D00300
S1:

Cadena de texto ABCDHI


D:

Tres caracteres sustituidos


D2: D00200
Cadena de texto M
D4: D00500
Desde el 5 byte.

3-31-10 BORRAR DE CADENA: DEL$(658)


Funcin

Elimina una cadena de texto designada dentro de otra cadena.

Smbolo de diagrama de
rels

DEL$(658)
S1
S2
S3

S1: Primer canal de la


cadena de texto
S2: Nmero de caracteres
S3: Posicin inicial
D:

Primer canal de destino

Variacio-- nes

Variacio-nes

Ejecutado cada ciclo para condicin ON

DEL$(658)

Ejecutado una vez para diferencial ascendente

@DEL$(658)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

789

Instrucciones de procesamiento de cadenas de texto


Operandos

Seccin 3-31

S1: Cadena de texto


15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Nmero de caracteres (0000 a 0FFF hex. o &0 a &4095)


S3: Posicin inicial (0001 a 0FFF hex. o &0 a &4095)
15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

1. Los datos de S1 a S1 + un mximo de 2.047 canales, de S2 a S2 + un mximo de 2.047 canales y de D a D + un mximo de 2.047 deben estar en la
misma rea.
2. Los datos de S1 a S1 + un mximo de 2.047 canales y de D a D + un mximo
de 2.047 canales se pueden solapar.

Especificaciones de
operandos

rea

S1

S2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

S3

A000 a A447

A448 a
A959

A448 a A959
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

790

Constantes

(n = 0 a C)
---

Registros de datos

---

#0000 a
#0FFF
(binario) o
&0 a &4095
DR0 a DR15

#0001 a
#0FFF
(binario) o
&0 a &4095

---

---

Instrucciones de procesamiento de cadenas de texto


rea
Registros de ndice

Seccin 3-31
S1

S2

S3

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

En la cadena de texto designada por S1, DEL$(658) elimina el nmero de caracteres designados por S2, empezando por el primer canal designado por S3, y
enva el resultado a D a modo de datos de la cadena de texto (aadiendo NUL al
final).

Descripcin

Indicadores

Nombre
Indicador de
error

Etique
ta
ER

Operacin
ON si S1 designa ms de 4.095 caracteres.
ON si S2 designa ms de 4.095 caracteres (0FFF hex.).
ON si los datos de S3 estn dentro del rango de 1 a
4.095 (0001 a 0FFF hex.).
ON si S3 es mayor que S1.
OFF en todos los dems casos.

Indicador de
igual

ON cuando se enva 0000 (hex.) a D.


OFF en todos los dems casos.

El nmero mximo de caracteres de S1 es 4.095 (0FFF hex.). Si el nmero es


superior, es decir, si NUL no precede al carcter 4.096, se generar un error y el
indicador correspondiente se pondr en ON.

Precauciones

El rango de la posicin inicial designada por S3 va desde el primer carcter al


4.095 (0001 a 0FFF hex.). Si la seleccin no est dentro de este rango, se generar un error y el indicador de error se pondr en ON.
Si el nmero de canales de S1 supera la longitud de la cadena de texto, el indicador de error se pondr en la posicin de ON.
Si el nmero de caracteres que se van a leer supera la longitud de la cadena de
texto designada por S1, se enviar toda la cadena. Si se designan todos los caracteres contenidos en S1 para borrarlos, 0000 hex. se enviar a D.
El siguiente ejemplo muestra cmo DEL$(658) lee tres caracteres.

Ejemplo

Cadena de texto ABCDEFGHI


S2: D00200

Cadena de texto ABCDMHI


D:

S1:
Tres bytes descartados.

00

S3: D00500
Desde el 5 carcter.

791

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

3-31-11 INTERCAMBIAR CADENA: XCHG$(665)


Sustituye una cadena de texto designada por otra.

Funcin
Smbolo de diagrama de
rels

Variacio-- nes

XCHG$(665)

Variacio-nes

Ex1

Ex1: Primer canal de intercambio 1

Ex2

Ex2: Primer canal de intercambio 2

Ejecutado cada ciclo para condicin ON

XCHG$(665)

Ejecutado una vez para diferencial ascendente

@XCHG$(665)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

Ex1: Primer canal de intercambio 1

Operandos

15
Ex1

Cadena de texto: 4.095 caracteres mx. + NUL

a
Ex1 + 2.047 canales mximo

Ex2: Primer canal de intercambio 2


15
Ex2

Cadena de texto: 4.095 caracteres mx. + NUL

a
Ex2 + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de Ex1 a Ex1 + un mximo de 2.047 canales y de Ex2 a Ex2 + un


mximo de 2.047 canales deben estar en la misma rea.
2. Los datos de Ex1 a Ex1 + un mximo de 2.047 canales y de Ex2 a Ex2 + un
mximo de 2.047 canales no se pueden solapar.
rea

Ex1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

A448 a A959

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767
(n = 0 a C)

792

Ex2

Instrucciones de procesamiento de cadenas de texto


rea
Direcciones de DM/EM
indirectas en BCD

Seccin 3-31

Ex1
*D00000 a *D32767

Ex2

*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Indicadores

XCHG$(665) intercambia la cadena de texto designada por Ex1 con la designada por Ex2. Si Ex1 es NUL, se enviarn dos caracteres NUL (0000 hex.) a Ex2 y
viceversa.

Nombre
Indicador de
error

Ex1

Ex1

Ex2

Ex2

Etique
ta
ER

Operacin
ON si Ex1 o Ex2 designan ms de 4.095 caracteres.
ON si los datos de Ex1 y Ex2 se solapan.
OFF en todos los dems casos.

Precauciones

El nmero mximo de caracteres que Ex1 y Ex2 pueden designar es 4.095


(0FFF hex.). Si se designan ms, se generar un error y el indicador de error se
pondr en ON.
Si se solapan los datos contenidos en la cadena de texto designada por Ex1 o
Ex2, se generar un error y el indicador correspondiente se pondr en ON.

Ejemplo

El siguiente ejemplo muestra cmo XCHG$(665) intercambia dos cadenas de


texto.
Cadenas de texto ABCDE y FG
Ex1
Ex2

Ex1: D00100

Cadenas de texto: FG y ABCDE


Ex1: D00100

Ex2: D00200

Ex2: D00200

Se mantienen
los datos anteriores.

3-31-12 BORRAR CADENA: CLR$(666)


Funcin
Smbolo de diagrama de
rels

Borra una cadena de texto completa y la sustituye por NUL (00 hex.).
CLR$(666)
S

S: Primer canal de la cadena de


texto

793

Instrucciones de procesamiento de cadenas de texto


Variacio-- nes

Variacio-nes

Seccin 3-31

Ejecutado cada ciclo para condicin ON

CLR$(666)

Ejecutado una vez para diferencial ascendente

@CLR$(666)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

reas de programa
de bloques
OK

Operandos

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S: Primer canal de la cadena de texto


15
S

Cadena de texto: 4.095 caracteres mx. + NUL

a
S + 2.047 canales mximo

Note Los datos de S a S + un mximo de 2.047 canales deben estar en la misma


rea.
Especificaciones de
operandos

rea

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

794

CLR$(666) borra toda la cadena de texto, desde el primer canal designado por
S hasta el cdigo NUL (00 hex.). El nmero mximo de caracteres que se pue-

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

den borrar es 4.096. Si NUL no precede al carcter 4.096, slo se borrarn


4.096 caracteres.
S

A
C

B
D

NUL

Indicadores

Nombre

Etique
ta
ER
OFF

Indicador de
error

Operacin

Precauciones

El indicador de error se pondr en OFF en el momento de ejecutar la instruccin.

Ejemplo

El siguiente ejemplo muestra cmo CLR$(666) borra la cadena de texto ABCDE.


Cadena de texto ABCDE
S

S:

S:

3-31-13 INSERTAR EN CADENA: INS$(657)


Funcin

Elimina una cadena de texto designada del centro de otra cadena.

Smbolo de diagrama de
rels

S1: Primer canal de la cadena de


texto base

INS$(657)
S1

S2: Primer canal de la cadena de


texto insertada

S2

S3: Posicin inicial

S3

D:

Variacio-- nes

Variacio-nes

Primer canal de destino

Ejecutado cada ciclo para condicin ON

INS$(657)

Ejecutado una vez para diferencial ascendente

@INS$(657)
No soportado

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado
Subrutinas

OK

Tareas de
interrupcin
OK

S1: Cadena de texto base


15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Cadena de texto insertada


15
S2

Cadena de texto: 4.095 caracteres mx. + NUL

a
S2 + 2.047 canales mximo

795

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

S3: Posicin inicial (0000 a 0FFF hex. o &0 a &4095)


15
D

Cadena de texto: 4.095 caracteres mx. + NUL

a
D + 2.047 canales mximo

Note

Especificaciones de
operandos

1. Los datos de S1 a S1 + un mximo de 2.047 canales, de S2 a S2 + un mximo de 2.047 canales y de D a D + un mximo de 2.047 canales deben estar
en la misma rea.
2. Los datos de S2 a S2 + un mximo de 2.047 canales y de D a D + un mximo
de 2.047 canales no se pueden solapar. Los datos de S1 a S1 + un mximo
de 2.047 canales y de D a D + un mximo de 2.047 canales se pueden solapar. Los datos de S1 a S1 + un mximo de 2.047 canales y de S2 a S2 + un
mximo de 2.047 canales tambin se pueden solapar.
rea

S1

S2

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin

H000 a H511

rea de bits auxiliares

A000 a A447

S3

A448 a
A959

A448 a A959
rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767

(n = 0 a C)
Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15

#0000 a
#0FFF
(binario) o
&0 a &4095
DR0 a
DR15

---

---

--2048 a +2047,IR0 a --2048 a +2047,IR15


DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

796

En la cadena de texto designada por S1, INS$(657) inserta la cadena de texto


designada por S2, despus del primer canal designado por S3, y enva el resultado a D a modo de datos de la cadena de texto (aadiendo NUL al final).

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

El nmero mximo de caracteres que se pueden insertar es 4.095 (0FFF hex.).


Si hay ms, slo se enviarn 4.095 a D (incluido NUL como el carcter 4.096).
Si uno de los dos, S1 o S2, es NUL, se enviar a D la cadena de texto designada
por el que no es NUL. Si los dos son NUL, se enviarn los dos caracteres NUL
(0000 hex.) a D.

Caracteres insertados

Indicadores

Nombre
Indicador de
error

Indicador de
igual

Etique
Operacin
ta
ER
ON si S1 o S2 designan ms de 4.095 caracteres.
ON si S3 contiene ms de 4.095 caracteres (0FFF
hex.).
=

OFF en todos los dems casos.


ON si se enva 0000 (hex.) a D.
OFF en todos los dems casos.

El nmero mximo de caracteres de S1 o S2 es 4.095 (0FFF hex.). Si hay ms,


es decir, si NUL no precede al carcter 4.096, se generar un error y el indicador
correspondiente se pondr en ON.

Precauciones

El rango para la posicin inicial designada por S3 es de 0 a 4.095. Si la seleccin


no est dentro de este rango, se generar un error y el indicador correspondiente se pondr en ON.
Si 0000 (hex.) se enva a D, el indicador de igual se pondr en ON.
No solape los canales destino designados por D con los datos de la cadena de
texto designada por S2. Si se solapan, la operacin no se ejecutar correctamente.
El siguiente ejemplo muestra cmo INS$(657) inserta dos caracteres.

Ejemplo

Cadena de texto JK
Cadena de texto ABCDEFGHI
S1:

S2: D00200
S3: D00400

Cadena de texto ABCDEFJKGHI


D:

3-31-14 Instrucciones de comparacin de cadenas (670 675)


Funcin

Las instrucciones de comparacin de cadenas (=$, <>$, <$, <=$, >$, >=$) comparan dos cadenas de texto desde el principio, expresadas en valores del cdi-

797

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

go ASCII. Si el resultado de la comparacin es verdadero, se crear una condicin de ejecucin ON para LOAD, AND o para OR.
Smbolo de diagrama de
rels

LD (Cargar)
Smbolo
S1

S1: Cadena de texto 1

S2

S2: Cadena de texto 2

AND (Conexin en serie)


Smbolo
S1

S1: Cadena de texto 1

S2

S2: Cadena de texto 2

OR (Conexin en paralelo)
Smbolo

Variacio-- nes

S1

S1: Cadena de texto 1

S2

S2: Cadena de texto 2

Crea una condicin ON en


cada ciclo si la comparacin
es verdadera
Especificacin de refresco inmediato
Variacio-nes

reas de programa
aplicables

reas de programa
de bloques
OK

reas de programa
de pasos
OK

Instrucciones de comparacin de
cadenas
No soportado.
Subrutinas
OK

Tareas de
interrupcin
OK

S1: Cadena de texto 1

Operandos

15
S1

Cadena de texto: 4.095 caracteres mx. + NUL

a
S1 + 2.047 canales mximo

S2: Cadena de texto 2


15
S2

Cadena de texto: 4.095 caracteres mx. + NUL

a
S2 + 2.047 canales mximo

Note

798

1. Los datos de S1 a S1 + un mximo de 2.047 canales y de S2 a S2+ un mximo de 2.047 canales deben estar en la misma rea.
2. Los datos de S1 a S1 + un mximo de 2.047 canales y de S2 a S2 + un mximo de 2.047 canales no se pueden solapar.

Instrucciones de procesamiento de cadenas de texto


Especificaciones de
operandos

rea

Seccin 3-31
S1

rea CIO

CIO 0000 a CIO 6143

rea de trabajo

W000 a W511

rea de bits de
retencin
rea de bits auxiliares

H000 a H511

S2

A000 a A447
A448 a A959

rea de temporizador

T0000 a T4095

rea de contador

C0000 a C4095

rea DM

D00000 a D32767

rea EM sin banco

E00000 a E32767

rea EM con banco

En_00000 a En_32767
(n = 0 a C)

Direcciones de DM/EM
indirectas en binario

@ D00000 a @ D32767
@ E00000 a @ E32767
@ En_00000 a @ En_32767

Direcciones de DM/EM
indirectas en BCD

(n = 0 a C)
*D00000 a *D32767
*E00000 a *E32767
*En_00000 a *En_32767

Constantes

(n = 0 a C)
----

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

,IR0 a ,IR15
--2048 a +2047,IR0 a --2048 a +2047,IR15
DR0 a DR15, IR0 a IR15
,IR0+(++) a ,IR15+(++)
,--(-- --)IR0 a, --(-- --)IR15

Descripcin

Las instrucciones de comparacin de cadenas comparan las cadenas de texto


designadas por S1 y S2. Si el resultado de la comparacin es verdadero, se
crear una condicin de ejecucin ON en el diagrama de rels. El nmero mximo de caracteres de S1 o S2 es 4.095 (0FFF hex.).
Las instrucciones de comparacin de cadenas se expresan mediante los 18
mnemnicos listados a continuacin (LD, AND y OR no estn incluidos en el
diagrama de rels):
LD=$, AND=$, OR=$
LD<>$, AND<>$, OR<>$
LD<$, AND<$, OR<$
LD<=$, AND<=$, OR<=$
LD>$, AND>$, OR>$
LD>=$, AND>=$, OR>=$
La siguiente tabla muestra estas instrucciones detalladamente:

799

Instrucciones de procesamiento de cadenas de texto


Mnemnicos
(incluido el cdigo de
funcin)

LD=$(670)
AND=$(670)
OR=$(670)
LD<>$(671)
AND<>$(671)
OR<>$(671)
LD<$(672)
AND<$(672)
OR<$(672)
LD<=$(673)
AND<=$(673)
OR<=$(673)
LD>$(674)
AND>$(674)
OR>$(674)
LD>=$(675)
AND>=$(675)
OR>=$(675)

Seccin 3-31
Nombre

LOAD STRING EQUALS


AND STRING EQUALS

Funcin
Verdadero si la cadena de
t t S1 es igual
texto
i
l a S2.
S2

OR STRING EQUALS
LOAD STRING NOT
EQUAL
AND STRING NOT EQUAL

Verdadero si la cadena de
texto S1 es distinta a S2.

OR STRING NOT EQUAL


LOAD STRING LESS
THAN
AND STRING LESS THAN

Verdadero si la cadena de
texto S1 es menor que S2.

OR STRING LESS THAN


LOAD STRING LESS
THAN OR EQUALS
AND STRING LESS THAN
OR EQUALS
OR STRING LESS THAN
OR EQUALS
LOAD STRING GREATER
THAN
AND STRING GREATER
THAN
OR STRING GREATER
THAN
LOAD STRING GREATER
THAN OR EQUALS
AND STRING GREATER
THAN OR EQUALS
OR STRING GREATER
THAN OR EQUALS

Verdadero si la cadena de
texto S1 es menor o igual
que S2.

Verdadero si la cadena de
texto S1 es mayor que S2.

Verdadero si la cadena de
texto S1 es mayor o igual
que S2.

Mtodos de comparacin
Los mtodos de comparacin son:
El primer carcter (byte) de cada cadena de texto se compara con su opuesto,
expresado en ASCII. Si los dos cdigos ASCII no coinciden, entonces, la relacin mayor--menor se cumple para los dos. Si coinciden, se pasa a comparar los
siguientes caracteres. Si los dos cdigos ASCII no coinciden, entonces, la relacin mayor--menor se cumple para los dos.
De este modo, se comparan las dos cadenas de texto por orden, carcter a carcter. Si todos los caracteres, incluido NUL, son iguales, las dos cadenas tendrn una relacin de iguales.
Si las cadenas tienen longitudes diferentes, el carcter NUL (00 hex.) se aadir
a la cadena ms corta para igualar la diferencia y la comparacin se efectuar
en base a ello.
Ejemplos de comparacin
AD (414400 hex.) y BC (424300 hex.):
AD < BC, porque 41 (hex.) es menor que 42 (hex.).
ADC (41444300 hex.) y B (4200 hex.):
ADC < B, porque 41 (hex.) es menor que 42 (hex.).
ABC (41424300 hex.) y ABD (41424400 hex.):
ABC < ABD, dado que 41 y 42 coinciden, el resultado vendr dado por los siguientes caracteres, en los que 43 es menor que 44.

800

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

ABC (41424300 hex.) y AB (414200 hex.):


ABC > AB, dado que 41 y 42 coinciden, el resultado viene dado por los siguientes caracteres, de los que se obtiene que 43 es mayor que 00.
AB (414200 hex.) y AB (414200 hex.):
AB = AB, porque coinciden todos los caracteres: 41, 42 y 00.
Contine programando las instrucciones una a una; trate las operaciones LD,
AND y OR por igual. LD y OR se pueden conectar directamente a la barra de
bus, mientras que AND no.
Indicadores

Nombre
Indicador de
error

Etique
Operacin
ta
ER
ON si S1 o S2 designan ms de 4.095 caracteres.
OFF en todos los dems casos.

Indicador de
mayor que

>

ON si el resultado de la comparacin es S1 mayor que


S2.

Indicador de
mayor o igual
que

>=

Indicador de
igual

Indicador de
distinto

<>

Indicador de
menor que

<

OFF en todos los dems casos.


ON si el resultado de la comparacin es S1 menor que
S2.

Indicador de
menor o igual
que

<=

OFF en todos los dems casos.


ON si el resultado de la comparacin es S1 menor o
igual que S2.

OFF en todos los dems casos.


ON si el resultado de la comparacin es S1 mayor o
igual que S2.
OFF en todos los dems casos.
ON si el resultado de la comparacin es S1 igual a S2.
OFF en todos los dems casos.
ON si el resultado de la comparacin es S1 distinto a
S2.

OFF en todos los dems casos.

Note Las instrucciones de comparacin de cadenas se utilizan para reorganizar el


orden de las cadenas de texto, adaptndolo al orden de ASCII. Por ejemplo, en
ASCII el orden de menor a mayor se expresa en orden alfabtico, de la A a la Z,
de modo que las cadenas se pueden clasificar en este orden.
Precauciones

Programe una instruccin de derecha despus de estas instrucciones. Las instrucciones de comparacin de cadenas no deben aparecer a la derecha del diagrama de rels.
Estas instrucciones no se pueden utilizar en el ltimo escaln de un bloque lgico.
El nmero mximo de caracteres que se pueden comparar es 4.095 (0FFF
hex.). Si hay ms, es decir, si NUL no precede al carcter 4.096, se generar un
error y el indicador correspondiente se pondr en ON. Cuando esto ocurre, se
enva una condicin de ejecucin OFF a la siguiente instruccin.

801

Instrucciones de procesamiento de cadenas de texto

Seccin 3-31

El siguiente ejemplo muestra cmo utilizar las instrucciones de comparacin


para comparar datos.

Ejemplo

Direccin

Mnemnico Operando

>

---

000000
000001

---

000002
000003

---

<>

000004

>
Cadena de texto ABCD

Cadena de texto ABC

Cadena de texto ABC

Cadena de texto ABC

<>

En este ejemplo, se reorganizan tres cadenas de texto por orden alfabtico. El


orden original es:
D00100: zumo
D00200: leche
D00300: agua

802

Instrucciones de control de tareas

Seccin 3-32

Al clasificarlos por orden alfabtico, se obtiene: agua, leche y zumo.


>$

A continuacin, se comparan dos cadenas de texto que comienzan por D00100 y D00200 en orden ASCII, de menor a mayor. Si,
segn el orden ASCII, la cadena de texto que comienza por
D00100 es mayor que la que comienza por D00200, se invertir el
orden de las dos cadenas.

>$

A continuacin, se comparan dos cadenas de texto que comienzan por D00200 y D00300 en orden ASCII, de menor a mayor. Si,
segn el orden ASCII, la cadena de texto que comienza por
D00200 es mayor que la que comienza por D00300, se invertir el
orden de las dos cadenas.

Orden alfabtico

Cadena de texto
Se comparan las
leche
leche Se comparan las
cadenas de texto
cadenas de texto
agua
zumo zumo y agua;
D00200: leche zumo y leche;
zumo
agua el resultado es
D00300: agua el resultado es
que invertirn su
que invertirn su
posicin, dado
posicin, dado que
que z > a.
z > l.
De este modo, se reorganizan tres cadenas de texto por orden alfabtico.
D00100: zumo

Se comparan las
cadenas de texto
leche y agua;
el resultado es
que invertirn su
posicin, dado
que l > a.

agua
leche
zumo

3-32 Instrucciones de control de tareas


En esta seccin se describen las instrucciones utilizadas para controlar las tareas.
Instruccin

3-32-1

Mnemnico

TASK ON

TKON

Cdigo de
funcin
820

TASK OFF

TKOF

821

Pgina
803
806

TAREA ON: TKON(820)

Funcin

Convierte la tarea especificada en ejecutable.

Smbolo de diagrama de
rels

TKON(820)
N

Variacio-- nes

Variacio-nes

N: Nmero de tarea

Ejecutado cada ciclo para condicin ON

TKON(820)

Ejecutado una vez para diferencial ascendente

@TKON(820)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables

Operandos
Especificaciones de
operandos

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

Tareas de
interrupcin
No se admite

N: Nmero de tarea
N es una constante decimal entre 00 y 31.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin

---

803

Instrucciones de control de tareas

Descripcin

Seccin 3-32

rea
rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

rea EM con banco

---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

--00 a 31

TKON(820) convierte la tarea especificada en ejecutable (una tarea habitual) y


pone en ON el indicador de tareas correspondiente (TK00 a TK31).
Esta instruccin slo podr aplicarse a las tareas habituales, las que se ejecutan en ciclos. No se pueden utilizar en tareas de interrupcin.
La tarea especificada en TKON(820) tambin se podr ejecutar en ciclos posteriores, siempre y cuando no se haya especificado el estado standby en
TKOF(821), un perifrico que ejecute CX-Programmer o un comando FINS.
Se puede convertir en ejecutable cualquier tarea desde cualquier ciclo, si bien la
tarea especificada no se ejecutar hasta el siguiente ciclo si su nmero es inferior al de la tarea local. Se ejecutar en el mismo ciclo si el nmero de tarea es
mayor que el de la tarea local.
El nmero de la tarea especificada es mayor que el de la tarea local (m<n).

El nmero de la tarea especificada es inferior al de la tarea local


(m>n).
Tarea n

Tarea m

Se ejecuta
en el siguiente ciclo.

Se ejecuta
en este ciclo.
Tarea n

Tarea m

Si la tarea especificada ya es ejecutable o si se ha especificado la tarea local, la


instruccin TKON(820) ser tratada como NOP(000).
Una tarea habitual seleccionada para que se ejecute al arrancar pasar al estado de ejecutable automticamente cuando el PLC comience a funcionar. El resto de las tareas permanecern en estado no ejecutable. Si se ejecuta la opera-

804

Instrucciones de control de tareas

Seccin 3-32

cin de borrar toda la memoria desde la consola de programacin, la tarea cclica 0 se convertir en ejecutable automticamente.
TKOF(821), CX-Programmer o un comando FINS pueden utilizarse para poner
en modo standby las tareas ejecutables.
TKON(820) convierte en ejecutables: las tareas habituales que no hayan sido
ejecutables desde el inicio de una operacin y las tareas habituales que cambiaron de ejecutables al modo standby.
Los trminos ejecutable y ejecutando no son intercambiables. Las tareas ejecutables se ejecutan por nmero durante la ejecucin del programa cclico. Las
tareas ejecutables no se ejecutarn si estn en modo standby antes de que la
ejecucin del programa alcance el nmero de tarea correspondiente.
Indicadores

Nombre

Etique
Operacin
ta
ER
ON si N no es una constante entre 00 y 31.

Indicador de
error

ON si la tarea especificada por N no existe.


ON si se ejecuta TKON(820) en una tarea de
interrupcin.
OFF en todos los dems casos.

Nombre

Direcciones

Indicadore
s de tarea

Operacin

TK00 a TK31

Estos indicadores se ponen en ON cuando la tarea


correspondiente es ejecutable y en OFF cuando no
lo es o cuando est en modo standby.
TK00 a TK31 corresponden a los nmeros de tarea
00 a 31.

Note A CX-Programmer y a la consola de programacin les corresponden diferentes


mtodos de entrada para el nmero de tarea, N: entrada de #0 a #31 para CXProgrammer y de 00 a 31 para la consola de programacin.
Precauciones

Esta instruccin convierte las tareas habituales en ejecutables, pero no ocurre


lo mismo con las de interrupcin.

Ejemplos

Especificacin de una tarea posterior


Cuando CIO 000000 est en ON, tal y como se muestra en el siguiente ejemplo,
la tarea nmero 3 pasa a ser ejecutable en la nmero 1. La tarea 3 se ejecutar
en el mismo ciclo cuando el programa alcance este ltimo nmero.

Tarea 1

#3

La tarea nmero 3 se ejecuta en el mismo ciclo.


Tarea 3

805

Instrucciones de control de tareas

Seccin 3-32

Especificacin de una tarea anterior


Cuando CIO 000000 est en ON, tal y como se muestra en el siguiente ejemplo,
la tarea nmero 1 pasa a ser ejecutable en la 3. La tarea 1 se ejecutar en el
siguiente ciclo cuando el programa alcance este ltimo nmero.
Tarea 1

La tarea nmero 1 se ejecuta en el siguiente ciclo.

Tarea 3

3-32-2

TAREA OFF: TKON(821)

Funcin

Pone la tarea especificada en el modo standby, es decir, impide la ejecucin de


sta.

Smbolo de diagrama de
rels

TKOF(821)
N

Variacio-- nes

Variacio-nes

N: Nmero de tarea

Ejecutado cada ciclo para condicin ON

TKOF(821)

Ejecutado una vez para diferencial ascendente

@TKOF(821)
No soportado.

Ejecutado una vez para diferencial


descendente
Especificacin de refresco inmediato

reas de programa
aplicables
Operandos
Especificaciones de
operandos

806

reas de programa
de bloques
OK

reas de programa
de pasos
OK

No soportado.
Subrutinas

OK

N: Nmero de tarea
N es una constante decimal entre 00 y 31.
rea

rea CIO

---

rea de trabajo

---

rea de bits de
retencin
rea de bits auxiliares

---

rea de temporizador

---

rea de contador

---

rea DM

---

rea EM sin banco

---

---

Tareas de
interrupcin
No se admite

Instrucciones de control de tareas


rea
rea EM con banco

Descripcin

Seccin 3-32
N
---

Direcciones de DM/EM
indirectas en binario
Direcciones de DM/EM
indirectas en BCD
Constantes

---

Registros de datos

---

Registros de ndice

---

Direccionamiento
indirecto utilizando
registros de ndice

---

--00 a 31

TKOF(821) pone la tarea cclica especificada en standby y el indicador de tareas correspondiente (TK00 a TK31) en OFF.
La tarea especificada en TKOF(821) tambin estar en modo standby en ciclos
posteriores, siempre y cuando TKON(820), un perifrico que ejecute CX-Programmer o un comando FINS no la hayan especificado como ejecutable.
Las tareas se pueden poner en standby desde cualquier tarea habitual distinta,
aunque la tarea especificada no pasar a este modo hasta el siguiente ciclo si el
nmero de tarea es inferior al de la tarea local (que ya se habra ejecutado). Se
pondr en standby en el mismo ciclo si el nmero de tarea es mayor que el de la
tarea local.
Si se ha especificado la tarea local en TKOF(821), se pondr en modo standby
inmediatamente y no se ejecutarn ninguna de las instrucciones siguientes.
El nmero de la tarea especificada es mayor que el de la tarea local (m<n).
Tarea m

El nmero de la tarea especificada es inferior al de la tarea local


(m>n).
Tarea n

En modo
standby durante un ciclo.
Tarea n

Tarea m

En modo
standby durante el siguiente ciclo.

Una tarea habitual seleccionada para que se ejecute al arrancar pasar al estado de ejecutable automticamente cuando el PLC comience a funcionar. El resto de las tareas permanecern en estado no ejecutable.
TKOF(821), CX-Programmer o un comando FINS pueden utilizarse para poner
en modo standby las tareas ejecutables.
Los trminos ejecutable y ejecutando no son intercambiables. Las tareas ejecutables se ejecutan por nmero durante la ejecucin del programa cclico. Las
tareas ejecutables no se ejecutarn si estn en modo standby antes de que la
ejecucin del programa alcance el nmero de tarea correspondiente.

807

Instrucciones de control de tareas

Seccin 3-32

A diferencia de TKON(820), esta instruccin se puede aplicar tanto a las tareas


de interrupcin como a las cclicas.
Indicadores

Nombre

Etique
Operacin
ta
ER
ON si N no es una constante entre 00 y 31.

Indicador de
error

ON si la tarea especificada por N no existe.


OFF en todos los dems casos.

Nombre
Indicado-res de
tarea

Direcciones
TK00 a TK31

Operacin
Estos indicadores se ponen en ON cuando la tarea
correspondiente es ejecutable y en OFF cuando no
lo es o cuando est en modo standby.
TK00 a TK31 corresponden a los nmeros de tarea
00 a 31.

Note A CX-Programmer y a la consola de programacin les corresponden diferentes


mtodos de entrada para el nmero de tarea, N: entrada de #0 a #31 para CXProgrammer y de 00 a 31 para la consola de programacin.
Precauciones

Esta instruccin pone las tareas habituales en standby, pero no ocurre lo mismo
con las de interrupcin.

Ejemplos

Especificacin de una tarea posterior


Cuando CIO 000000 est en ON, tal y como se muestra en el siguiente ejemplo,
la tarea nmero 3 pasa al modo standby en la nmero 1. La tarea nmero 3 no
se ejecutar en dicho ciclo cuando el programa alcance este ltimo nmero.

Tarea 1

#3

La tarea nmero 3 est en


modo standby en el mismo
ciclo, es decir, no se ejecutar en el ciclo actual ni en
el siguiente.

Tarea 3

Especificacin de una tarea anterior


Cuando CIO 000000 est en ON, tal y como se muestra en el siguiente ejemplo,

808

Instrucciones de control de tareas

Seccin 3-32

la tarea nmero 1 pasa al modo standby en la nmero 3. La tarea 1 no se ejecutar en el siguiente ciclo cuando el programa alcance este ltimo nmero.

Tarea 1

La tarea nmero 1 est en


modo standby en el siguiente ciclo, es decir, se ejecutar en el ciclo actual, pero no
en los siguientes.

Tarea 3
#3

809

SECCIN 4
Tiempos de ejecucin de instruccin y nmero de pasos
Esta seccin incluye los tiempos de ejecucin de instruccin y el nmero de pasos para cada instruccin de la serie CS1.

811

Tiempos de ejecucin de instruccin y nmero de pasos

Seccin 4

La siguiente tabla enumera los tiempos de ejecucin de todas las instrucciones


disponibles para los PLC de la serie CS1.
El tiempo de ejecucin total de instrucciones dentro de un programa de usuario
completo es el tiempo de proceso para la ejecucin del programa al calcular el
tiempo de ciclo (ver nota).
Note Los programas de usuario son tareas asignadas que se pueden ejecutar dentro
de tareas de ciclo y tareas de interrupcin que cumplen las condiciones de interrupcin.
Los tiempos de ejecucin de la mayora de las instrucciones varan dependiendo de la CPU utilizada (CS1j-CPU6j/CS1j-CPU4j) y de las condiciones en
el momento de ejecutar la instruccin. La lnea superior de cada instruccin de
la tabla siguiente muestra el tiempo mnimo necesario para procesar la instruccin y las condiciones de ejecucin necesarias; la lnea inferior muestra el tiempo mximo y las condiciones de ejecucin necesarias para procesar la instruccin.
El tiempo de ejecucin puede tambin variar cuando la condicin de ejecucin
est en OFF.
La tabla siguiente muestra tambin la longitud de cada instruccin en la columna Longitud (pasos). El nmero de pasos necesarios en el rea de programa del
usuario para cada una de las instrucciones de la serie CS1 vara de 1 a 7 pasos,
dependiendo de la instruccin y de los operandos utilizados. El nmero de pasos de un programa no es igual al el nmero de instrucciones.
La capacidad de programa para los PLC de la serie CS1 se mide en pasos,
mientras que la capacidad de los PLC OMRON anteriores, como los de las series C y CV, se miden en canales. En resumen, 1 paso equivale a 1 canal. Sin
embargo, la cantidad de memoria necesaria para cada instruccin es diferente
para algunas de las instrucciones de la serie CS1, y se producirn imprecisiones si la capacidad de un programa de usuario de otro PLC se convierte para un
PLC de la serie CS1 basndose en la asuncin de que 1 canal equivale a 1 paso.
Consulte la informacin que aparece al final de la Seccin4Tiempos de ejecucin de instruccin y pasos para obtener ms informacin sobre la conversin
de capacidades de programa de los PLC OMRON anteriores.
Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de entrada
de secuencia
Instruccin

Mnemnic
o

Cdig
o

LD

---

Longitud
(pasos))
(p

Tiempo de ejecucin
ON (s)
CPU6j

LOAD

LOAD NOT

AND

AND NOT

812

LD NOT

AND

AND NOT

---

---

---

CPU4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU6j

CPU4j

0,04

0,08

Designacin de
canales

0,04

0,08

0,50

0,71

Designacin de
IR+ indirecto

0,04

0,08

0,04

0,08

Designacin de
canales

0,04

0,08

0,50

0,71

Designacin de
IR+ indirecto

0,04

0,08

0,04

0,08

Designacin de
canales

0,04

0,08

0,50

0,71

Designacin de
IR+ indirecto

0,04

0,08

0,04

0,08

Designacin de
canales

0,04

0,08

0,50

0,71

Designacin de
IR+ indirecto

0,04

0,08

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdig
o

OR

---

Longitud
(pasos)

Tiempo de ejecucin
ON (s)
CPU6j

OR

OR NOT

OR NOT

---

CPU4j

Seccin 4
Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU6j

CPU4j

0,04

0,08

Designacin de
canales

0,04

0,08

0,50

0,71

Designacin de
IR+ indirecto

0,04

0,08

0,04

008

Designacin de
canales

0,04

0,08

0,50

0,71

Designacin de
IR+ indirecto

0,04

0,08

AND LOAD

AND LD

---

0,04

0,08

---

0,04

0,08

OR LOAD

OR LD

---

0,04

0,08

---

0,04

0,08

NOT

NOT

520

0,04

0,08

---

0,04

0,08

CONDICIN
ON

UP

521

0,46

0,54

---

0,12

0,25

CONDICIN
OFF

DOWN

522

0,46

0,54

---

0,12

0,25

LOAD BIT
TEST

LD TST

350

0,25

0,37

Seleccin de 1 0,21
bit de un canal
como constante

0,37

1,21

1,67

0,37

0,25

0,37

Seleccin de 1 0,21
bit IR+ indirecto
como IR+ indirecto
Seleccin de 1 0,21
bit de un canal
como constante

1,21

1,67

0,37

0,25

0,37

Seleccin de 1 0,21
bit IR+ indirecto
como IR+ indirecto
Seleccin de 1 0,21
bit de un canal
como constante

1,21

1,67

0,37

0,25

0,37

Seleccin de 1 0,21
bit IR+ indirecto
como IR+ indirecto
Seleccin de 1 0,21
bit de un canal
como constante

1,21

1,67

Seleccin de 1
bit IR+ indirecto
como IR+ indirecto

0,21

0,37

0,25

0,37

Seleccin de 1 0,21
bit de un canal
como constante

0,37

1,21

1,67

Seleccin de 1
bit IR+ indirecto
como IR+ indirecto

0,37

LOAD BIT
TEST NOT

AND BIT
TEST

AND BIT
TEST NOT

OR BIT TEST

LD TSTN

AND TST

351

350

AND TSTN 351

OR TST

350

0,21

0,37

0,37

0,37

813

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdig
o

OR TSTN

351

Longitud
(pasos)

Tiempo de ejecucin
ON (s)
CPU6j

OR BIT TEST
NOT

Instrucciones de salida
de secuencia
Instruccin

SALIDA

SALIDA NEGADA

BIESTABLE

Mnemnic
o
OUT

OUT NOT

KEEP

Cdig
o
---

---

011

013

DIFERENCIAL DESCENDENTE

DIFD

014

ACTIVAR

SET

RSET

ACTIVAR
MLTIPLES
BITS

SETA

RESET
MTIPLE

RSTA

Instrucciones de control
de secuencia

814

CPU4j

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU6j

CPU4j

0,25

0,37

Seleccin de 1 0,21
bit de un canal
como constante

0,37

1,21

1,67

Seleccin de 1
bit IR+ indirecto
como IR+ indirecto

0,37

0,21

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

DIFERENDIFU
CIAL ASCENDENTE

RESET

Seccin 4

---

---

530

531

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Tiempo de ejecucin
ON (s)

0,17

0,21

Designacin de
canales

0,04

0,08

0,62

0,83

Designacin de
IR+ indirecto

0,04

0,08

0,17

0,21

Designacin de
canales

0,04

0,08

0,62

0,83

Designacin de
IR+ indirecto

0,04

0,08

0,25

0,29

Designacin de
canales

0,04

0,08

0,67

0,87

Designacin de
IR+ indirecto

0,04

0,08

0,46

0,54

Designacin de
canales

0,08

0,17

0,87

1,12

Designacin de
IR+ indirecto

0,08

0,17

0,46

0,54

Designacin de
canales

0,08

0,17

0,87

1,12

Designacin de
IR+ indirecto

0,08

0,17

0,17

0,21

Designacin de
canales

0,04

0,08

0,58

0,79

Designacin de
IR+ indirecto

0,04

0,08

0,17

0,21

Designacin de
canales

0,04

0,08

0,58

0,79

Designacin de
IR+ indirecto

0,04

0,08

7,8

7,8

Activacin de 1
bit

0,21

0,37

38,8

38,8

Activacin de
1.000 bits

7,8

7,8

Reset de 1 bit

0,21
,

0,37
,

38,8

38,8

Reset de 1.000
bits

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Tiempos de ejecucin de instruccin y nmero de pasos

Seccin 4

Tiempo de ejecucin
ON (s)

Mnemnic
o

Cdig
o

Longitud
(pasos))
(p
(V nota)
t )
(Ver

END

END

001

4,0

4,0

---

4,0

4,0

NO OPERACIN

NOP

000

0,08

0,12

---

0,08

0,12

INTERLOCK

IL

002

0,12

0,12

---

0,08

0,12

BORRADO
DE INTERLOCK

ILC

003

0,12

0,12

---

0,08

0,12

SALTO

JMP

004

8,1

8,1

---

4,8

4,8

FIN DE SALTO

JME

005

3,8

3,8

Cuando no se
cumple la condicin JMP

3,8

3,8

SALTO
CONDICIONAL

CJP

510

7,4

7,4

Cuando se
cumple la condicin JMP

5,1

5,1

SALTO
CONDICIONAL NEGADO

CJPN

511

8,5

8,5

Cuando se
cumple la condicin JMP

4,2

4,2

SALTO
MLTIPLE

JMP0

515

0,12

0,12

---

0,08

0,12

FIN DE SALTO MLTIPLE

JME0

516

0,12

0,12

---

0,08

0,12

LAZOS
FOR--NEXT

FOR

512

0,12

0,21

Designacin de
una constante

0,12

0,21

0,62

0,83

Designacin de
IR+ indirecto

0,12

0,21

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de ejecucin
OFF (s)

Instruccin

CPU-6j

CPU-4j

ROMPER
LAZO

BREAK

514

0,12

0,12

---

0,08

0,12

LAZOS
FOR--NEXT

NEXT

513

0,17

0,17

Cuando el lazo
contina

008

0,12

0,12

0,12

Cuando el lazo
finaliza

0,08

0,12

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
temporizador y contador
Instruccin

TEMPORIZADOR

CONTADOR

TEMPORIZADOR DE ALTA VELOCI


VELOCIDAD

Mnemnic
o
TIM

CNT

TIMH

Cdigo

---

---

015

Tiempo de
ejecucin ON (s)
CPU-6j

CPU-4j

CPU-6j

CPU-4j

0,37

0,42

Constante para
SV

0,17

0,29

0,87

1,12

IR+ indirecto
para SV

0,17

0,29

0,37

0,42

Constante para
SV

0,17

0,29

0,87

1,12

IR+ indirecto
para SV

0,17

0,29

0,37

0,42

Constante para
SV

0,17

0,29

0,87

1,12

IR+ indirecto
para SV

0,17

0,29

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

815

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

Longitud
(pasos)
(Ver nota)

CPU-6j

CPU-4j

CPU-6j

CPU-4j

0,37

0,42

Constante para
SV

0,17

0,29

0,87

1,12

IR+ indirecto
para SV

0,17

0,29

21,4

21,4

---

---

---

14,8

14,8

Al reset

---

---

10,7

10,7

Al enclavar

---

---

12,8

12,8

---

7,8

7,8

7,8

7,8

Al enclavar

26,0

26,0

---

0,21

0,37

7,8

7,8

Al reset

20,9

20,9

Normal

17,5
,

17,5
,

16,0

16,0

Al reset

5,7

5,7

Al enclavar

13,9

13,9

Al reset de 1
canal

0,17

0,29

5,42 ms

5,42 ms

Al reset de
1.000 canales

TEMPORIZADOR DE
MUY ALTA
VELOCIDAD

TMHH

TEMPORIZADOR TOTALI
TOTALIZADOR

TTIM

TEMPORIZADOR LARGO

TIML

542

TEMPORIZADOR MULTISALIDA

MTIM

543

CONTADOR
CNTR
REVERSIBLE
RESET DE
TEMPORIZADOR/CONTA
DOR/CONTADOR

CNR

540

087

012

545

Seccin 4

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
comparacin

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Tiempo de ejecucin
ON (s)

300 (=)
305 (<>)
( )
310 (<)
( )
315 (<=)
320 (>)
325 (>=)

4
4
4
4
4
4

0,21

0,37

Comparacin
0,21
de 2 constantes

0,37

1,12

1,58

0,37

LD, AND,
OR +
=, <>,
<, <=,
>, >= +
L

301 (=)
306 (<>)
( )
311 (<)
( )
316 (<=)
321 (>)
326 (>=)

4
4
4
4
4
4

0,29

0,54

Comparacin
0,21
de 2 direcciones de IR+ indirecto
Comparacin
0,29
de 2 constantes

1,21

1,75

0,21

0,37

Instrucciones de comparacin de
entrada
(con signo)

LD, AND,
OR +
=, <>,
<, <=,
>, >= +
S

302 (=)
307 (<>)
312 (<)
317 (<=)
322 (>)
327 (>=)

4
4
4
4
4
4

6,5

6,5

Comparacin
de 2 direcciones de IR+ indirecto
---

0,21

0,37

Instrucciones de comparacin de
entrada (doble, con signo)

LD, AND,
OR +
=, <>,
<, <=,
>, >= +
SL

303 (=)
308 (<>)
313 (<)
318 (<=)
323 (>)
328 (>=)

4
4
4
4
4
4

6,5

6,5

---

0,29

0,54

COMPARAR

CMP

020

0,17

0,29

Comparacin
0,17
de 2 constantes

0,29

1,08

1,50

Comparacin
de 2 direcciones de IR+ indirecto

0,29

Instruccin

Mnemnic
o

Instrucciones de comparacin
i de
d
entrada (sin
signo)

LD, AND,
OR +
=, <>,
<, <=,
>, >=

Instrucciones de comparacin
i de
d
entrada (doble, sin signo)

816

Cdigo

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

0,17

CPU-4j

0,54

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

COMPARAR DOBLE

CMPL

COMPARACIN BINARIA CON


SIGNO
COMPARACIN BINARIA CON
SIGNO DOBLE

CPS

114

CPSL

Seccin 4

Longitud
(pasos)
(Ver nota)

Tiempo de ejecucin
ON (s)

0,25

0,46

Comparacin
0,25
de 2 constantes

0,46

1,17

1,67

Comparacin
de 2 direcciones de IR+ indirecto

0,17

0,29

6,5

6,5

---

0,17

0,29

115

6,5

6,5

---

0,17

0,29

COMPATCMP
RAR TABLA

085

21,92

21,92

---

0,21

0,37

COMPARACIN
MLTIPLE

MCMP

019

31,2

31,2

---

0,21

0,37

COMPARAR BLOQUE SIN


SIGNO

BCMP

068

32,6

32,6

---

0,21

0,37

060

MOVER

MOVER DOBLE

MOVER NEGADO

MOVER DOBLE NEGADO

Mnemnic
o
MOV

MOVL

MVN

MVNL

CPU-4j

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
transferencia de datos
Instruccin

CPU-6j

Condiciones
Arriba: mn.
Abajo: mx.

Cdigo

021

498

022

499

Tiempo de
ejecucin ON (s)
CPU-6j

CPU-4j

0,25

0,29

Transferencia
0,17
de una constante a un canal

0,29

1,21

1,62

Transferencia
de IR+ indirecto
a IR+ indirecto

0,17

0,29

0,42

0,50

Transferencia
0,21
de una constante a un canal

0,37

1,42

1,92

Transferencia
de IR+ indirecto
a IR+ indirecto

0,17

0,29

0,25

0,29

Transferencia
0,17
de una constante a un canal

0,29

1,21

1,62

Transferencia
de IR+ indirecto
a IR+ indirecto

0,17

0,29

0,42

0,50

Transferencia
0,21
de una constante a un canal

0,37

1,42

1,92

Transferencia
de IR+ indirecto
a IR+ indirecto

0,17

0,29

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

CPU-6j

CPU-4j

MOVER BIT

MOVB

082

7,5

7,5

---

0,21

0,37

MOVER
DGITO

MOVD

083

7,3

7,3

---

0,21

0,37

817

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

TRANSFERIR BITS
MLTIPLE

XFRB

TRANSFERIR BLOQUE

XFER

RELLENAR
BLOQUE

BSET

Cdigo

062

070

Longitud
(pasos)
(Ver nota)

CPU-6j

CPU-4j

13,6

13,6

Transferencia
de 1 bit

269,2

269,2

Transferencia
de 255 bits

11,2

11,2

Transferencia
de 1 canal

633,5

633,5

Transferencia
de 1.000 canales

8,5

8,5

Seleccin de 1
canal

278,3

278,3

Seleccin de
1.000 canales

0,50

0,67

1,42

1,92

0,92
1,83

071

073

Seccin 4
Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,21

0,37

0,21

0,37

0,21

0,37

Canal a canal

0,17

0,29

IR+ indirecto a
IR+ indirecto

0,17

0,29

1,25

Canal a canal

0,17

0,29

2,50

IR+ indirecto a
IR+ indirecto

0,17

0,29

INTERCAMBIAR DATOS

XCHG

INTECAMBIAR DATOS
DOBLE

XCGL

DISTRIBUIR
DATOS

DIST

080

7,0

7,0

---

0,21

0,37

RECOGER
DATOS

COLL

081

7,1

7,1

---

0,21

0,37

MOVER A
REGISTRO
GS O

MOVR

560

0,42

0,50

Canal a IR

0,21

0,37

0,96

1,29

IR+ indirecto a
IR

0,17

0,29

MOVER PV
DE TIM/CNT
/C
A REGISTRO

MOVRW

0,42

0,50

Canal a IR

0,21

0,37

0,96

1,29

IR+ indirecto a
IR

0,17

0,29

562

REGISTRO
DE DESPLA
DESPLAZAMIENTO

Mnemnic
o
SFT

Cdigo

010

084

REGISTRO
DE DESPLAZAMIENTO
ASNCRONO

017

818

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

REGISTRO
SFTR
DE DESPLAZAMIENTO
REVERSIBLE
ASFT

561

Instrucciones de
desplazamiento de datos
Instruccin

Tiempo de
ejecucin ON (s)

Tiempo de
ejecucin ON (s)
CPU-6j

CPU-4j

---

---

10,4

10,4

Desplazamiento de 1 canal

12,7

12,7

763,1

763,1

Desplazamiento de 1.000 canales

365,5

365,5

9,6

9,6

Desplazamiento de 1 canal

0,21

0,37

859,6

859,6

Desplazamiento de 1.000 canales

7,7

7,7

Desplazamiento de 1 canal

0,21

0,37

2,01 ms

2,01 ms

Desplazamiento de 1.000 canales

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

CPU-6j

CPU-4j

Reset

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

DESPLAZAMIENTO DE
CANAL

WSFT

DESPLAZAMIENTO
ARITMTICO
A IZQUIERDA

ASL

DESPLAZAMIENTO A
IZQUIERDA
DOBLE

ASLL

DESPLAZAMIENTO
ARITMTICO
A DERECHA

ASR

DESPLAZAMIENTO A
DERECHA
DOBLE

ASRL

ROTAR A IZQUIERDA

ROL

ROTAR A IZQUIERDA
DOBLE

ROLL

ROTAR A IZQUIERDA
SIN ACAACA
RREO

RLNC

ROTAR DOBLE A IZQUIERDA


SIN ACARREO

RLNL

ROTAR A
DERECHA

ROR

Cdigo

016

025

570

026

571

027

572

574

576

028

ROTAR DORORL
BLE A DERECHA

573

ROTAR A
DERECHA
SIN ACAACA
RREO

575

RRNC

Seccin 4

Longitud
(pasos)
(Ver nota)

CPU-6j

CPU-4j

7,8

7,8

Desplazamiento de 1 canal

781,7

781,7

Desplazamiento de 1.000 canales

0,29

0,37

0,75

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,21

0,37

Desplazamiento de canales

0,12

0,21

1,0

Desplazamiento de IR+ indirecto

0,12

0,21

0,50

0,67

Desplazamiento de canales

0,12

0,21

0,96

1,29

Desplazamiento de IR+ indirecto

0,12

0,21

0,29

0,37

Desplazamiento de canales

0,12

0,21

0,75

1,0

Desplazamiento de IR+ indirecto

0,12

0,21

0,50

0,67

Desplazamiento de canales

0,12

0,21

0,96

1,29

Desplazamiento de IR+ indirecto

0,12

0,21

0,29

0,37

Rotacin de canales

0,12

0,21

0,75

1,0

Rotacin de
IR+ indirecto

0,12

0,21

0,50

0,67

Rotacin de canales

0,12

0,21

0,96

1,29

Rotacin de
IR+ indirecto

0,12

0,21

0,29

0,37

Rotacin de canales

0,12

0,21

0,75

1,0

Rotacin de
IR+ indirecto

0,12

0,21

0,50

0,67

Rotacin de canales

0,12

0,21

0,96

1,29

Rotacin de
IR+ indirecto

0,12

0,21

0,29

0,37

Rotacin de canales

0,12

0,21

0,75

1,0

Rotacin de
IR+ indirecto

0,12

0,21

0,50

0,67

Rotacin de canales

0,12

0,21

0,96

1,29

Rotacin de
IR+ indirecto

0,12

0,21

0,29

0,37

Rotacin de canales

0,12

0,21

0,75

1,0

Rotacin de
IR+ indirecto

0,12

0,21

819

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

ROTAR DORRNL
BLE A DERECHA SIN
ACARREO

577

DESPLAZAMIENTO DE
UN DGITO A
IZQUIERDA

SLD

074

DESPLAZAMIENTO DE
UN DGITO A
DERECHA

SRD

DESPLAZAMIENTO DE
UN DATO N
BITS A IZQUIERDA

NSFL

DESPLAZAMIENTO DE
UN DATO N
BITS A DERECHA

NSFR

DESPLAZAMIENTO DE
N BITS A IZQUIERDA

NASL

DESPLAZAMIENTO DOBLE DE N
BITS A IZ
IZQUIERDA

NSLL

DESPLAZAMIENTO DE
N BITS A DERECHA

NASR

DESPLAZAMIENTO DOBLE DE N
BITS A DEDE
RECHA

NSRL

Instrucciones de
aumento/disminucin

820

075

578

579

580

582

581

583

Seccin 4

Longitud
(pasos)
(Ver nota)

CPU-6j

CPU-4j

CPU-6j

CPU-4j

0,50

0,67

Rotacin de canales

0,12

0,21

0,96

1,29

Rotacin de
IR+ indirecto

0,12

0,21

8,2

8,2

Desplazamiento de 1 canal

0,17

0,29

760,7

760,7

Desplazamiento de 1.000 canales

8,7

8,7

Desplazamiento de 1 canal

0,17

0,29

1,07 ms

1,07 ms

Desplazamiento de 1.000 canales

10,5

10,5

Desplazamiento de 1 bit

0,21

0,37

55,5

55,5

Desplazamiento de 1.000 bits

10,5

10,5

Desplazamiento de 1 bit

0,21

0,37

69,3

69,3

Desplazamiento de 1.000 bits

0,29

0,37

Desplazamien- 0,17
to de 1 canal en
1 bit

0,29

1,25

1,71

Desplazamiento de IR+ indirecto en 1 bit

0,17

0,29

0,50

0,67

Desplazamien- 0,17
to de 1 canal en
1 bit

0,29

1,46

2,0

Desplazamiento de IR+ indirecto en 1 bit

0,17

0,29

0,29

0,37

Desplazamien- 0,17
to de 1 canal en
1 bit

0,29

1,25

1,71

Desplazamiento de IR+ indirecto en 1 bit

0,17

0,29

0,50

0,67

Desplazamien- 0,17
to de 1 canal en
1 bit

0,29

1,46

2,0

Desplazamiento de IR+ indirecto en 1 bit

0,29

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)

0,17

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

INCREMENTO ++
BINARIO

DOBLE INCREMENTO
BINARIO

++L

DECREMENTO BINARIO

-- --

DOBLE DECREMENTO
BINARIO

Cdigo

590

591

-- --L

CPU-6j

CPU-4j

CPU-6j

CPU-4j

0,29

0,37

Aumento de un
canal

0,12

0,21

0,75

1,0

Aumento de
IR+ indirecto

0,12

0,21

0,50

0,67

Aumento de un
canal

0,12

0,21

0,96

1,29

Aumento de
IR+ indirecto

0,12

0,21

0,29

0,37

Disminucin de
un canal

0,12

0,21

0,75

1,0

Disminucin de
IR+ indirecto

0,12

0,21

0,50

0,67

Disminucin de
un canal

0,12

0,21

0,96

1,29

Disminucin de
IR+ indirecto

0,12

0,21

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de
ejecucin OFF (s)

593

Tiempo de
ejecucin ON (s)

Longitud
(pasos))
(p
(V nota)
t )
(Ver

592

Seccin 4

INCREMENTO ++B
BCD

594

7,4

7,4

---

0,12

0,21

DOBLE INCREMENTO
BCD

++BL

595

6,1

6,1

---

0,12

0,21

DECREMENTO BCD

-- --B

596

7,2

7,2

---

0,12

0,21

DOBLE DECREMENTO
BCD

-- --BL

597

7,1

7,1

---

0,12

0,21

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones
matemticas de smbolos
Instruccin

Mnemnic
o

SUMA BINARIA
CON SIGNO SIN
ACARREO

DOBLE SUMA BINARIA CON


SIGNO SIN
ACARREO

+L

SUMA BINARIA
CON SIGNO CON
ACARREO

+C

Cdigo

400

401

402

Longitud
(pasos))
(p
(V
t )
(Ver nota)

Tiempo de ejecucin
ON (s)

0,25

0,37

Constante +
constante
canal

0,21

0,37

1,71

2,33

0,21

0,37

0,42

0,54

IR+ indirecto +
IR+ indirectoIR+ indirecto
Constante +
constante
canal

0,29

0,54

1,96

2,71

0,21

0,37

0,25

0,37

IR+ indirecto +
IR+ indirectoIR+ indirecto
Constante +
constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto +
IR+ indirectoIR+ indirecto

0,21

0,37

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab
j mx.

Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

821

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

DOBLE SUMA BINARIA CON


SIGNO
CON ACARREO

+CL

SUMA BCD
SIN ACARREO

+B

404

DOBLE SUMA BCD


SIN ACARREO

+BL

SUMA BCD
CON ACARREO

Seccin 4

Longitud
(pasos)
(Ver nota)

Tiempo de ejecucin
ON (s)

0,42

0,54

Constante +
constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto +
IR+ indirectoIR+ indirecto

0,21

0,37

14,0

14,0

---

0,21

0,37

405

19,0

19,0

---

0,21

0,37

+BC

406

14,5

14,5

---

0,21

0,37

DOBLE SUMA BCD


CON ACARREO

+BCL

407

19,6

19,6

---

0,21

0,37

RESTA BINARIA
CON SIGNO SIN
ACARREO

--

410

0,25

0,37

Constante -constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto -IR+ indirectoIR+ indirecto

0,21

0,37

DOBLE
RESTA BINARIA
CON SIGSIG
NO SIN
ACARREO

--L

0,42

0,54

Constante -constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto -IR+ indirectoIR+ indirecto

0,21

0,37

RESTA BINARIA
CON SIGNO CON
ACARREO

--C

0,25

0,37

Constante -constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto -IR+ indirectoIR+ indirecto

0,21

0,37

DOBLE
RESTA BINARIA
CON SIGSIG
NO CON
ACARREO

--CL

0,42

0,54

Constante -constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto -IR+ indirectoIR+ indirecto

0,21

0,37

RESTA
BCD SIN
ACARREO

--B

414

13,1

13,1

---

0,21

0,37

DOBLE
RESTA
BCD SIN
ACARREO

--BL

415

18,2

18,2

---

0,21

0,37

822

403

411

412

413

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

RESTA
BCD CON
ACARREO

--BC

DOBLE
RESTA
BCD CON
ACARREO

Cdigo

Seccin 4

Longitud
(pasos)
(Ver nota)

Tiempo de ejecucin
ON (s)

416

13,8

13,8

---

0,21

0,37

--BCL

417

18,8

18,8

---

0,21

0,37

MULTIPLICACIN BINARIA
CON SIGSIG
NO

420

0,50

0,58

Constante
constante
canal

0,21

0,37

1,96

2,62

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

DOBLE
MULTIPLICACIN BINARIA
CON SIGNO

*L

421

11,19

11,19

---

0,21

0,37

MULTIPLICACIN BINARIA SIN


SIGNO

*U

422

0,50

0,58

Constante
constante
canal

0,21

0,37

1,96

2,62

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

DOBLE
MULTIPLICACIN BINARIA SIN
SIGNO

*UL

423

10,63

10,63

---

0,21

0,37

MULTIPLICACIN
BCD

*B

424

12,8

12,8

---

0,21

0,37

DOBLE
MULTIPLICACIN
BCD

*BL

425

35,2

35,2

---

0,21

0,37

DIVISIN
BINARIA
CON SIGNO

430

0,75

0,83

Constante
constante
canal

0,21

0,37

2,21

2,87

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

DOBLE DIVISIN BINARIA


CON SIGNO

/L

431

9,8

9,8

---

0,21

0,37

DIVISIN
BINARIA
SIN SIGNO

/U

432

0,75

0,83

Constante
constante
canal

0,21

0,37

2,21

2,87

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

9,1

9,1

---

0,21

0,37

DOBLE DIVISIN BINARIA SIN


SIGNO

/UL

433

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

823

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

DIVISIN
BCD

/B

DOBLE DIVISIN
BCD

/BL

Cdigo

Longitud
(pasos)
(Ver nota)

Tiempo de ejecucin
ON (s)

434

15,9

15,9

---

0,21

0,37

435

26,2

26,2

---

0,21

0,37

BCD-A-BINARIO

Mnemnic
o
BIN

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
conversin
Instruccin

Seccin 4

Cdigo

023

Longitud
(pasos))
(p
(V nota))
(Ver

Tiempo de ejecucin
ON (s)

0,25

0,29

1,21

1,62

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

A un canal despus de convertir a constante


A un canal despus de convertir IR+ indirecto

0,17

0,29

0,17

0,29

BCD DOBLE-A-BINARIO DOBLE

BINL

058

9,1

9,1

---

0,17

0,29

BINARIO-ABCD

BCD

024

8,3

8,3

---

0,17

0,29

BINARIO
DOBLE-ABCD DOBLE

BCDL

059

9,2

9,2

---

0,17

0,29

COMPLEMENTO A 2

NEG

160

0,25

0,29

0,17

0,29

1,21

1,62

A un canal despus de convertir a constante


A IR+ indirecto
despus de
convertir a IR+
indirecto

0,17

0,29

0,42

0,5

0,21

0,37

1,42

1,92

A un canal despus de convertir a constante


A IR+ indirecto
despus de
convertir a IR+
indirecto

0,17

0,29

0,42

0,50

0,17

0,29

1,37

1,83

A un canal despus de expandir desde una


constante
A IR+ indirecto
despus de expandir desde
IR+ indirecto

0,17

0,29

COMPLEMENTO A 2
DOBLE

16-BIT A
32-BIT BINARIO
CON SIGSIG
NO
O

824

NEGL

SIGN

161

600

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

DECODIFICADOR 4 A
16

MLPX

CODIFICADOR 16 A 4

CONVERSIN ASCII

DMPX

ASC

Cdigo

076

077

086

Seccin 4

Longitud
(pasos)
(Ver nota)

Tiempo de ejecucin
ON (s)

8,8

8,8

Decodificacin
de 1 dgito (4 a
16)

12,8

12,8

Decodificacin
de 4 dgitos (4
a 16)

20,3

20,3

Decodificacin
de 1 dgito (8 a
256)

33,4

33,4

Decodificacin
de 2 dgitos (8
a 256)

10,4

10,4

Codificacin de
1 dgito (16 a 4)

59,1

59,1

Codificacin de
4 dgitos (16 a
4)

23,6

23,6

Codificacin de
1 dgito (256 a
8)

92,5

92,5

Codificacin de
2 dgitos (256 a
8)

9,7

9,7

Conversin de
1 dgito en ASCII

15,1

15,1

Conversin de
4 dgitos en ASCII

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

0,21

0,37

0,21

0,37

0,21

0,37

ASCII A
HEX

HEX

162

10,1

10,1

Conversin de
1 dgito

0,21

0,37

COLUMNA
A LNEA

LINE

063

29,1

29,1

---

0,21

0,37

LNEA A
COLUMNA

COLM

064

37,3

37,3

---

0,21

0,37

BCD-A-BINARIO
CON SIGNO

BINS

470

12,1

12,1

Seleccin del
formato de datos n 0

0,21

0,37

12,1

12,1

Seleccin del
formato de datos n 1

12,7

12,7

Seleccin del
formato de datos n 2

13,0

13,0

Seleccin del
formato de datos n 3

825

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

BCD-A-BINARIO
CON SIGNO DOBLE

BISL

BINARIO A
BCD CON
SIGNO

BINARIO A
BCD CON
SIGNO DOBLE

BCDS

BDSL

Cdigo

472

471

AND LGICA

AND LGICA
DOBLE

826

Mnemnic
o
ANDW

ANDL

Tiempo de ejecucin
ON (s)

13,6

13,6

Seleccin del
formato de datos n 0

13,7

13,7

Seleccin del
formato de datos n 1

14,2

14,2

Seleccin del
formato de datos n 2

14,4

14,4

Seleccin del
formato de datos n 3

10,6

10,6

Seleccin del
formato de datos n 0

10,8

10,8

Seleccin del
formato de datos n 1

10,9

10,9

Seleccin del
formato de datos n 2

11,5

11,5

Seleccin del
formato de datos n 3

11,6

11,6

Seleccin del
formato de datos n 0

11,8

11,8

Seleccin del
formato de datos n 1

12,0

12,0

Seleccin del
formato de datos n 2

12,5

12,5

Seleccin del
formato de datos n 3

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

0,21

0,37

0,21

0,37

0,21

0,37

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones lgicas

Instruccin

Longitud
(pasos)
(Ver nota)

473

Seccin 4

Cdigo

034

610

Tiempo de
ejecucin ON (s)
CPU-6j

CPU-4j

CPU-6j

CPU-4j

0,25

0,37

Constante
constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

0,42

0,54

Constante
constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

OR LGICA

OR LGICA
DOBLE

OR EXCLUSIVA

OR EXCLUSIVA DOBLE

NOR EXCLUSIVA

NOR EXCLUSIVA DOBLE

COMPLEMENTO

COMPLEMENTO DOBLE

Mnemnic
o
ORW

ORWL

XORW

XORL

XNRW

XNRL

COM

COML

Cdigo

035

611

Mnemnic
o

CPU-6j

CPU-4j

CPU-6j

CPU-4j

0,25

0,37

Constante V
constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto V
IR+ indirecto
IR+ indirecto

0,21

0,37

0,42

0,54

Constante V
constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto V
IR+ indirecto
IR+ indirecto

0,21

0,37

0,25

0,37

Constante
constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

0,42

0,54

Constante
constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

0,25

0,37

Constante
constante
canal

0,21

0,37

1,71

2,33

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

0,42

0,54

Constante
constante
canal

0,29

0,54

1,96

2,71

IR+ indirecto
IR+ indirecto
IR+ indirecto

0,21

0,37

0,29

0,37

Inversin de ca- 0,12


nales

0,21

0,75

1,0

Inversin de
IR+ indirecto

0,12

0,21

0,50

0,67

Inversin de ca- 0,12


nales

0,21

0,96

1,29

Inversin de
IR+ indirecto

0,21

612

037

613

029

614

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)

0,12

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones
matemticas especiales
Instruccin

Longitud
(pasos)
(Ver nota)

036

Seccin 4

Cdigo

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)

CPU-6j

CPU-4j

CPU-6j

CPU-4j

RAZ CUADRADA BINARIA

ROTB

620

530,7

530,7

---

0,17

0,29

RAZ CUADRADA BCD

ROOT

072

514,5

514,5

---

0,17

0,29

827

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

069

Seccin 4

Longitud
(pasos)
(Ver nota)

Tiempo de
ejecucin ON (s)
CPU-6j

CPU-4j

32,3

32,3

Designacin de
SIN y COS

78,3

78,3

Designacin de
aproximacin
de segmento
de lnea

PROCESOS
ARITMTICOS

APR

DIVISIN EN
COMA FLOTANTE

FDIV

079

176,6

176,6

CONTADOR
DE BITS

BCNT

067

22,1

22,1

Mnemnic
o

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,21

0,37

---

0,21

0,37

Recuento de 1
canal

0,21

0,37

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones
matemticas de coma
flotante
Instruccin

Condiciones
Arriba: mn.
Abajo: mx.

Cdigo

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)

CPU-6j

CPU-4j

CPU-6j

CPU-4j

COMA FLOTANTE A
16-BIT

FIX

450

14,5

14,5

---

0,17

0,29

COMA FLOTANTE A
32-BIT

FIXL

451

14,6

14,6

---

0,17

0,29

16-BIT A COMA FLOTANTE

FLT

452

11,1

11,1

---

0,17

0,29

32-BIT A COMA FLOTANTE

FLTL

453

10,8

10,8

---

0,17

0,29

SUMA COMA
FLOTANTE

+F

454

10,2

10,2

---

0,21

0,37

RESTA COMA FLOTANTE

--F

455

10,3

10,3

---

0,21

0,37

DIVISIN
COMA FLOTANTE

/F

457

12,0

12,0

---

0,21

0,37

MULTIPLICACIN COMA
FLOTANTE

*F

456

10,5

10,5

---

0,21

0,37

GRADOS A
RADIANES

RAD

458

14,9

14,9

---

0,17

0,29

RADIANES A
GRADOS

DEG

459

14,8

14,8

---

0,17

0,29

SENO

SIN

460

61,1

61,1

---

0,17

0,29

COSENO

COS

461

44,1

44,1

---

0,17

0,29

TANGENTE

TAN

462

22,6

22,6

---

0,17

0,29

ARCO SENO

ASIN

463

24,1

24,1

---

0,17

0,29

ARCO COSENO

ACOS

464

28,0

28,0

---

0,17

0,29

ARCO TANGENTE

ATAN

465

16,4

16,4

---

0,17

0,29

RAZ CUADRADA

SQRT

466

28,1

28,1

---

0,17

0,29

828

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

Longitud
(pasos)
(Ver nota)

Seccin 4

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)

CPU-6j

CPU-4j

CPU-6j

CPU-4j

EXPONENTE

EXP

467

96,7

96,7

---

0,17

0,29

LOGARITMO

LOG

468

17,4

17,4

---

0,17

0,29

POTENCIA
EXPONENCIAL

PWR

840

181,7

181,7

---

0,21

0,37

Instrucciones de
procesamiento de datos
de tabla
Instruccin

FIJAR
STACK

Mnemnic
o

SSET

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.
Cdigo

630

Tiempo de
ejecucin ON (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

CPU-6j

CPU-4j

8,5

8,5

Designacin de
5 canales del
rea de pila

276,8

276,8

Designacin de
1.000 canales
del rea de pila

Tiempo de
ejecucin OFF (s)
CPU-6j
0,17

CPU-4j
0,29

MOVER AL
STACK

PUSH

632

9,1

9,1

---

0,17

0,29

PRIMERO
EN ENTRAR
PRIMERO
EN SALIR

FIFO

633

10,6

10,6

Designacin de
5 canales del
rea de pila

0,17

0,29

1,13 ms

1,13 ms

Designacin de
1.000 canales
del rea de pila

LTIMO EN
ENTRAR
PRIMERO
EN SALIR

LIFO

634

9,9

9,9

---

0,17

0,29

DIMENSIONAR TABLA
DE REGISTROS

DIM

631

142,1

142,1

---

0,25

0,46

FIJAR LOCALIZACIN
REGISTRO

SETR

635

7,0

7,0

---

0,21

0,37

OBTENER
NMERO
REGISTRO

GETR

636

11,0

11,0

---

0,21

0,37

BUSCAR DATO

SRCH

181

19,5

19,5

Bsqueda de 1
canal

0,21

0,37

3,34 ms

3,34 ms

Bsqueda de
1.000 canales

13,6

13,6

Intercambio de
1 canal

0,17

0,29

2,82 ms

2,82 ms

Intercambio de
1.000 canales

24,9

24,9

Bsqueda de 1
canal

0,21

0,37

3,36 ms

3,36 ms

Bsqueda de
1.000 canales

25,3

25,3

Bsqueda de 1
canal

0,21

0,37

3,33 ms

3,33 ms

Bsqueda de
1.000 canales

INTERCAMBIAR BYTES

SWAP

ENCONTRAR MXIMO

MAX

ENCONTRAR MNIMO

MIN

637

182

183

829

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

SUMA

CALCULAR
FCS

Mnemnic
o

Cdigo

SUM

184

FCS

180

Mnemnic
o

CONTROL
PID

PID

Longitud
(pasos)
(Ver nota)

CPU-6j

CPU-4j

38,50

38,50

Suma de 1 canal

1,95 ms

1,95 ms

Suma de 1.000
canales

28,25

28,25

Para longitud
de tabla de 1
canal

2,48 ms

2,48 ms

Para longitud
de tabla de
1.000 canales

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,21

0,37

0,21

0,37

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de control
de datos
Instruccin

Seccin 4

Cdigo

190

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de ejecucin
ON (s)

678,2

678,2

CPU-6j
15,8
,
Ejecucin inicial

474,9

474,9

Muestreo

141,3

141,3

Sin muestreo

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-4j
15,8
,

ONTROL
DE LMITE

LMT

680

22,1

22,1

---

0,21

0,37

CONTROL
DE BANDA
MUERTA

BAND

681

22,5

22,5

---

0,21

0,37

CONTROL
DE ZONA
MUERTA

ZONE

682

20,5

20,5

---

0,21

0,37

ESCALADO SCL

194

56,8

56,8

---

0,21

0,37

ESCALADO SCL2
2

486

50,7

50,7

---

0,21

0,37

ESCALADO SCL3
3

487

57,7

57,7

---

0,21

0,37

VALOR MEDIO

195

53,1

53,1

Media de una
operacin

25,5

25,5

419,9

419,9

Media de 64
operaciones

AVG

Instrucciones de
subrutinas
Instruccin

Mnemnic
o

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.
Cdigo

Tiempo de
ejecucin ON (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

LLAMADA A
SUBRUTINA

SBS

091

17,0

17,0

---

0,12

0,21

ENTRADA
SUBRUTINA

SBN

092

---

---

---

---

---

FINAL DE
SUBRUTINA

RET

093

20,6

20,6

---

---

---

MACRO

MCRO

099

23,3

23,3

---

0,21

0,37

Instrucciones de control
de interrupcin

830

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Seccin 4

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de
ejecucin OFF (s)

CPU-6j

CPU-4j

CPU-6j

CPU-4j

FIJAR
MSCARA DE
INTERRUPCIN

MSKS

690

39,5

39,5

---

0,17

0,29

LEER
MSCARA DE
INTERRUPCIN
BORRAR INTERRUPCIN

MSKR

692

11,9

11,9

---

0,17

0,29

CLI

691

41,3

41,3

---

0,17

0,29

INHIBIR INTERRUPCIONES

DI

693

16,8

16,8

---

0,08

0,12

HABILITAR IN- EI
TERRUPCIONES

694

21,8

21,8

---

---

---

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de pasos
Instruccin

Mnemnic
o

DEFINIR
PASO

STEP

INICIAR PA- SNXT


SO

Instrucciones de
unidades de E/S bsicas

Cdigo

008

009

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Tiempo de ejecucin
ON (s)

27,1

27,1

Bit de control
de pasos ON

24,4

24,4

Bit de control
de pasos OFF

10,0

10,0

---

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j
---

CPU-4j
---

0,12

0,21

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

831

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

REFRESCO
E/S

Mnemnic
o
IORF

Cdigo

097

Seccin 4

Tiempo de
ejecucin ON (s)

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

CPU-6j

CPU-4j

81,7

81,7

Refresco de 1
canal (E) de
unidades de
E/S bsicas
C200H

86,7

86,7

Refresco de 1
canal (S) de
unidades de
E/S bsicas
C200H

23,5

23,5

Refresco de 1
canal (E) de
unidades de
E/S bsicas
CS1

25,6

25,6

Refresco de 1
canal (S) de
unidades de
E/S bsicas
C200H

357,1

357,1

Refresco de 10
canales (E) de
unidades de
E/S bsicas
C200H

407,5

407,5

Refresco de 10
canales (S) de
unidades de
E/S bsicas
C200H

377,5

377,58

Refresco de 60
canales (E) de
unidades de
E/S bsicas
CS1

460,1

460,1

Refresco de 60
canales (S) de
unidades de
E/S bsicas
CS1

Tiempo de
ejecucin OFF (s)
CPU-6j
0,17

CPU-4j
0,29

0,37

DECODIFICADOR DE
7-SEGMENTOS
LECTURA
DE E/S INTELIGENTE

SDEC

078

14,1

14,1

---

0,21

IORD

222

---

---

---

ESCRITURA
DE E/S INTELIGENTE

IOWR

223

---

---

---

Los tiempos de lectura/escritura dependen de la unidad de


E/S especial
i l para la
l
que se ejecuta la instruccin.

832

Tiempos de ejecucin de instruccin y nmero de pasos

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
comunicaciones serie
Instruccin

MACRO DE
PROTOCOLO

TRANSMITIR

RECIBIR

SETUP DE
PUERTO SERIE

Mnemnic
o
PMCR

TXD

RXD

STUP

Cdigo

260

236

Mnemnic
o

CPU-6j

CPU-4j

276,8

276,8

305,9

305,9

98,8

98,8

1,10 ms

1,10 ms

Envo de 256
bytes

131,1

131,1

Almacenamiento de 1 byte

1,11 ms

1,11 ms

Almacenamiento de 256 bytes

440,4

440,4

---

237

Tiempo de
ejecucin ON (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

235

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Envo de 0 canales, recepcin de 0 canales


Envo de 249
canales, recepcin de 249 canales
Envo de 1 byte

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,25

0,46

0,21
,

0,37
,

0,21

0,37

0,17

0,29

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de red
Instruccin

Seccin 4

Cdigo

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de ejecucin
ON (s)
CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

ENVIAR A
RED

SEND

090

123,9

123,9

---

0,21

0,37

RECIBIR
DE RED

RECV

098

124,7

124,7

---

0,21

0,37

ENVIAR
COMANDO

CMND

490

136,8

136,8

---

0,21

0,37

Instrucciones de
memoria de archivos

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

833

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

LEER ARCHIVO DE
DATOS

FREAD

ESCRIBIR
ARCHIVO
DE DATOS

FWRIT

Cdigo

700

701

VISUALIZAR MENSAJE

Mnemnic
o
MSG

Instrucciones de reloj

834

Tiempo de ejecucin
ON (s)

684,1

Condiciones
Superior:
mn.
p
I f i

Inferior:
mx.

Tiempo de ejecucin
OFF (s)

684,1

Datos binarios,
directorio de 2
caracteres +
nombre de archivo

0,25

0,46

1,35 ms

1,35 ms

Datos binarios,
directorio de 73
caracteres +
nombre de archivo

709,8

709,8

Datos de texto,
directorio de 2
caracteres +
nombre de archivo

1,37 ms

1,37 ms

Datos de texto,
directorio de 73
caracteres +
nombre de archivo

684,7

684,7

0,25

0,46

1,36 ms

1,36 ms

728,8

728,8

Binario, directorio de 2 caracteres + nombre


de archivo
Binario, directorio de 73 caracteres + nombre
de archivo
Datos de texto,
directorio de 2
caracteres +
nombre de archivo

1,39 ms

1,369ms

CPU-6j

CPU-4j

CPU-6j

CPU-4j

Datos de texto,
directorio de 73
caracteres +
nombre de archivo

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
visualizacin
Instruccin

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Seccin 4

Cdigo

046

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de ejecucin
ON (s)

14,3

14,3

Visualizacin
de mensaje

11,3

11,3

Eliminacin de
mensaje visualizado

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j
0,17

CPU-4j
0,29

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Cdigo

Tiempo de
ejecucin ON (s)

Tiempo de
ejecucin OFF (s)

CPU-6j

CPU-4j

Condiciones
Superior:
mn.
p
I f i

Inferior:
mx.

CPU-6j

CPU-4j

SUMAR CALENDARIO

CADD

730

209,5

209,5

---

0,21

0,37

RESTAR CALENDARIO

CSUB

731

184,1

184,1

---

0,21

0,37

HORAS A SEGUNDOS

SEC

065

35,8

35,8

---

0,17

0,29

SEGUNDOS A
HORAS

HMS

066

42,1

42,1

---

0,17

0,29

AJUSTAR RELOJ

DATE

735

95,9

95,9

---

0,12

0,21

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
depuracin
Instruccin

Mnemnic
o

SEGUITRSM
MIENTO DE
DATOS

Cdigo

045

Longitud
(pasos))
(p
(V nota))
(Ver

Tiempo de ejecucin
ON (s)

120,0

120,0

Muestreo de 1
bit y 0 canales

1,06 ms

1,06 ms

Muestreo de 31
bits y 6 canales

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j
6,3

Mnemnic
o

Cdigo

Longitud
(pasos)
((Ver nota))

Tiempo de
ejecucin ON (s)

FAL

006

549,6

549,6

Registro de errores

244,8

244,8

Eliminacin de errores (en orden de


prioridad)

657,1

657,1

Eliminacin de errores (todos los errores)

219,4

219,4

Eliminacin de errores (individualmente)

Condiciones
Arriba: mn.
Abajo:
j mx.

CPU-6j CPU-4j
ALARMA DE
FALLO
O

ALARMA DE
FALLO GRAVE

FALS

007

---

---

---

DETECCIN
PUNTO DE
FALLO

FPD

269

202,3

202,3

Ejecutando

217,6

217,6

Sin salida de
mensaje
j

268,9

268,9

Ejecutando

283,6

283,6

Salida
de mensaje
j

Otras instrucciones

CPU-4j
6,3

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de
diagnstico de fallos
Instruccin

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Seccin 4

Tiempo de
ejecucin OFF
(s)
CPU-6j CPU-4j
0,17
,
0,29
,

---

---

13,5

13,5

Inicializando

Inicializando

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

835

Tiempos de ejecucin de instruccin y nmero de pasos

Seccin 4

Longitud
(pasos))
(p
(V nota)
t )
(Ver

Tiempo de ejecucin
ON (s)

040

0,12

0,12

---

0,08

0,12

CLC

041

0,12

0,12

---

0,08

0,12

SELECCIONAR BANCO DE EM

EMBC

281

15,1

15,1

---

0,12

0,21

REFERSCO TEMPORIZADOR DE
GUARDA

WDT

094

19,7

19,7

---

0,12

0,21

Instruccin

Mnemnic
o

ACTIVAR
ACARREO

STC

BORRAR
ACARREO

Instrucciones de
programacin de
bloques

Cdigo

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.

Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.
Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de ejecucin
ON (s)

096

13,0

13,0

---

15,3

15,3

BEND

801

13,1

13,1

---

---

---

PAUSA DE
PROGRAMA DE
BLOQUE

BPPS

811

14,9

14,9

---

---

---

REINICIO
DE PROGRAMA DE
BLOQUE
SALIDA
CONDICIONAL DE
BLOQUE

BPRS

812

8,3

8,3

---

---

---

(Condicin
de ejecuj
cin)
i ) EXIT

806

12,9

12,9

Cumple la condicin EXIT

---

---

7,3

7,3

No cumple la
condicin EXIT

SALIDA
CONDICIONAL DE
BLOQUE

EXIT (direccin de bit))

806

16,3

16,3

Cumple la condicin EXIT

---

---

10,7

10,7

No cumple la
condicin EXIT

SALIDA
CONDICIONAL DE
BLOQUE
(NOT)

EXIT NOT
(direccin
de bit)

806

16,8

16,8

Cumple la condicin EXIT

---

---

11,2

11,2

No cumple la
condicin EXIT

Bifurcacin

IF (condicin de ejecucin)

802

7,2

7,2

IF verdadero

---

---

10,9

10,9

IF falso

Bifurcacin

IF ((nmero
d rel)
de
l)

802

10,4

10,4

IF verdadero

---

---

14,2

14,2

IF falso

Bifurcacin
(NOT)

IF NOT (nmero de rel)

802

10,9

10,9

IF verdadero

---

---

14,7

14,7

IF falso

Bifurcacin

ELSE

803

9,9

9,9

IF verdadero

---

---

11,2

11,2

IF falso

Instruccin

Mnemnic
o

INICIO
PROGRAMA DE
BLOQUE

BPRG

FIN PROGRAMA DE
BLOQUE

836

Cdigo

CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

Bifurcacin

IEND

UN CICLO
Y ESPERA

Cdigo

804

WAIT (condicin de
ejecucin)
j
i )

805

WAIT (nmero de rel)

805

UN CICLO
Y ESPERA
(NOT)

WAIT NOT
((nmero de
rel)
l)

805

CONTADOR DE
ESPERA

CNTW

814

UN CICLO
Y ESPERA

Seccin 4

Longitud
(pasos)
(Ver nota)

Tiempo de ejecucin
ON (s)

11,0

11,0

IF verdadero

7,0

7,0

IF falso

16,7

16,7

Cumple la condicin WAIT

6,3

6,3

No cumple la
condicin WAIT

16,5

16,5

Cumple la condicin WAIT

9,6

9,6

No cumple la
condicin WAIT

17,0

17,0

Cumple la condicin WAIT

10,1

10,1

No cumple la
condicin WAIT

27,4

27,4

Seleccin por
defecto

28,7

28,7

Ejecucin normal

34,1

34,1

Seleccin por
defecto

28,9

28,9

Ejecucin normal

CPU-4j

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

---

---

---

---

---

---

---

---

---

---

---

---

TEMPORITMHW
ZADOR ALTA VELOCIVELOCI
DAD DE
ESPERA

815

Control de
lazo

LOOP

809

12,3

12,3

---

---

---

Control de
lazo

LEND (condicin de
j
i )
ejecucin)

810

10,9

10,9

Cumple la condicin LEND

---

---

9,8

9,8

No cumple la
condicin
LEND

LEND (nmero de rel)

810

14,4

14,4

Cumple la condicin LEND

---

---

13,0

13,0

No cumple la
condicin
LEND

LEND NOT
((nmero de
rel)
l)

810

14,8

14,8

Cumple la condicin LEND

---

---

13,5

13,5

No cumple la
condicin
LEND

TIMW

813

33,1

33,1

Seleccin por
defecto

---

---

35,7

35,7

Ejecucin normal

Control de
lazo

Control de
lazo

TEMPORIZADOR DE
ESPERA

Instrucciones de
procesamiento de
cadenas de texto
Instruccin

MOVER CADENA

Mnemnic
o

MOV$

CPU-6j

Condiciones
Arriba: mn.
Abajo: mx.

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.
Cdigo

664

Tiempo de
ejecucin ON (s)

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

CPU-6j

CPU-4j

84,3

84,3

Transferencia
de 1 carcter

7,27 ms

7,27 ms

Transferencia
de 2.046 caracteres

Tiempo de
ejecucin OFF (s)
CPU-6j
0,17

CPU-4j
0,29

837

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

Mnemnic
o

CONCATENAR CADENAS

+$

OBTENER
CADENA IZQUIERDA
Q

LEFT$

OBTENER
CADENA DERECHA

OBTENER
CADENA
DEL MEDIO

RGHT$

MID$

ENCONTRAR CADENA

FIND$

LONGITUD
DE CADENA

LEN$

SUSTITUIR
EN CADENA

RPLC$

BORRAR CA- DEL$


DENA

838

Cdigo

656

652

653

654

660

650

661

658

Seccin 4

Longitud
(pasos)
(Ver nota)

CPU-6j

CPU-4j

167,8

167,8

1 carcter + 1
carcter

7,42 ms

7,42 ms

2.046 caracteres + 1 carcter

94,3

94,3

Recuperacin
de 1 de 2 caracteres

7,36 ms

7,36 ms

94,2

94,2

Recuperacin
de 2.046 de
2.047 caracteres
Recuperacin
de 1 de 2 caracteres

11,58 ms

11,58 ms

230,2

230,2

7,42 ms

7,42 ms

94,1

94,1

21,95 ms

21,95 ms

Bsqueda de
1.024 de 2.047
caracteres

33,4

33,4

Deteccin de
1carcter

4,32 ms

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,21

0,37

0,21

0,37

0,21

0,37

0,25

0,46

0,21

0,37

0,17

0,29

4,32 ms

Deteccin de
2.047 caracteres

479,5

479,5

0,54

13,46 ms

13,46 ms

Reemplazo del 0,29


1 de 2 caracteres por 1 carcter
Reemplazo del
1 de 2.047 caracteres por
1.024 caracteres

244,6

244,6

Eliminacin del
primero de 2
caracteres

0,25

0,46

11,76 ms

11,76 ms

Eliminacin del
primero de
2.047 caracteres

Recuperacin
de 2.046 de
2.047 caracteres
Recuperacin
de 1 de 3 caracteres
Recuperacin
de 2,045 de
2.047 caracteres
Bsqueda de 1
de 2 caracteres

Tiempos de ejecucin de instruccin y nmero de pasos


Instruccin

INTERCAMBIAR CADENA

Mnemnic
o
XCHG$

BORRAR CA- CLR$


DENA

INSERTAR
EN CADENA

Instrucciones
de comparacin de cadenas

INS$

LD, AND,
OR +
=$,
$, <>$,
$, <$,
$,
<=$,
$ >$,
$ >=
$

Cdigo

665

666

TAREA ON

Mnemnic
o

CPU-6j

CPU-4j

99,0

99,0

Intercambio de
1 carcter con
otro

10,88 ms

10,88 ms

Intercambio de
2.047 caracteres con otros
2.047 caracteres

37,8

37,8

Borrado de 1
carcter

5,19 ms

5,19 ms

Borrado de
2.047 caracteres

428,9

428,9

Insercin de 1
carcter despus del primero de 2 caracteres

9,82 ms

9,82 ms

Insercin de
1.024 caracteres despus del
primero de
1.024 caracteres

86,2

86,2

28,1 ms

28,1 ms

670 (=$)
671 (<>$)
672 (<$)
( $)
673 (<=$)
( $)
674 (>$)
675 (>=$)

4
4
4
4
4
4

Tiempo de
ejecucin ON (s)

Condiciones
Arriba: mn.
Abajo: mx.

Tiempo de
ejecucin OFF (s)
CPU-6j

CPU-4j

0,17

0,29

0,12

0,32

0,25

0,46

Comparacin
de 1 carcter
con otro

86,2

86,2

Comparacin
de 2.047 caracteres con otros
2.047 caracteres

28,1 ms

28,1 ms

Si se utiliza un operando de longitud doble, aada 1 al valor mostrado en la columna longitud de la tabla siguiente.

Instrucciones de control
de tareas
Instruccin

Longitud
(pasos)
(Ver nota)

657

Seccin 4

Cdigo

Longitud
(pasos))
(p
(V nota)
(Ver
t )

Tiempo de ejecucin
ON (s)
CPU-6j

CPU-4j

Condiciones
Arriba: mn.
Ab j mx.
Abajo:

Tiempo de ejecucin
OFF (s)
CPU-6j

CPU-4j

TKON

820

26,3

26,3

---

0,12

0,21

TAREA OFF TKOF

821

26,3

26,3

---

0,12

0,21

Directrices para la
conversin de
capacidades de
programa de PLC
OMRON anteriores

En la siguiente tabla se ofrecen las directrices para convertir la capacidad de


programa (unidad: canales) de los PLC OMRON anteriores (SYSMAC
C200HX/HG/HE, CVM1 o PLC de la serie CV) a la capacidad de programa (unidad: pasos) de los PLC de la serie CS1.
Aada el siguiente valor (n) a la capacidad de programa (unidad: canales) de los
PLC anteriores en cada instruccin para obtener la capacidad de programa
(unidad: pasos) de los PLC de la serie CS1.

839

Tiempos de ejecucin de instruccin y nmero de pasos

Seccin 4

Pasos CS1 = a (canales) de PLC anterior + n


Instruccione
s

Instrucciones
bsicas

Variaciones

Ninguno

Valor de n al
convertir de
C200HX/HG/HE a
CS1
OUT, SET, RSET, o
KEEP(011): --1

Valor de n al
convertir de un
PLC serie CV o
CVM1 a CS1
0

Otras instrucciones:
0

Instrucciones
especiales
i l

Diferencial ascendente

Ninguno

+1

Refresco inmediato

Ninguno

Diferencial ascendente y
refresco inmediato

Ninguno

+2

Ninguno
Diferencial ascendente

0
+1

--1
0

Refresco inmediato

Ninguno

+3

Diferencial ascendente y
refresco inmediato

Ninguno

+4

Por ejemplo, si se utiliza OUT con una direccin de CIO 000000 a CIO 25515, la
capacidad de programa del PLC anterior ser de 2 canales por instruccin y la
del PLC de la serie CS1 ser de 1 (2 -- 1) paso por instruccin.
Por ejemplo, si se utiliza !MOV (instruccin MOVE con refresco inmediato), la
capacidad de programa de un PLC de la serie CV ser de 4 canales por instruccin y la del PLC de la serie CS1 ser de 7 (4 + 3) pasos.

840

Cat. No.: MPCS1

Nota: Especificaciones sujetas a cambios sin previo aviso.

W340--E1--5

05/01

Das könnte Ihnen auch gefallen