Individual Instruction Descriptions
4-186
4.14.87 XORS Logical XOR String
Syntax
[label] name dest, src [, src1] Clock, clk Word, w With RPT, clk Class
XORS An, {adrs} Table 4–46 Table 4–46 1b
XORS An[~], An[~], pma16 n
S
+4 2 N/R 2b
XORS An[~], An~, An n
S
+3 1 n
R
+3 3
Execution dest ⇐ dest XOR src (for two operands)
dest ⇐ src1 XOR src (for three operands)
PC ⇐ PC + w
Flags Affected dest is An: OF, SF, ZF, CF are set accordingly
src is {adrs}: TAG bit is set accordingly
Opcode
Instructions 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
XORS An, {adrs}
0 1 0 0 1 0 1 An adrs
x dma16 (for direct) or offset16 (long relative) [see section 4.13]
XORS An[~], An[~], pma16 1 1 1 0 0 1 1 An 1 1 0 0 0 1 A~ ~A
XORS An[~], An~, An 1 1 1 0 0 1 1 An 0 1 0 0 0 0 A~ ~A
Description Bitwise XOR of src string and dest string. Result is stored in dest string. If three
operands are specified, then logical XOR src string and src1 string, store result
in dest string.
Syntax Description
XORS An, {adrs} XOR data memory string to An string
XORS An[~], An[~], pma16 XOR program memory string to An[~] string, store result in An[~] string
XORS An[~], An~, An XOR An string to An~ string, store result in An[~] string
See Also XOR, XORB, AND, ANDS, OR, ORS, ORB, NOTAC, NOTACS
Example 4.14.87.1 XORS A0, A0~, *R2
XOR data memory string beginning at address in R2 to accumulator string A0~, put result in
accumulator string A0.
Example 4.14.87.2 XORS A3~, A3, *R1++R5
XOR data memory string beginning at address in R1 to accumulator string A3, put result in accumulator
string A3~. Add value in R5 to the value in R1 and store result in R1.
Example 4.14.87.3 XORS A1~, A1, 0x100 * 2
XOR program memory string beginning at word address 0x0100 to accumulator string A1, put result
in accumulator string A1~.
Example 4.14.87.4 XORS A2, A2~, A2
XOR accumulator string A2 with accumulator string A2~ string, put result in accumulator string A2.