Tutorial Sezione Assembler

Dettaglio Istruzioni 

Le Schede del Tutorial

  Istruzioni della Cpu 80x86

SCHEDA n° 07 [I/ 198 di 198] 

    

    XOR - XOR
     
bulletQuesta istruzione esegue la XOR 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):
         
           XOR  Destinazione  <<  Destinazione XOR 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

XOR

DX,BX

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

XOR

CL,[Depo01]

 9+EA 7 7 2 1 2,4

XOR

CX,[Depo02]

13+EA

XOR

[Depo01],BL

16+EA 7 6 3 2 2,4

XOR

[Depo02],BX

24+EA
                    

XOR

SI,1234H

4 3 2 1 no 3,4

XOR

[Depo01],02H

17+EA 7 7 3 2 3,6

XOR

[Depo02],1234H

25+EA
                    

XOR

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 XOR logica (vedi figura) sottolinea uno degli usi più raffinati di questa istruzione: quello di complementare i bit di un determinato dato; la figura mostra chiaramente che i bit che corrispondono ai bit a 0 della maschera sono lasciati inalterati mentre gli altri vengono forzati al valore opposto.
     
55H   0101 0101 XOR
F0H   1111 0000  =
      -------------
A5H = 1010 0101 
     
bulletLa XOR può essere usata in modo raffinato anche per azzerare un registro, per esempio: XOR AX,AX, invece di usare la "prosaica" MOV AX,0000H.
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
XOR  DX,BX
XOR  CL,[Depo01]
XOR  CX,[Depo02]
XOR  [Depo01],BL
XOR  [Depo02],BX
XOR  SI,1234H
XOR  [Depo01],02H
XOR  [Depo02],1234H
XOR  AL,02H

XOR  AL,CS:[Depo01]
XOR  AX,CS:[Depo02]
XOR  CS:[Depo01],AL
XOR  CS:[Depo02],AX
XOR  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 198 - XOR

    

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