[Search] [Contact Us]
8052.it - Il sito web italiano dei microcontrollori 8051/52 e derivati  
 Tutorial 
Istr. Set

Sponsor di 8052.it
PRECMA S.r.l.

Tutorial
µC Family
FAQ
Strumenti di Sviluppo
Libri
Bookmarks
Mailing List Forum
Download Area

Prodotti


Il sito 8052.it e' in continua evoluzione: se avete suggerimenti o richieste contattateci




L'autore

 Introduzione   Memoria   Flusso   Low Level 
 Math   Logic   Move   Flags   Jump 

Corso 8051

Set d'Istruzioni

NOTAZIONI

A - Accumulatore (Registro "A")
AB - Tra l'Accumulatore ed il registro "B"
DPTR - Data Pointer
C - Carri bit
Rn - Registro (R7-R0)del banco di registri "R" attualmente selezionato
@Ri - Indirizzamento indiretto tramite un registro R (R0 o R1) nella RAm interna da 0 a 255.
@DPTR - Indirizzamento diretto tramite DPTR
@A+DPTR - Indirizzamento indiretto tramite la somma di DPTR piu' "A"
@A+PC - Indirizzamento indiretto tramite la somma di PC piu' "A"
iram addr - Indirizzo della RAM interna
#data - Indirizzamento immediato
bit addr -indirizzo del bit
/bit addr - indirizzo del bit (prendi il bit negato)
reladdr - Indirizzo relativo (da +128 a -127)
page i - pagina i (0 -7)
code addr - Indirizzo di programma

ISTRUZIONI ARITMETICHE
ADD, ADDC: Somma l'Accumulatore (con il riporto)
DA: Aggiusta la parte decimale
DEC: Decrementa il registro
DIV: Dividi l'Accumulatore per il registro B
INC: Incrementa il registro
MUL: Moltiplica l'Accumulatore per il registro B
SUBB: Sottrai dall'Accumulatore con il prestito

ISTRUZIONI LOGICHE
ANL: AND logico
CLR: Azzera il registro
CPL: Complementa il registro
ORL: OR logico
RL: Ruota l'accumulatore a sinistra
RLC: Ruota l'Accumulatore a sinistra attraverso il Carry
RR: Ruota l'accumulatore a destra
RRC: Ruota l'Accumulatore a destra attraverso il Carry
SWAP: Scambia i nibble dell'Accumulatore
XRL: OR esclusivo logico

ISTRUZIONI DI TRASFERIMENTO DATI
MOV: Trasferisci un byte
MOVC: Trasferisci un byte della memoria programma
MOVX: Trasferisci un byte della memoria estesa
POP: Prendi l'Accumulatore dallo stack
PUSH: Metti l'accumulatore nello stack
XCH: Scambia i byte
XCHD: Scambia i digit

ANL: AND per variabili a bit
CLR: Azzera il bit
CPL: Complementa il bit
JB: Salta se il bit e' a uno
JBC: Salta se il bit e' a uno e resettalo
JC: Salta se il Carry e' a uno
JNB: Salta se il bit non e' a uno
JNC: Salta se il Carry non e' a uno
MOV: Trasferisci un bit
ORL: OR a bit
SETB: Poni il bit a uno

ISTRUZIONI DI SALTO
ACALL: Chiamata a subroutine con indirizzo assoluto
AJMP: Salto asssoluto
CJNE: Compara e salta se non uguale
DJNZ: Decrementa il registro e salta se il risultato non e' nullo
JMP: Salta all'indirizzo
JNZ: Salta se l'Accumulatore non e' nullo
JZ: Salta se l'Accumulatore e' nullo
LCALL: Chiamata a subroutine con indirizzo a 16-bit
LJMP: Salto con indirizzo a 16-bit
NOP: Nessuna operazione
RET: Torna da subroutine
RETI: Torna da interrupt
SJMP: Salto con indirizzo relativo a 8-bit

ELENCO ALFABETICO DELLE ISTRUZIONI - 8051
ACALL: Chiamata a subroutine con indirizzo assoluto
ADD, ADDC: Somma l'Accumulatore (con il riporto)
AJMP: Salto asssoluto
ANL: AND logico
ANL: AND per variabili a bit
CJNE: Compara e salta se non uguale
CLR: Azzera il registro
CLR: Azzera il bit
CPL: Complementa il registro
CPL: Complementa il bit
DA: Aggiusta la parte decimale
DEC: Decrementa il registro
DIV: Dividi l'Accumulatore per il registro B
DJNZ: Decrementa il registro e salta se il risultato non e' nullo
INC: Incrementa il registro
JB: Salta se il bit e' a uno
JBC: Salta se il bit e' a uno e resettalo
JC: Salta se il Carry e' a uno
JMP: Salta all'indirizzo
JNB: Salta se il bit non e' a uno
JNC: Salta se il Carry non e' a uno
JNZ: Salta se l'Accumulatore non e' nullo
JZ: Salta se l'Accumulatore e' nullo
LCALL: Chiamata a subroutine con indirizzo a 16-bit
LJMP: Salto con indirizzo a 16-bit
MOV: Trasferisci un byte
MOV: Trasferisci un bit
MOVC: Trasferisci un byte della memoria programma
MOVX: Trasferisci un byte della memoria estesa
MUL: Moltiplica l'Accumulatore per il registro B
NOP: Nessuna operazione
ORL: OR logico
ORL: OR a bit
POP: Prendi l'Accumulatore dallo stack
PUSH: Metti l'accumulatore nello stack
RET: Torna da subroutine
RETI: Torna da interrupt
RL: Ruota l'accumulatore a sinistra
RLC: Ruota l'Accumulatore a sinistra attraverso il Carry
RR: Ruota l'accumulatore a destra
RRC: Ruota l'Accumulatore a destra attraverso il Carry
SETB: Poni il bit ad uno
SJMP: Salto con indirizzo relativo a 8-bit
SUBB: Sottrai dall'Accumulatore con il prestito
SWAP: Scambia i nibble dell'Accumulatore
XCH: Scambia i byte
XCHD: Scambia i digit
XRL: OR esclusivo logico
^ INDICE

(C)Copyright 1997, 1998 by Vault Information Services. All Rights Reserved.
Le informazioni sono fornite senza alcuna garanzia (vedi dettagli)
Contattate l'autore Craig Steiner (presso 8052.com) per l'uso e/o il permesso di divulgazione di questo corso.
Traduzione italiana di: Sergio Salvitti

8052.it
Istr. Set
 Introduzione   Memoria   Flusso   Low Level 
 Math   Logic   Move   Flags   Jump 


Site made with Sworg - Simple Web Organizer
 
©Copyright 2001-Today PRECMA S.r.l.
Tutti i diritti riservati