NEGP

指令说明:

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

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

处理的数值范围:-32768 ~ +32767

操作数:

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

指令格式:[NEGP  D ]

编程示例:

在下图中,M0不必为上升沿脉冲指令,因为NEGP具有脉冲执行型,假设D0-45,满足BON指令条件,M0闭合,执行NEGP指令,D045

NEGP指令执行后,D0数据的变化如下。

D0= -45时,它的16个数据位:

软元件

b15

b14

b13

b12

b11

b10

b9

b8

b7

b6

b5

b4

b3

b2

b1

b0

D0

1

1

1

1

1

1

1

1

1

1

0

1

0

0

1

1

按位取反后,它的16个数据位:

软元件

b15

b14

b13

b12

b11

b10

b9

b8

b7

b6

b5

b4

b3

b2

b1

b0

D0

0

0

0

0

0

0

0

0

0

0

1

0

1

1

0

0

加一后,它的16个数据位:

软元件

b15

b14

b13

b12

b11

b10

b9

b8

b7

b6

b5

b4

b3

b2

b1

b0

D0

0

0

0

0

0

0

0

0

0

0

1

0

1

1

0

1

此时,D0=45