Bloco LOGIC Subtipo .XOR.

O subtipo .XOR. do bloco LOGIC é utilizado para verificar se apenas uma entrada é Verdadeira (1). É considerada Verdadeira toda entrada com valor maior do que 0. A saída sempre será 0 (Falso) ou 1 (Verdadeiro). A lógica deste bloco se refere a uma operação lógica que também é conhecida como EXOR, EOR ou Exclusive OR.

Características

# Entradas

2 ou mais

Sinal de Entrada

Lógico

Sinal de Saída

Lógico

../../../../_images/xor.png

Aviso

O Bloco LOGIC Subtipo .XOR. é um subtipo de bloco do tipo lógico. Portanto, para utilizá-lo, é necessário preencher o campo tipo como LOGIC e o campo stip como XOR.

Nota

O Bloco LOGIC Subtipo .XOR. possui mais de uma entrada. Nesse caso, o campo \(V_{sai}\) (nome da variável de saída) deve ser preenchido com o mesmo dado em todos os registros do bloco.

Lógica

\(V_{sai} = \oplus (V_{ent}^{1}, V_{ent}^{2},..., V_{ent}^{n})\)

O sinal de saída terá o valor lógico VERDADEIRO quando uma, e somente uma, das entradas tiver valor lógico VERDADEIRO.

Os sinais de entrada são interpretados logicamente como:

\(V_{ent} \leq 0 \to \text{FALSO (0)}\)

\(V_{ent} > 0 \to \text{VERDADEIRO (1)}\)

Atenção

Este operador não é associativo, portanto \(V_{sai} = \oplus(V_{ent}^{1}, V_{ent}^{2},..., V_{ent}^{n})\) é diferente de \(V_{sai} = \oplus (\oplus(V_{ent}^{1}, V_{ent}^{2}),..., V_{ent}^{n})\).

Cuidado

Existem interpretações alternativas sobre como deve funcionar a lógica XOR para entradas múltiplas. Em outros programas, a lógica pode diferir.

Tabela verdade

Entradas

Saída

\(V_{ent}^{1}\)

\(V_{ent}^{2}\)

\(V_{ent}^{3}\)

\(V_{sai}\)

0

0

0

0

0

0

1

1

0

1

0

1

0

1

1

0

1

0

0

1

1

0

1

0

1

1

0

0

1

1

1

0

Exemplo

Listagem 58 Exemplo de Utilização do Bloco XOR
 1 DCDU
 2 (ncdu) ( nome cdu )
 3  01    CDU_XOR
 4 (nb)i(tipo)o(stip)s(vent) (vsai) ( p1 )( p2 )( p3 )( p4 ) (vmin) (vmax)
 5  10   LOGIC  .XOR. Vent1   Vsai
 6                    Vent2   Vsai
 7                    Vent3   Vsai
 8 FIMCDU
 9 (
10 999999