You are on page 1of 39

MOLINA RENDON NANCY YAZMIN 9601

ADDWF
Syntax: [ label ] ADDLW k Operands: 0 k 255

Descripcin.

Al contenido del registro W


Se le aade la literal de ocho bits 'K' y el resultado se coloca en el registro W. Ejemplo:
ADDLW 0x15 Before Instruction W = 0x10 After Instruction W = 0x25

Operation: (W) + k (W)


Status Affected: C, DC, Z Encoding: 11 111x kkkk kkkk

ANDWF
Syntax: [ etiqueta ] ANDLW k Operands: 0 k 255

DESCRIPCION:

El contenido del registro W es AND'ed con el literal K ocho bits. El resultado se coloca en el registro W. EJEMPLO:

Operation: (W) .AND. (k) (W)


Status Affected: Z Encoding: 11 1001 kkkk kkkk

ANDLW 0x5F W = 0xA3 W = 0x03

Before Instruction After Instruction

CLRW

DESCRIPCION:
Syntax: [ label ] CLRW Operands: None Operation: 00h (W)

1Z
Status Affected: Z Encoding: 00 0001 0000 0011

El registro W se borra. El bit cero (Z) se establece. EJEMPLO: CLRW Before Instruction W = 0x5A After Instruction W = 0x00 Z=1

COMF
DESCRIPCION:
Syntax: [ label ] COMF f,d Operands: 0 f 127 d [0,1] Operation: (f) (dest) Status Affected: Z Encoding: 00 1001 dfff ffff

El contenido del registro 'f es complementado. Si 'd' es '0 ', el resultado se almacena en W. Si 'd' es '1 ',el resultado se almacena en registro 'f'. EJEMPLO: COMF REG1, 0 Before Instruction REG1 = 0x13 After Instruction REG1 = 0x13 W =0xEC

Syntax: [ label ] CLRF f Operands: 0 f 127 Operation: 00h (f) 1Z Status Affected: Z Encoding: 00 0001 1fff ffff

CLRF

DESCRIPCION:

El contenido del registro 'f' es cero y el bit Z se establece. *EJEMPLO: CLRF REG1 Before Instruction REG1 = 0x5A After Instruction REG1 = 0x00 Z=1

DECF
Syntax: [ label ] DECF f,d Operands: 0 f 127 d [0,1] Operation: (f) - 1 (dest) Status Affected: Z Encoding: 00 0011 dfff ffff

DESCRIPCION:

Resta el registro 'f'. Si 'f' es '0 '. el resultado se almacena en el registro W. Si 'd' es '1 ', el resultado se vuelve a almacenar en el registro 'f' .
EJEMPLO:

DECF CNT, 1 Before Instruction CNT = 0x01 Z=0 After Instruction CNT = 0x00 Z=1

DECFSZ

Syntax: [ label ] DECFSZ f,d

DESCRIPCION: El contenido del registro 'f' disminuye. Si 'd' es '0 ', el resultado se coloca en el registro W. Si 'd' es '1 ', el resultado se coloca de nuevo en el registro 'f'. Si el resultado es '0 ', la siguiente

Operands: 0 f 127
d [0,1] Operation: (f) - 1 (dest); skip if result = 0 Status Affected: None Encoding: 00 1011 dfff ffff

instruccin, se descarta. Y un NOP es ejecuta en su lugar lo que es una Instruccin de dos ciclos. EJEMPLO: HERE DECFSZ REG1, 1 GOTO LOOP

CONTINUE Before Instruction PC = address HERE After Instruction REG1 = REG1 - 1 if REG1 = 0, PC = address CONTINUE if REG1 0, PC = address HERE+1

DESCCRIPCION:

El contenido del registro 'f' se incrementa. Si 'd' es '0 ', el resultado se coloca en el registro W. Si 'd' es '1 ', el resultado se coloca de nuevo en el regstro 'f' . EJEMPLO: INCF REG1, 1 Before Instruction REG1 = 0xFF Z=0 After Instruction REG1 = 0x00 Z=1

INCF
Syntax: [ label ] INCF f,d Operands: 0 f 127 d [0,1] Operation: (f) + 1 (dest) Status Affected: Z Encoding: 00 1010 dfff ffff

DESCRIPCION: El contenido del registro 'f' se Incrementa. Si 'd' es '0 ', el resultado se coloca en el registro W. Si 'd' es '1 ', el resultado se coloca de nuevo en el registro 'f'. Si el resultado es '0 ', la siguiente instruccin, se descarta. Se ejecuta un NOP en su lugar lo que es una instruccin de dos ciclos de.

INCFSZ
Syntax: [ label ] INCFSZ f,d Operands: 0 f 127 d [0,1] Operation: (f) + 1 (dest), skip if result = 0 Status Affected: None Encoding: 00 1111 dfff ffff

EJEMPLO: HERE INCFSZ REG1, 1 GOTO LOOP CONTINUE Before Instruction PC = address HERE After Instruction REG1 = REG1 + 1 if CNT = 0, PC = address CONTINUE if REG1 0, PC = address HERE +1

DESCRIPCION:

El contenido del registro W es OR'ed con el literal de ocho bits 'K'. El resultado se coloca en el registro W. EJEMPLO: IORLW 0x35 Before Instruction W = 0x9A After Instruction W = 0xBF Z=0

IORWF
Syntax: [ label ] IORLW k Operands: 0 k 255 Operation: (W) .OR. k (W) Status Affected: Z Encoding: 11 1000 kkkk kkkk

DESCRIPCION:

Los ocho bits de la literal "k" se ha cargado en el registroW. El dont cares "reunir a '0 's. EJEMPLO: MOVLW 0x5A After Instruction W = 0x5A

MOVF
Syntax: [ label ] MOVLW k Operands: 0 k 255 Operation: k (W)

Status Affected: None


Encoding: 11 00xx kkkk kkkk

MOVWF

NOP

RLF

RRF

SUBWF

SWAPF

XORWF

BCF

BSF

BTFSC

BTFSS

El contenido del registro w es sumado a la literal de ocho bits k y el resultado es colocado en el registro de trabajo w. Ejemplo: ADDLW 0x15 Antes de la instruccin: W= 0x10 Despus de la instruccin: W= 0x25

ADDLW
Sintaxis: [Etiqueta] ADDLW k

Operandos: 0 127

Operacin: +

ANDLW

CALL

CLRWDT

GOTO

IORLW

MOVLW

RETFIE

RETLW

RETURN

SLEEP

SUBLW

XORLW

You might also like