发布于 2009-03-19 17:05:39
0楼
使用按钮实现一位或多位置位或复位:
无符号字节变量:
SetTagByteWait("TagName",(BYTE)(GetTagByteWait("TagName") m)); //置位
SetTagByteWait("TagName",(BYTE)(GetTagByteWait("TagName") & (0xFF ^ m))); //复位
m为所置位的各位之和:m=1+2+4+8+~~+64+128(即2的n次方之和,n为所要置位的位,等于0~7)
无符号字变量:
SetTagWordWait("TagName",(WORD)(GetTagWordWait("TagName") m)); //置位
SetTagWordWait("TagName",(WORD)(GetTagWordWait("TagName") & (0xFFFF ^ m))); //复位
m为所置位的各位之和:m=1+2+4+8+~~+16384+32768(即2的n次方之和,n为所要置位的位,等于0~15)
无符号双字变量:
SetTagDWordWait("TagName",(DWORD)(GetTagDWordWait("TagName") m)); //置位
SetTagDWordWait("TagName",(DWORD)(GetTagDWordWait("TagName") & (0xFFFFFFFF ^ m))); //复位
m为所置位的各位之和:m=1+2+4+8+~~+1073741824+2147483648(即2的n次方之和,n为所要置位的位,等于0~31)