Skip to main content

Negation (DWORD)

Instruction Parameters

Supported PLC Series

XPnA/1RXPnBXPnEXPnFCP3A/B/P/U
CP4A~D/U
CPnECPnFBPPLC-S

Supported Data Registers

MXYKLFTCSZRQD@DConstant
D----

Supported Flags

FlagBitSupport
ErrorF11.0
ZeroF11.1-
CarryF11.2-

Number of Steps

Steps
2

Operands

OperandDescription
DThe only operand.
Entries are only DWORD data registers.
This is the value to negate.
This is where the negation is stored.

The signed value range is -2,147,483,648 ~ 2,147,483,647 (232).
The unsigned value range is 0 ~ 4,294,967,295 (232-1).
The Hexadecimal value range is H00000000 ~ HFFFFFFFF.

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.

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 DNEG and DNEGP instructions behave as follows:

  • If the initial value for the data register, D, is positive and the DNEG or DNEGP instruction is executed, the resulting negation value D is negative.
  • If the initial value for the data register, D, is negative and the DNEG or DNEGP instruction is executed, the resulting negation value D is positive.
  • If the initial value for the data register, D, is signed and -2,147,483,648, negation will NOT occur, and the data register, D, will remain -2,147,483,648.
Execution Condition

It is recommended that the DNEG instructions be used with a pulse contact as an execution condition, or use the DNEGP instruction.

Examples