In Cx-Programmer, an instruction operand can either be entered as a symbol, address or literal value. When learning to use Cx-Programmer, it can be confusing to know which prefix character to use when specifying literal numbers in an instruction.
Below is an example of the prefixes available when specifying a literal value.
Quick reference
* |
An indirect address, Can be used in front of a symbol name. (The contents of the given address are used as the address to find the data). |
# |
A hexadecimal value. Also used for operands that must take a BCD number. |
& |
A decimal or BCD-format Number. |
+ or - |
A signed, decimal, floating point value. |
Instruction Prefixes
@ |
Upward differentiation. |
% |
Downward differentiation. |
! |
Immediate refreshing. |
Not all instructions support variations from the instruction prefixes above. Refer to the Programming manual of the CPU for further information.
Detailed Dialog Example
When entering an operand in the detailed dialog mode, the dialog shows the valid address ranges and types of operands that are allowed.

This BCD multiply block is showing an error as indicated in red. You can view the detailed dialog window by double clicking the instruction , then selecting the Detail>> button. From here you can select the operands to view the valid range of the instruction input. In this example, we have incorrectly specified a REAL data type, +50. When you select the the second operand, you can see that it requires a range of #0~9999, indicates this is a BCD datatype, and indicates that the memory area is not valid.

This second example is using the same instruction, however this time we have entered a Hexadecimal value by mistake. This time, the detailed dialog box lets us know that all though the prefix is correct, the operand is not a BCD value.
Finding and replacing Values
BCD operands are shown in the programming windows with a ‘#’ on the front, but are decimal values. When searching for a value in the find dialog, a ‘#’ prefix means hexadecimal. Therefore, a find of ‘#10’ will actually match a BCD operand of ‘#16’. A replacement of ‘#10’ will actually show as ‘#16’ back in the program display for a BCD operand.