DNEGP

指令说明:

       DNEGP32位脉冲执行型补码指令,即指令激活一次,执行一次补码运算。是将操作数[D+1,D]的数据内容中的32个数据位按位取反(01,10)后再加一,运算的结果传送到原先操作数[D+1,D]中。

程序在循环扫描时,因为DNEG指令具有连续执行型,所以它操作的软元件的数据不断变化,所以在数据的补码运算一般用脉冲执行型的DNEGP指令。

处理的数值范围:-2147483648 ~ +2147483647

操作数:

       DKnY, KnM, KnS,T,C,D,Z,V,LV,DT

指令格式:[DNEGP  D ]

编程示例:

满足条件后,D1D0的数据为50000,注意此时的X0不是上升沿脉冲触发触点,因为DNEGP具有脉冲执行型,当X0闭合时,D1D0的数据也只进行一次补码运算,运算后的数据传送到D1D0,此时D1D0-50000

D1D0=50000时,执行DNEGP指令,D1D0的数据位变化

D116个数据为高位

D016个数据为低位

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

1

0

0

0

0

1

1

0

1

0

1

0

0

0

0

D1D0的数据按位取反,它们的数据变化

D116个数据为高位

D016个数据为低位

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

0

1

1

1

1

0

0

1

0

1

0

1

1

1

1

D1D0取反后的数据再加一,它们的数据变化

D116个数据为高位

D016个数据为低位

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

0

0

1

1

1

1

0

0

1

0

1

1

0

0

0

0

D1D0的数据经过取反加一运算后,D1D0= -50000