05.06.2015 Views

PROGRAMMARE IN ERRE

Programming in ERRE language - fourth

Programming in ERRE language - fourth

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Operatore Valore A Valore B Risultato<br />

NOT V F<br />

F<br />

V<br />

AND V V V<br />

V F F<br />

F V F<br />

F F F<br />

OR V V V<br />

V F V<br />

F V V<br />

F F F<br />

Fig. 3.7 : Operatori booleani<br />

Vediamo degli esempi:<br />

63 AND 16 = 16 63=%00111111 e 16=%00010000, perciò applicando la tabella<br />

precedente dell’AND otteniamo %00010000 e quindi 16 in decimale<br />

4 OR 2 = 6 4=%00000100 e 2=%000000010, perciò applicando la tabella<br />

precedente dell’OR otteniamo %00000110 e quindi 6 in decimale<br />

-1 OR -2 = -1 ricordando l’utilizzo del complemento a due vediamo che -1=<br />

1111111111111111 e -2=1111111111111110, per cui otteniamo<br />

1111111111111111 che è -1 in decimale<br />

X% AND 1 vede se X% è pari (=0) o dispari (=1) interrogando il bit di posizione 0<br />

e, più in generale,<br />

X% AND (2^I%) trova il bit di posizione I% della variabile X%<br />

Sussiste anche la relazione NOT X=-(X+1).<br />

L’utilizzo principale di AND è per “mascherare” dei bit e poter interrogare delle strutture dati<br />

impaccate (ad esempio lo stato di una porta di I/O) – dal punto di vista insiemistico può essere<br />

visto come l’equivalente dell’intersezione, mentre OR si usa per “unire” due byte per creare una<br />

valore particolare – è l’equivalente dell’unione insiemistica.<br />

Funzioni standard<br />

<strong>ERRE</strong> mette a disposizione sia funzioni matematiche che di servizio che possono essere utilizzate<br />

all’interno di espressioni. Le funzioni predefinite con il loro significato sono le seguenti:<br />

- 32 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!