please dont rip this site

SX Embedded Controller Instruction

ADD fr,W

Description: Add W into fr
Operation: fr += W
Flags affected: C DC Z
Registers affected: fr
Sources referenced: W
Cycles: 1
Opcode: 0001 111f ffff
Details: SX Users Manual page # 69
Microchip PIC syntax: ADDWF fr,1
Notes:

This instruction adds the contents of W to the contents of the specified file register and writes the 8- bit result into the same file register. W is left unchanged. The register contents are treated as unsigned values.

If the result of addition exceeds FFh, the C flag is set and the lower eight bits of the result are written to the file register. Otherwise, the C flag is cleared.

If there is a carry from bit 3 to bit 4, the DC (digit carry) flag is set. Otherwise, the flag is cleared.

If the result of addition is 00h, the Z flag is set. Otherwise, the flag is cleared. An addition result of 100h is considered zero and therefore sets the Z flag.

Affected by the the CF_ bit in FUSEX (DEVICE CARRYX).: If the CF bit in the FUSEX configuration register has been programmed to 0, this instruction also adds the C flag as a carry- in input:

fr = fr + W + C

Cycles: 1

Example: add $12, W

This example adds the contents of W to file register 12h. For example, if the file register contains 7Fh and W contains 02h, this instruction adds 02h to 7Fh and writes the result, 81h, into the file register; and clears the C and Z flags. It sets the DC flag because of the carry from bit 3 to bit 4.

If fr is 2 (the program counter) on the SX 18 and 28, no carry of the addition from bit 7 to bit 8 is performed. This means that relative jumps are restricted to the half page of 256 instructions from which the jump originates. Also, as far as I can tell, despite this not being documented anywhere, adding an 8 bit value to the PC results in CLEARING the 9th bit (bit 8) of the PC. So you can only do relative jumps intp the first half page of each page. Just like calls

SX Instruction ADD fr,#lit +


file: /Techref/scenix/inst/addfrw.htm, 4KB, , updated: 2004/4/5 17:35, local time: 2024/12/23 01:41,
TOP NEW HELP FIND: 
3.14.254.103:LOG IN

 ©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF="http://techref.massmind.org/techref/scenix/inst/addfrw.htm"> SX Embedded Controller Instruction - ADD fr,W</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.


Link? Put it here: 
if you want a response, please enter your email address: 
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?

 

Welcome to massmind.org!

 
Quick, Easy and CHEAP! RCL-1 RS232 Level Converter in a DB9 backshell
Ashley Roll has put together a really nice little unit here. Leave off the MAX232 and keep these handy for the few times you need true RS232!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  .