The following can be specified for imm4:
It compares the current flag condition with the flag condition indicated by the value of the lower 4 bits of the absolute expression (see "Table 5.28 adfcnd Instruction List") specified by the first operand.
If the values match, adds the word data of the register specified by the second operand to the word data of the register specified by the third operand. And 1 is added to the addition result and that result is stored in the register specified by the fourth operand.
If the values not match, adds the word data of the register specified by the second operand to the word data of the register specified by the third operand. And that result is stored in the register specified by the fourth operand.
It compares the current flag condition with the flag condition indicated by the string in the cnd"part.
If the values match, adds the word data of the register specified by the first operand to the word data of the register specified by the second operand. And 1 is added to the addition result and that result is stored in the register specified by the third operand.
If the values not match, adds the word data of the register specified by the first operand to the word data of the register specified by the second operand. And that result is stored in the register specified by the third operand.
For the adfcnd instruction, the assembler generates the corresponding adf instruction (see "Table 5.28 adfcnd Instruction List") and converts it to syntax "adf imm4, reg1, reg2, reg3". |
If an absolute expression having a value exceeding 4 bits is specified as imm4 of the adf instruction, the following message is output, and assembly continues using the lower 4 bits of the specified value. |
If 0xD is specified as imm4 of the adf instruction, the following message is output, and assembly is stopped. |