Tutorials - PIC18

 

Il Set di istruzioni dei PIC18

 


LITERAL OPERATIONS

Le operazioni con literal comprendono ora :
-  una LSFR per il carico diretto di un valore nel registro di indirizzamento indiretto
-  MOVLB che modifica direttamente i bit di switch dei banchi. 
-  una istruzione di moltiplicazione a 8 bit (MULLW), che consente di operare tra il registro W ed un numero fisso.


La sintassi di base delle istruzioni non è modificata rispetto alla famiglia 16F, così pure sono usati i vecchi mnemonici .

Va però notato che l' istruzion LSFR si sviluppa su due word a 16 bit ciascuna, in modo da avere un campo di indirizzamento diretto di 12 bit (FFFh, 4 kword).

Mnemonici
e
 Operandi

Schema operativo Cicli 16-Bit Instruction Word

Status
Affected

Note
LITERAL OPERATIONS
ADDLW   k Add Literal and WREG 1 0000 1111 kkkk kkkk C,DC,Z
OV, N
 
ANDLW   k AND Literal with WREG 1 0000 1011 kkkk kkkk Z,N  
IORLW   k Inclusive OR Literal with WREG 1 0000 1001 kkkk kkkk Z,N  
LFSR   f,k

Move Literal (12-bit) 
     1st word
     2nd word to FSR(f)            

2 1110 1110 00ff kkkk
1111 0000 kkkk kkkk
-  
MOVLB  k Move Literal to BSR<3:0> 1 0000 0001 0000 kkkk -  
MOVLW   k Move Literal to WREG 1 0000 1110 kkkk kkkk -  
MULLW  k Multiply Literal with WREG 1 0000 1101 kkkk kkkk -  
SUBLW   k Subtract WREG from Literal 1 0000 1000 kkkk kkkk C,DC,Z
OV, N
 
XORLW   k Exclusive OR Literal with WREG 1 0000 1010 kkkk kkkk Z,N  

 


 

DATA MEMORY <-> PROGRAM MEMORY OPERATIONS

Del tutto nuove le istruzioni relative al trattamento di tabelle, non presenti nel set 16F.

Mnemonici
e
 Operandi

Schema operativo Cicli 16-Bit Instruction Word

Status
Affected

Note
DATA MEMORY <-> PROGRAM MEMORY OPERATIONS
TBLRD* Table Read 2 0000 0000 0000 1000 -  
TBLRD*+ Table Read with Post-Increment   0000 0000 0000 1001 -  
TBLRD*- Table Read with Post-Decrement   0000 0000 0000 1010 -  
TBLRD+* Table Read with Pre-Increment   0000 0000 0000 1011 -  
TBLWT* Table Write 2 0000 0000 0000 1100 -  
TBLWT*+ Table Write with Post-Increment   0000 0000 0000 1101 -  
TBLWT*- Table Write with Post-Decrement   0000 0000 0000 1110 -  
TBLWT+* Table Write with Pre-Increment   0000 0000 0000 1111 -

 

 


 

 

 

Copyright © afg. Tutti i diritti riservati.
Aggiornato il 08/11/10.