Tutorial Sezione Assembler

Dettaglio Istruzioni 

Le Schede del Tutorial

  Istruzioni della Cpu 80x86

SCHEDA n° 07 [I/ 133 di 198] 

    

    OR - OR
     
bulletQuesta istruzione esegue la OR logica dei 2 operandi (destinazione e sorgente). Il risultato è lasciato nell'operando di destinazione, al posto di quello di partenza.
bulletGli operandi possono avere dimensione di un byte, di una word o di una doubleword ( con 80386/486).
bulletLe sue caratteristiche sono riassunte nella seguente tabella (leggi le istruzioni Legenda della Tabella):
         
OR Destinazione, Sorgente
OR 1° dato, 2° dato
 Destinazione  <<  Destinazione OR Sorgente
 

Esempio di Applicazione

Cicli di Clock Mem
Acces

Bytes
Flag   influenzate
Mnemonico Operandi 86 268 386 486 O D I T S Z A P C

OR

DX,BX

3 2 2 1 no 2 0       # # ? # 0

OR

CL,[Depo01]

 9+EA 7 6 2 1 2,4

OR

CX,[Depo02]

13+EA

OR

[Depo01],BL

16+EA 7 7 3 2 2,4

OR

[Depo02],BX

24+EA
                    

OR

SI,1234H

4 3 2 1 no 3,4

OR

[Depo01],02H

17+EA 7 7 3 2 3,6

OR

[Depo02],1234H

25+EA
                    

OR

AL,02

4 3 2 1 no 2,3
         
bulletLa tabella evidenzia le 3 tipologie degli operandi di questa istruzione:
bullettra registro e registro, o tra registro e memoria, o tra memoria e registro.
bullettra registro e costante, o tra memoria e costante.
bullettra accumulatore e costante.
bulletIl meccanismo della or logica (vedi figura) sottolinea uno degli usi più raffinati di questa istruzione: quello di mascherare alcuni bit di un determinato dato; la figura mostra chiaramente che i bit che corrispondono ai bit a 1 della maschera sono forzati a 1 (mascherati) mentre gli altri mantengono il loro valore.
     
55H   0101 0101 OR
F0H   1111 0000  =
      -------------
F5H = 1111 0101 
     
bulletQuesta tecnica è utilizzata per forzare alti solo determinati bit di un registro senza modificare gli altri; nella gestione delle linee o dei bit di controllo di taluni dispositivi non è possibile fare altrimenti: è chiaro che l'uso di MOV è, in questi casi, distruttivo!
bulletVediamo il codice necessario per portare a 1 il bit2 di una data locazione, per esempio Depo01:
     

Addr

Codifica Masm

Istruzione

0100
-----
0101
0104
0106
A0
--------------
A0 0100 
0C 02
A2 0100 
Depo01 
-------
DB 0A0H
----------------------
MOV   AL,[Depo01]
OR    AL,02H
MOV   [Depo01],AL
     
bulletLa figura seguente mostra le risorse richieste da questa istruzione in funzione degli operandi coinvolti (leggi le istruzioni):
          

Addr

Codifica Masm

Sequenza Bytes

Istruzione

0100
0101
55
55AA
55
AA 55
Depo01 
Depo02
DB 55H
DW 55AAH
---- ---------------- ----------------- ------- ----------------------
0103
0105
0109
010D
0111
0115
0119
011E
0124

0126
012B
0130
0135
013A
0B D3
0A 0E 0100 
0B 0E 0101
08 1E 0100
09 1E 0101
81 CE 1234 
80 0E 0100 02 
81 0E 0101 1234 
0C 02

2E 0A 06 0100 
2E 0B 06 0101
2E 08 06 0100 
2E 09 06 0101
0D 1122
0B D3  
0A 0E 00 01 
0B 0E 01 01
08 1E 00 01 
09 1E 01 01
81 CE 34 12 
80 0E 00 01 02 
81 0E 01 01 34 12  
0C 02

2E 0A 06 00 01 
2E 0B 06 01 01
2E 08 06 00 01 
2E 09 06 01 01
0D 22 11
OR  DX,BX
OR  CL,[Depo01]
OR  CX,[Depo02]
OR  [Depo01],BL
OR  [Depo02],BX
OR  SI,1234H
OR  [Depo01],02H
OR  [Depo02],1234H
OR  AL,02H

OR  AL,CS:[Depo01]
OR  AX,CS:[Depo02]
OR  CS:[Depo01],AL
OR  CS:[Depo02],AX
OR  AX,1122H

    

Pagina Precedente Scheda n° 07 Pagina Successiva Istruzioni Cpu 80x86 Torna al Menu delle Schede del "Tutorial" Lezioni - Vai al DownLoad dei files DOC Torna al Menu del "Tutorial"
Istruzione 133 - OR

    

SCHEDE » 1.Header EXE 2.PseudoOp MASM 3.Differenza tra Macro e Procedure
4.
Tabella Vettori 5.PSP 6.Stack 7.Istruzioni 80x86
8.La misura dell'Informazione 9.Numeri e Logica Binaria
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati