Search Data (DWORD)
Instruction Parameters
Supported PLC Series
| XPnA/1R | XPnB | XPnE | XPnF | CP3A/B/P/U CP4A~D/U | CPnE | CPnF | BP | PLC-S |
|---|---|---|---|---|---|---|---|---|
| ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Supported Data Registers
| M | X | Y | K | L | F | T | C | S | Z | R | Q | D | @D | Constant | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| S1 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| S2 | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ | - |
| D | ✓ | - | ✓ | ✓ | ✓ | - | - | - | - | ✓ | ✓ | ✓ | ✓ | ✓ | - |
| n | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | - | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Supported Flags
| Flag | Bit | Support |
|---|---|---|
| Error | F11.0 | ✓ |
| Zero | F11.1 | - |
| Carry | F11.2 | - |
Number of Steps
| Steps |
|---|
| 5 |
Operands
| Operand | Description |
|---|---|
| S1 | The first operand. Entries are DWORD data registers or constants. This is the value to search for. The signed value range is -2,147,483,648 ~ 2,147,483,647 (232). The unsigned value range is 0 ~ 4,294,967,296 (232). The Hexadecimal value range is H00000000 ~ HFFFFFFFF. |
| S2 | The second operand. Entries are only DWORD data registers. This is the starting data register to search from. |
| D | The third operand. Entries are only DWORD data registers. This stores the data register location where the data was found. There is an offset of +1 to the found data register if the search is successful. |
| n | The fourth operand. Entries are DWORD data registers or constants. This is the amount of data registers starting at S2 to search for. The value must be greater than or equal to 1. |
Notice
Error Flag (F11.0) Notice
The error flag, F11.0, will be ON for one scan when the address of the data register assigned by @D exceeds the range of the data register, D. The range of the data register, D, is dependent on the CPU type.
F11.0 turns ON when the value of the data for searching exceeds the data register assigned to S1 or S2.
F11.0 turns ON if the value assigned to n is 0 or negative.
Signed Overflow
DWORD data register entry behaves as follows:
- If the value of S1 or S2 exceeds the smallest signed value -2,147,483,648, the value will be set to -2,147,483,648 with no warning.
- If the value of S1 or S2 exceeds the largest signed value 2,147,483,647, the value will be set to 2,147,483,647 with no warning.
Instruction Behavior
The DSER and DSERP instructions behave as follows:
- n can only be positive
- If S1 is found in multiple data register locations, only the first occurrence will be saved in the data register, D, with a +1 offset.
- The total number of occurrences is saved in D+1.
- If S1 is not found, the data registers, D and D+1, will both be equal to 0.