Você está na página 1de 45

AUTOMAÇÃO COM QUALIDADE.

PERTO DE VOCÊ.

CURSO BÁSICO DE PROGRAMAÇÃO


E MANUTENÇÃO DO SLC-500
Arquivo de Dados: Saída - O0 e Entrada - I1
Representam entradas e saídas externas. Na maioria dos casos cada palavra de 16 bits
representa uma ranhura localizada em seu controlador, onde o número de bits corresponde ao
número de terminais de entrada ou saída. Bits não usados de uma dada palavra não são válidos
para uso.

O - saída e I - entrada;
O:e.s/b : - delimitador de elemento (ranhura - slot);
e - número da ranhura em decimal. É equivalente ao elemento;
ou . - delimitador de palavra. Só é necessário apenas se for utilizado
o número da palavra ( cartões analógicos e especiais);
I:e.s/b s - número da palavra. Só é necessário para cartões analógicos e
especiais;
/ - delimitador de bit;
b - número do terminal (bit).

Exemplos: O:3/15 Saída 15 da ranhura 3.


O:5.1 Saída 1 da ranhura 5.
Arquivo de Status - S2
Você não pode inserir ou apagar neste arquivo. Este arquivo descreve o valor corrente das
principais características do controlador.

S - arquivo de status;
: - delimitador de elemento;
S:e/b e - número do elemento;
/ - delimitador de bit;
b - número do bit.

Exemplos: S:1/15 Bit 15 do elemento 1. Este é o bit de “primeira


varredura”, que pode ser utilizado para você inicializar
instruções em seu programa.
S:3 Elemento 3. O byte menos significativo deste elemento
é o valor atual do tempo de varredura do programa e o
byte mais significativo é o valor crítico do tempo de
varredura.
Arquivo de Dados Binários - B3
O uso primário deste arquivo é para instruções de bits (lógica de reles), registradores de
deslocamento e sequenciadores, o seu tamanho máximo é de 256 elementos de uma palavra
cada num total de 4096 bits.
Pode ser endereçado pelo número do elemento e o número do bit desejado dentro do elemento
ou diretamente pelo bit numerados de forma sequencial.

B - arquivo tipo binário;


Bf/b f - número do arquivo (padrão = 3);
ou : - delimitador de elemento;
Bf:e/b e - número do elemento;
/ - delimitador de bit;
b - número do bit.

Exemplos: B3:3/14 Bit 14 do elemento 3 do arquivo 3.


B10:252/0 Bit 0 do elemento 252 do arquivo 10.
B3:9 Bits de 0 a 15 do elemento 9
B3/63 Bit número 62.
Arquivo de Dados de Temporizadores - T4
Cada endereço de Timer é formado por um elemento de 3 palavras. A palavra 0 de controle, a
palavra 1 que armazena o valor de preset e a palavra 2 que armazena o valor do acumulado.

T - arquivo de dado do tipo temporizador;


f - número do arquivo (padrão = 4);
: - delimitador de elemento
e - número do elemento;
Tf:e.s/b . - delimitador de palavra, é necessário apenas
se um número para palavra for utilizado;
s - número da palavra. É opcional para a palavra 0;
/ - delimitador de bit;
b - número do terminal (bit).
Exemplos: T4:0.0/15 ou T4:0.0/EN Bit de habilitação.
T4:0/14 ou T4:0/TT Bit de marcando tempo
T4:0.1 ou T4:0.PRE Valor de preset do Timer
T4:02 ou T4:0.ACC Valor do acumulador do Timer
Arquivo de Dados de Contador - C5
É uma arquivo com 3 palavras por elemento. A palavra 0 é a palavra de controle contendo os
bits de status da instrução, a palavra 1 indica o valor de preset e a palavra 2 indica o valor
acumulado do contador.

C - arquivo de dado do tipo contador;


f - número do arquivo (padrão = 5);
: - delimitador de elemento
e - número do elemento;
Cf:e.s/b . - delimitador de palavra, é necessário apenas
se um número para palavra for utilizado;
s - número da palavra. É opcional para a palavra 0;
/ - delimitador de bit;
b - número do terminal (bit).

Exemplos: C4:0.0/13 ou T4:0/DN Bit de feito


C4:0.1 ou T4:0.PRE Valor de preset do contador
T4:02 ou T4:0.ACC Valor do acumulador do contador
Arquivo de Dados de Controle - R6

É uma arquivo com 3 palavras por elemento, usado como deslocamento de bit, FIFO, LIFO,
instruções sequenciadoras e instruções ASCII. A palavra 0 é a palavra de status, a palavra 1
indica o comprimento do dado armazenado e a palavra 2 indica a posição.
Em um elemento do arquivo de controle hão oito bits de status e um byte de código de erro
(palavra 0).

Elemento do arquivo de controle

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Bits / Palavras
EN EU DN EM ER UL IN FD | código de erro | 0
Comprimento da sequência ou arquivo (LEN) 1
Bit ponteiro ou posicionador (POS) 2

Bits Endereçáveis Palavras Endereçáveis


EN - Habilitação LEN - Comprimento
EU - Habilitação descarregada POS - Posição
DN - Feito
EM - Pilha vazia
Arquivo de Dados de Controle - R6

Bits Endereçáveis Bits Endereçáveis


ER - Erro UL - Descarregado (deslocador de bit)
IN - Inibido FD - Encontrado

O código de erro é mostrado em hexadecimal e não é endereçável

R - arquivo de controle;
Rf/e f - número do arquivo (padrão = 6);
: - delimitador de elemento;
e - número do elemento;

Observação os bits que podem ser endereçados diretamente usam o formato completo
Rf:e.s/b
Arquivo de Dados Inteiro - N7
É um arquivo de uso geral onde os elementos tem comprimentos de uma palavra cada, podendo
ser endereçados como palavras ou como bit.

N - arquivo de dado inteiro;


f - número do arquivo (padrão = 7);
: - delimitador de elemento;
e - número do elemento;
Nf:e.s/b . - delimitador de palavra. Só é necessário apenas se for utilizado
o número da palavra ;
s - número da palavra, não é necessário já que cada elemento só
tem uma palavra;
/ - delimitador de bit;
b - número do terminal (bit).

Exemplos: N7:2 Elemento 2 do arquivo de inteiros 7.


N9:2/8 Bit 8 do elemento 2 do arquivo de inteiros 9..
N10:36 Elemento 36 do arquivo de inteiros 10
Endereçamento Indireto

• Usuário poderá especificar um endereço como indireto através da troca do


número de arquivo, número de elemento ou sub-elemento com o símbolo
“[Xf:e.s]”.A parte interna do colchete será então preenchida por um valor.

• Esse valor poderá corresponder a um endereço de arquivo,elemento ou


sub-elemento.

ex. Endereçamento indireto: B3:[N10:2]


SE... N10:2 = 5
Então ... B3:[N10:2] indicará o endereço B3:5

ex. N7[N7:0] N[N7:0]:[N7:1]


N7:[T4:0.ACC] C5:[N7:0]
Instruções de Bit
Examine If Closed - XIC

Use a instrução XIC para determinar se um bit é ON. Quando a instrução é executada se o
bit endereçado é on (1) então a instrução é considerada como verdadeira, se o bit
endereçado é off (0) a instrução é considerada falsa.

Estado do bit endereçado Instrução XIC


0 Falsa
1 Verdadeira

Exemplos de dispositivos que mudam de ON para OFF e vice versa:

 Push button ligado a uma entrada (endereçado como I:0/4)


 Uma saída ligada a uma lâmpada piloto (endereçada como O:0/2)
 Uma luz controlada com Timer (endereçada como T4:3/DN)
Instruções de Bit
Examine If Open - XIO

Use a instrução XIO para determinar se um bit é OFF. Quando a instrução é executada se o
bit endereçado é off (0) então a instrução é considerada como verdadeira, se o bit endereçado
é on (1) a instrução é considerada falsa.

Estado do bit endereçado Instrução XIC


0 Verdadeiro
1 Falso

Exemplos de dispositivos que mudam de ON para OFF e vire versa:

 Térmico de motor normal fechado (NF) ligado a uma entrada ( I:0/10)


 Uma saída ligada a uma lâmpada piloto (endereçada como O:0/2)
 Uma luz controlada com Timer (endereçada como T4:3/DN)
Instruções de Bit
Output Energize - OTE

Use a instrução OTE para tornar um bit ON (1) quando a condição lógica da linha é
verdadeira e para tornar um bit OFF (0) quando a condição lógica da linha for falsa.

Um exemplos de dispositivos que mudam de ON para OFF e vire versa é uma lâmpada
ligada a uma saída (endereçada como (O:0/4).

A Instrução OTE é anulada quando você entra ou retorna para o modo Run REM ou REM
Test ou restaura a energia.

Nota: Um bit ativado em uma subrotina usando uma instrução OTE continua ativado até a
subrotina ser varrida novamente.
Instruções de Bit
Output Latch - OTL e Output Unlatch - OTU

OTL e OTU são instruções de saída retentivas. OTL pode apenas tornar um bit ON enquanto
OTU pode apenas tornar um bit OFF. Estas instruções normalmente são utilizadas aos pares,
com ambas instruções endereçando o mesmo bit.

Quando você associa um endereço a uma instrução OTL que corresponde a uma saída física
o dispositivo ligado a essa saída é energizado quando a instrução é executada (levando a on
ou habilitando a saída). Quando a condição lógica da linha torna-se falsa a saída continua
ativa e a saída correspondente continua energizada.

Quando habilitado a instrução OTL diz ao controlador para tornar o bit endereçado ON, e a
saída permanecerá ativada independentemente da condição lógica da linha, até a execução de
uma instrução OTU que torna o bit OFF.

L
Instruções de Bit
Output Latch - OTL e Output Unlatch - OTU

Quando você associa um endereço a uma instrução OTU que corresponde a uma saída física
o dispositivo ligado a essa saída é desenergizado quando a instrução é executada (levando a
off ou desabilitando a saída). Quando a condição da linha torna-se falsa o bit continua limpo
e a saída correspondente continua desenergizada. A saída só será energizada novamente pela
execução de uma instrução OTL.

Quando habilitado a instrução OTU diz ao controlador para tornar o bit endereçado OFF, e a
saída continuará desenergizada independentemente da condição lógica da linha, até a
execução uma instrução OTU que torna o bit ON.

Nota: Em condição de erro fatal as saídas físicas são levadas a OFF. Uma vez limpado o erro
o controlador retorna a operação usando a tabela de valores de operação

U
Instruções de Bit
One Shot Rising - OSR
A instrução OSR é uma instrução de saída retentiva que dispara por uma vez a execução de
um evento. Use OSR quando um evento deve ser inicializado com base na mudança de
estado de uma linha de falso para verdadeiro.

Após uma varredura do programa a instrução OSR torna-se falso mesmo se a condição da
linha permanecer verdadeira.

O evento só será executado novamente quando ocorrer uma nova mudança de estado de
falso para verdadeiro na linha.

O endereço usado pela instrução OSR Não é nem o endereço de referência nem o endereço
de estado da instrução, é apenas um endereço para que a instrução possa verificar seu
estado anterior. Esse endereço não deve ser utilizado em nenhum outro lugar do programa

Exemplo: I:1.0 B3 O:3.0

OSR
0 0 0
Instruções de Temporização
A palavra 0 que é uma palavra de controle tem 3 bits de status, a palavra 1 armazena o valor de
preset e a palavra 2 armazena o valor do acumulado.

15 14 13
Palavra 0 EN TT DN | uso interno
Palavra 1 valor de preset
Palavra 2 valor do acumulador

Bits Endereçáveis Palavras Endereçáveis


EN - Habilitação PRE - Valor de preset
TT - marcando tempo ACC - Valor do acumulador
DN - Feito

Valor do Acumulador (.ACC) - é a quantidade de tempo decorrida desde que o Timer foi
reinicializado pela última vez. Quando o Timer está habilitado é atualizado continuamente

Valor de Preset (.PRE) - especifica a quantidade de tempo que o Timer deve marcar antes do
controlador ativar o bit de feito (DN). Este bit pode ser utilizado para controlar uma saída
Instruções de Temporização
Timer On-Delay - TON
Use a instrução TON para atrasar a mudança de estado para ON ou OFF de uma saída. O TON
começa a contar (.ACC) de acordo com a base de tempo a partir do instante que a condição da
linha for verdadeira e enquanto se mantiver verdadeira até chegar no valor de preset (.PRE).
O valor do acumulador (.ACC) é desativado quando a condição da linha vai a falso ou quando
há uma re-energização do controlador ou quando o controlador retorna para o modo de REM
PROG independentemente do tempo decorrido.
O bit de feito (DN) é ativado quando o valor do acumulador (.ACC) é maior ou igual ao valor
de preset (.PRE) e permanece ativado até a condição da linha passar a falso.
O bit de marcando tempo (TT) é ativado enquanto a linha é verdadeira e o valor do acumulador
(.ACC) for menor que o valor de preset (.PRE) e permanece ativado até a linha passar a falso ou
quando o o bit de feito (DN) ser ativado.
O bit de habilitado é verdadeiro enquanto a linha é verdadeira e falsa quando a linha é falsa.
TON
TIMER ON DELAY
EN
TIMER T4:0
TIMER BASE 1.0/ 0.01
PRESET 120 DN
ACCUM 0
Instruções de Temporização
Timer Off-Delay - TOF
Use a instrução TOF para atrasar a mudança de estado para ON ou OFF de uma saída. O TOF
começa a contar (.ACC) de acordo com a base de tempo a partir do instante que ocorre uma
transição de verdadeiro para falso na condição da linha e enquanto se mantiver falsa até chegar
no valor de preset (.PRE).
O valor do acumulador (.ACC) é desativado quando a condição da linha vai a verdadeiro ou
quando há uma re-energização do controlador ou quando o controlador retorna para o modo de
REM PROG independentemente do tempo decorrido.
O bit de feito (DN) é ativado quando a condição da linha é verdadeira e permanece ativado até a
condição da linha passar a falso e o valor do acumulador for maior ou igual ao valor de preset.
O bit de marcando tempo (TT) é ativado enquanto a linha é falsa e o valor do acumulador
(.ACC) for menor que o valor de preset (.PRE) e permanece ativado até a linha passar a
verdadeiro ou quando o o bit de feito (DN) ser ativado.
O bit de habilitado é verdadeiro enquanto a linha é verdadeira e falsa quando a linha é falsa.
TOF
TIMER OFF DELAY
EN
TIMER T4:0
TIMER BASE 1.0/ 0.01
PRESET 120 DN
ACCUM 0
Instruções de Temporização
Retentiva Timer - RTO
Use a instrução RTO para mudança uma saída para ON ou OFF após o TIMER ter sido ON por
um período de tempo predeterminado. O RTO é uma instrução retentiva que permite ao TIMER
parar e começar sem perder o valor do acumulador (ACC).
O valor do acumulador (.ACC) é mantido quando a condição da linha vai a falso ou quando há
uma re-energização do controlador ou quando o controlador retorna para o modo de REM
PROG ou quando ocorre uma falta.
O bit de feito (DN) é ativado quando o valor do acumulador (.ACC) é maior ou igual ao valor
de preset (.PRE) e permanece ativado até a execução de uma instrução RES correspondente.
O bit de marcando tempo (TT) é ativado enquanto a linha é verdadeira e o valor do acumulador
(.ACC) for menor que o valor de preset (.PRE) e permanece ativado até a linha passar a falso ou
quando o o bit de feito (DN) ser ativado.
O bit de habilitado é verdadeiro enquanto a linha é verdadeira e falsa quando a linha é falsa.
RTO
RETENTIVE TIMER ON
EN
TIMER T4:0
TIMER BASE 0.01
PRESET 120 DN
ACCUM 0
Instruções de Temporização
Reset - RES

Use a instrução RES para reinicializar um temporizador - TIMER ou um contador -


COUNTER.

Quando uma instrução RES é executada ela apaga todos os dados (ACC, DN, TT e EN)
correspondentes ao endereço utilizado na instrução.

Devido a instrução RES apagar os valores do acumulador, do bit de feito (DN), do bit de
marcando tempo (TT) e do bit de habilitado (EN) essa instrução não pode ser utilizada para
reinicializar um endereço utilizado por uma instrução do tipo TOF.

Para as instruções de Temporização (TIMER) que não são retentivas (TON e TOF) não é
obrigatório do uso da instrução de RESET - RES

RES
Instruções de Contadores
Em cada elemento do arquivo de dado do tipo contador temos 6 bits de status na palavra 0.
Elemento do arquivo de controle

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Bits / Palavras
CU CD DN OV UN UA | código de erro | 0
Valor de preset (PRE) 1
Valor acumulado (ACC) 2

Bits Endereçáveis Palavras Endereçáveis


CU - Contar crescente OV - Overflow
CD - Contar decrescente UN - Underflow
DN - Feito UA - Atualização do contador

ACC - É o número de transições de falso para verdadeiro que ocorreram na condição da linha
desde quando o contador foi inicializado.
PRE - É o valor específico até o qual o contador deve contar antes do controlador ativar o bit
de feito (DN).
Os valores de preset (PRE) e acumulação (ACC) para um contador podem variar na faixa de -
32768 a +32767
Instruções de Contador
Count Up - CTU
A instrução CTU conta o número de transições de falso para verdadeiro que ocorrem na
condição lógica da linha. A cada transição o valor do acumulador (ACC) é acrescido de uma
unidade.

A duração dos estados ON e OFF do sinal de entrada não deve ser menor que o tempo de
varredura do programa.

O bit feito (DN) é ativado quando o valor do acumulador (ACC) for maior ou igual ao valor de
preset (PRE) e o mesmo permanece ativado até que o valor do acumulador (ACC) passe a ser
menor que o valor de preset (PRE)

O bit de contar crescente (CU) é ativado quando a condição da linha da instrução for verdadeira
e é desativado quando a condição da linha for falso ou se executar uma instrução de Reset
(RES)
CTU

COUNT UP CU
COUNTER C5:0
PRESET 120
ACCUM 0 DN
Instruções de Contador
Count Down - CTD
A instrução CTD conta o número de transições de falso para verdadeiro que ocorrem na
condição lógica da linha. A cada transição o valor do acumulador (ACC) é decrescido de uma
unidade.

A duração dos estados ON e OFF do sinal de entrada não deve ser menor que o tempo de
varredura do programa.

O bit feito (DN) é ativado quando o valor do acumulador (ACC) for maior ou igual ao valor de
preset (PRE) e o mesmo permanece ativado até que o valor do acumulador (ACC) passe a ser
menor que o valor de preset (PRE)

O bit de contar crescente (CD) é ativado quando a condição da linha da instrução for verdadeira
e é desativado quando a condição da linha for falso ou se executar uma instrução de Reset
(RES)
CTD

COUNT DOWN CD
COUNTER C5:0
PRESET -12
ACCUM 0 DN
Instruções de Comparação
Equal - EQU

Use a instrução de Igual - EQU para testar se dois valores são iguais. Se a fonte A e a fonte B
forem iguais, a instrução é verdadeira e se os valores forem diferentes a instrução é falsa.

A fonte A tem necessariamente de ser um endereço e a fonte B pode ser uma constante ou um
endereço.

EQU

EQUAL
Source A ____

Source B ____
Instruções de Comparação
Not Equal - NEQ

Use a instrução de Diferentes - NEQ para testar se dois valores são diferentes. Se a fonte A e a
fonte B forem diferentes, a instrução é verdadeira e se os valores forem iguais a instrução é
falsa.

A fonte A tem necessariamente de ser um endereço e a fonte B pode ser uma constante ou um
endereço.

NEQ

NOT EQUAL
Source A ____

Source B ____
Instruções de Comparação
Less Than - LES

Use a instrução de Menor do Que - LES para testar se um valor (Source A) é menor do que
outro (Source B). Se a fonte A for menor do que a fonte B, a instrução é verdadeira e se o valor
da fonte A for maior ou igual ao valor da fonte B a instrução é falsa.

A fonte A tem necessariamente de ser um endereço e a fonte B pode ser uma constante ou um
endereço.

LES

LESS THAN
Source A ____

Source B ____
Instruções de Comparação
Less Than or Equal - LEQ

Use a instrução de Igual ou Menor do Que - LEQ para testar se um valor (Source A) é igual ou
menor do que outro (Source B). Se a fonte A for igual ou menor do que a fonte B, a instrução é
verdadeira e se o valor da fonte A for maior do que o valor da fonte B a instrução é falsa.

A fonte A tem necessariamente de ser um endereço e a fonte B pode ser uma constante ou um
endereço.

LEQ

LESS THAN OR EQUAL


Source A ____

Source B ____
Instruções de Comparação
Greater Than - GRT

Use a instrução de Maior do Que - GRT para testar se um valor (Source A) é maior do que outro
(Source B). Se a fonte A for maior do que a fonte B, a instrução é verdadeira e se o valor da
fonte A for menor ou igual ao valor da fonte B a instrução é falsa.

A fonte A tem necessariamente de ser um endereço e a fonte B pode ser uma constante ou um
endereço.

GRT

GREATER THAN
Source A ____

Source B ____
Instruções de Comparação
Greater Than or Equal - GEQ

Use a instrução de Igual ou Maior do Que - GEQ para testar se um valor (Source A) é igual ou
maior do que outro (Source B). Se a fonte A for igual ou maior do que a fonte B, a instrução é
verdadeira e se o valor da fonte A for menor do que o valor da fonte B a instrução é falsa.

A fonte A tem necessariamente de ser um endereço e a fonte B pode ser uma constante ou um
endereço.

GEQ

GREATER THAN OR EQUAL


Source A ____

Source B ____
Instruções de Comparação
Masked Comparison for Equal - MEQ

Use a instrução de Comparação Mascarada para Igual - MEQ para comparar se os bits de
determinadas posições de uma palavra de dados (Source) é igual aos bits de mesma posição de
outra palavra de dados (Compare). A palavra de mascara (Mask) [e quem determina as posições
dos bits dentro das palavras a serem comparados (valores em 1 da mascara). Se os bits das
palavras Source e Compare forem iguais em todas as posições de comparação determinadas
pela mascara (Mask) a instrução é verdadeira, caso contrário é falsa.

O Source tem necessariamente de ser um endereço cujo valor se deseja comparar. O Mask é o
endereço com a identificação das posições de bits a serem comparadas (1) e as posições a serem
ignoradas (0). O Compare é uma constante ou um endereço com o dado de comparação.

MEQ

MASKED EQUAL
Source ____
Mask ____
Compare ____
Instruções Matemáticas
Add - ADD
Use a instrução de soma - ADD para somar um valor (Source A) com outro valor (Source B) e
armazenar o resultado no endereço de destino (Dest).

Carry (C) : é ativado quando a soma gera a operação de “vai um”, caso contrário é mantido
desativado.

Overflow (V) : é ativado quando a soma gera um “estouro” no valor do resultado,caso contrário
é mantido desativado

Zero (Z) : é ativado se o resultado for zero, caso contrário é mantido desativado

Sing (S) : é ativado quando o resultado for negativo, caso contrário é mantido desativado

ADD

ADD
Source A ____
Source B ____
Dest ____
Instruções Matemáticas
Subtract - SUB
Use a instrução de subtração - SUB para subtrair um valor (Source A) de outro valor (Source B)
e armazenar o resultado no endereço de destino (Dest).

Carry (C) : é ativado quando a subtração gera a operação de “emprestimo”, caso contrário é
mantido desativado.

Overflow (V) : é ativado quando a subtração gera um “estouro” no valor do resultado,caso


contrário é mantido desativado

Zero (Z) : é ativado se o resultado for zero, caso contrário é mantido desativado

Sing (S) : é ativado quando o resultado for negativo, caso contrário é mantido desativado

SUB

SUBTRACT
Source A ____
Source B ____
Dest ____
Instruções Matemáticas
Multiply - MUL

Use a instrução de multiplicação - MUL para multiplicar um valor (Source A) por outro valor
(Source B) e armazenar o resultado no endereço de destino (Dest).

Carry (C) : é sempre desativado.

Overflow (V) : é ativado quando a soma gera um “estouro” no valor do resultado,caso contrário
é mantido desativado

Zero (Z) : é ativado se o resultado for zero, caso contrário é mantido desativado

Sing (S) : é ativado quando o resultado for negativo, caso contrário é mantido desativado

MUL

MULTIPLY
Source A ____
Source B ____
Dest ____
Instruções Matemáticas
Divide - DIV
Use a instrução de divisão - DIV para dividir um valor (Source A) por outro valor (Source B) e
armazenar o resultado arredondado no endereço de destino (Dest). Se o resto for maior ou igual
a 1/2 o resultado é arredondado para mais.

O quociente sem arredondamento é armazenado na palavra mais significativa do registrador


matemático (S:14) e o resto é armazenado na palavra menos significativa do registrador
matemático (S:13).

Os bits de controle (Carry, Overflow, Zero e Sing) têm as mesmas funções da instrução de
multiplicação.

DIV

DIVIDE
Source A ____
Source B ____
Dest ____
Instruções Matemáticas
Square Root - (SQR)

Use a instrução de raiz quadrada - SQR para extrair a raiz quadrada do valor absoluto de um
valor (Source A) e armazenar o resultado arredondado no endereço de destino (Dest).

Carry (C) : é sempre desativado.

Overflow (V) : é sempre desativado.

Zero (Z) : é ativado se o resultado for zero, caso contrário é mantido desativado

Sing (S) : é sempre desativado.

SQR

SQUARE ROOT
Source ____

Dest ____
Instruções Matemáticas
Clear - CLR

Use a instrução de limpar - CLR para atribuir a palavra de destino o valor zero.

Carry (C) : é sempre desativado.

Overflow (V) : é sempre desativado.

Zero (Z) : é sempre ativado.

Sing (S) : é sempre desativado.

CLR

CLEAR

Dest ____
Instruções Matemáticas
Negate - NEG
Use a instrução de negativo - NEG para mudar o sinal do dado armazenado na fonte (Source) e
armazenar o resultado no destino (Dest). O destino irá armazenar o complementar de dois do
valor da fonte, ex? fonte = 5, então destino = -5. A fonte e o destino devem ser endereços.

Carry (C) : desativado se 0 ou overflow, caso contrário ativado.

Overflow (V) : ativado se ocorrer overflow, caso contrário desativado.

Zero (Z) : é ativado se o resultado for zero.

Sing (S) : ativado se o resultado for negativo.

NEG

NEGATE
Source ____

Dest ____
Instruções Lógicas
And - AND
Use a instrução lógica de saída E para comparar bit a bit o conteúdo da fonte A (Source A) com a
fonte B (Source B) de acordo com a tabela verdade de uma porta lógica E, e armazenar o
resultado no endereço de destino (Dest).

As fontes A e B podem ser tanto constantes como endereços, desde que ambas não sejam
constantes simultaneamente. O destino deve ser um endereço.

TABELA V ERDA D E AND

D est = A A N D B AND
A B D est Source A ____
0 0 0
Source B ____
1 0 0
0 1 0 Dest ____
1 1 1
Instruções Lógicas
Or - OR
Use a instrução lógica de saída OU para comparar bit a bit o conteúdo da fonte A (Source A)
com a fonte B (Source B) de acordo com a tabela verdade de uma porta lógica OU, e armazenar
o resultado no endereço de destino (Dest).

As fontes A e B podem ser tanto constantes como endereços, desde que ambas não sejam
constantes simultaneamente. O destino deve ser um endereço.

TABELA V ERDA D E OR

D est = A O R B OR
A B D est Source A ____
0 0 0
Source B ____
1 0 1
0 1 1 Dest ____
1 1 1
Instruções Lógicas
Exclusive Or - XOR
Use a instrução lógica de saída OU Exclusivo para comparar bit a bit o conteúdo da fonte A
(Source A) com a fonte B (Source B) de acordo com a tabela verdade de uma porta lógica OU
Exclusivo, e armazenar o resultado no endereço de destino (Dest).

As fontes A e B podem ser tanto constantes como endereços, desde que ambas não sejam
constantes simultaneamente. O destino deve ser um endereço.

TABELA V ERDA D E XOR

D est = A X O R B XOR
A B D est Source A ____
0 0 0
Source B ____
1 0 1
0 1 1 Dest ____
1 1 0
Instruções Lógicas
Not - NOT

Use a instrução lógica de saída Negação para inverter bit a bit o conteúdo da palavra fonte A
(Source A), e armazenar o resultado no endereço de destino (Dest).

A fonte A e o destino devem ser endereços.

NOT
TABELA VERDADE
Dest = NOT A NOT
Source A ____
A Dest
0 1
Dest ____
1 0
Instruções de Movimentação
Move - MOV
Esta instrução de saída move o valor da fonte (Source) para o endereço de destino (Dest),
enquanto a condição lógica da linha for verdadeira a instrução realiza a movimentação a cada
varredura.

A fonte A é o endereço do dado ou próprio valor a ser movimentado

O destino é o endereço para onde será movimentado o dado ou valor.

OBS: afeta os valores dos bits dos flags aritméticos

MOV

MOVE
Source ____

Dest ____
Instruções de Salto
Jump - JMP e Label - LBL

Essas duas instruções que aparecem aos pares faz com que ocorra um salto na execução do
programa e consequentemente o programa não seja executado sequencialmente.

O comando JMP faz com que a próxima linha a ser executada seja a linha com a instrução LBL
que possua o mesmo rótulo seu. Pedem ocorrer mais de uma instrução de JMP para o mesmo
LBL.

O rótulo pode ser qualquer número de 0 a 999 e podem ser usados até 256 rótulos diferentes
dentro de um mesmo programa.

Esta instrução afeta diretamente o tempo de varredura do programa, podendo fazer com que
diminua ou aumente.

LBL JMP
Instruções de Subrotinas
Jump to Subroutine - JSR, Subroutine - SBR
e Return - RET
As instruções JSR, SBR e RET são usadas para direcionar o controlador para executar uma
subrotina separada (outro arquivo de programa diferente do LAD 2) e retornar para a linha
seguinte a instrução JSR.

A chamada a subrotina pode ser encadeada, de forma a uma subrotina chamar outra. Neste caso
o retorno também se dá obedecendo a mesma ordem de chamada.

A instrução JSR chama a subrotina desejada através do seu número de arquivo.

A instrução SBR apenas serve para identificar a subrotina. Seu uso é opcional

A instrução RET finaliza a subrotina e faz com que o controlador retorne a execução ao ponto
de chamada da subrotina.Caso seja omitida a instrução END realiza a mesma função.

JSR RET
JUMP TO SUBROUTINE
RETURN
SBR FILE NUMBER ____

Você também pode gostar