2024年8月8日发(作者:毕元恺)
松下PLC指令
松下plc指令
1、16位数据传输指令
格式:[F0 MV,S,D]
功能:S:是源区操作数{WX,WY,WR,
SV,EV,DT,IX,IY,K,H}
D:是目的区{WY,WR,SV,EV,DT,
IX,IY }
16位的S→16位的D
2、32位数据传输指令
格式:[F1 DMV,S,D]
功能:S:是源区的操作数{WX,WY,WR,
SV,EV,DT,IX,K,H}
D:是目的区 {WY,WR,SV,EV,
DT,IX }
32位的S→32位的D
3、16位数据求反传输指令
格式:[F2 MV/,S,D]
功能:S:源区操作数{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
D:目标区 {WY,WR,SV,EV,
DT,IX,IY }
16位的S→16位的D
4、32位数据求反传输指令
格式:[F3 DMV/,S,D]
功能:S:源区操作数{WX,WY,WR,SV,
EV,DT,IX,K,H}
D:目标区 {WY,WR,SV,EV,
DT,IX }
32位的S→32位的D
5、16位数据一位传输指令
格式:[F5 BTM,S,n,D]
功能:S:是源区操作数{WX,WY,WR,
SV,EV,DT,IX,IY,K,H}
D:是目标区 { WY,WR,SV,EV,
DT,IX,IY,K,H}
n=H408中,4是目的区(S)地址
8是源区(D)地址
6、16位数据按位传输指令
格式:[F6 DGT,S,n,D]
功能:S:是源区操作数{WX,WY,WR,
SV,EV,DT,IX,IY,K,H}
D:是目标区 { WY,WR,SV,EV,
DT,IX,IY,K,H}
n=H418中,
4是目的区(S)地址
1是位数,0代表4位,1代表8位
8是源区(D)地址
7、数据块传输指令
格式:[F10 BKMV,S1,S2,D]
功能:S1:是源区首地址{WX,WY,WR,
SV,EV,DT }
S2:是源区末地址{WX,WY,WR,
SV,EV,DT }
D:目的区首地址{ WY,WR,SV,
EV,DT }
把S1到S2内的所有数据传输到以D为
首地址的寄存器
8、数据复制指令
格式:[F11 COPY,S,D1,D2]
功能:S:源区操作数{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
D1:目标区首地址{ WY,WR,SV,EV,
DT }
D2:目标区末地址{ WY,WR,SV,EV,
DT }
将操作数S复制到D1到D2的寄存器
9、16位数据交换指令
格式:[F15 XCH,D1,D2]
功能:D1:源区操作数{WX,WY,WR,SV,
EV,DT,IX, K,H}
D2:目标区操作数{ WY,WR,SV,EV,
DT,IX }
将D1和D2两个操作数对换
10、32位数据交换指令
格式:[F16 DXCH,D1,D2]
功能:D1:源区操作数{WX,WY,WR,
SV,EV,DT,IX, K,H}
D2:目标区操作数{ WY,WR,SV,
EV,DT,IX }
将D1和D2两个操作数对换
11、16位数据中的高/低字节交换指令
格式:[F17 SWAP,D]
功能:D:源区操作数{ WY,WR,SV,EV,
DT,IX, IY}
将D1和D2两个操作数对换
12、16位数据加法指令
格式:[F20 +,S,D]
功能:S:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S和D两个操作数相加后结果存在D
中
13、32位数据加法指令
格式:[F21 D+,S,D]
功能:S:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S和D两个操作数相加后结果存在D
中
13、32位数据加法传输指令
格式:[F22 +,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S1和S2两个操作数相加后结果存在
D中
14、32位数据加法传输指令
格式:[F23 D+,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S1和S2两个操作数相加后结果存在
D中
15、16位数据减法指令
格式:[F25 -,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减S后结果存放在D中
16、16位数据减法指令
格式:[F26 -,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减S后结果存放在D中
17、16位数据减法传输指令
格式:[F27 -,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减S2后结果存放在D中
18、32位数据减法传输指令
格式:[F28 -,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减S2后结果存放在D中
19、16位数据乘法传输指令
格式:[F30 *,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
D:结果(32位){WY,WR,SV,
DT,IX,IY }
S1乘以S2后结果存放在D中
20、32位数据乘法传输指令
格式:[F31 D*,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
D:结果(64位){WY,WR,SV,
DT,IX,IY }
S1乘以S2后结果存放在D中
EV,
EV,
EV,
EV,
EV,
EV,
21、16位数据除法传输指令
格式:[F32 %,S1,S2,D]
功能:S1:除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:商{WY,WR,SV,EV,
IY }
S1除以S2后商存放在D中,余数放到
DT9015中
22、32位数据除法传输指令
格式:[F33 D%,S1,S2,D]
功能:S1:除数{WX,WY,WR,
DT,IX,IY,K,H}
S2:被除数{WX,WY,WR,
DT,IX,IY,K,H}
D:商{WY,WR,SV,EV,
IY }
DT,IX,
SV,EV,
SV,EV,
DT,IX,
S1除以S2后商存放在D中,余数放到
DT9016 DT9015(低位)中
23、16位数据加1指令
格式:[F35 +1, D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D加1→D
24、32位数据加1指令
格式:[F36 D+1, D]
功能:D:寄存器{WY,
IX,IY }
D加1→D
25、16位数据减1指令
格式:[F37 -1, D]
功能:D:寄存器{WY,
IX,IY }
D减1→D
26、32位数据减1指令
格式:[F38 D-1, D]
功能:D:寄存器{WY,
IX,IY }
D减1→D
WR,
WR,
WR,
SV,EV,
SV,EV,
SV,EV,
DT,
DT,
DT,
27、4位BCD数据加法指令
格式:[F40 B+,S,D]
功能:S:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:加数{WY,WR,SV,EV,DT,IX,
IY }
D加上S后结果存放在D中
28、8位BCD数据加法指令
格式:[F41 DB+,S,D]
功能:S:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:加数{WY,WR,SV,EV,DT,IX,
IY }
D加上S后结果存放在D中
29、4位BCD数据加法传输指令
格式:[F42 B+,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1加上S2后结果存放在D中
30、8位BCD数据加法传输指令
格式:[F43 DB+,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1加上S2后结果存放在D中
31、4位BCD数据减法指令
格式:[F45 B-,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减去S后结果存放在D中
32、8位BCD数据减法指令
格式:[F46 DB-,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减去S后结果存放在D中
33、4位BCD数据减法传输指令
格式:[F47 B-,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减去S2后结果存放在D中
34、8位BCD数据减法传输指令
格式:[F48 DB-,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减去S2后结果存放在D中
35、4位BCD数据乘法传输指令
格式:[F50 B*,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1乘以S2后结果存放在D中
36、8位BCD数据乘法传输指令
格式:[F51 DB*,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1乘以S2后结果存放在D中
37、4位BCD数据除法传输指令
格式:[F52 B%,S1,S2,D]
功能:S1:除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1除以S2后结果存放在D中
38、8位BCD数据除法传输指令
格式:[F53 DB%,S1,S2,D]
功能:S1:乘数 {WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1乘以S2后结果存放在D中
39、4位BCD加1指令
格式:[F55 B+1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D加1后储存在D中
40、8位BCD加1指令
格式:[F56 DB+1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D加1后储存在D中
41、4位BCD减1指令
格式:[F57 B-1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D减1后储存在D中
42、8位BCD减1指令
格式:[F58 DB-1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D减1后储存在D中
43、16位数据比较指令
格式:[F60 CMP,S1,S2]
功能:S1:寄存器{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
用触电R900A表示“>”用触电R900B
表示“=”用触点R900C表示“<”
注意:判断触电要紧跟着比较指令F60
44、32位数据比较指令
格式:[F61 DCMP,S1,S2]
功能:S1:寄存器{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
用触电R900A表示“>”用触电R900B
表示“=”用触点R900C表示“<”
注意:判断触电要紧跟着比较指令F60
45、16位数据区段比较指令
格式:[F62 WIN,S1,S2,S3]
功能:S1:寄存器{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S3:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
用触电R900A表示“>”用触电R900B
表示“=”用触点R900C表示“<”
当S1>S3时R900A接通,S2<=S1<=S3
时R900B接通,S1 注意:判断触电要紧跟着比较指令F60 46、32位数据区段比较指令 格式:[F63 DWIN,S1,S2,S3] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} S3:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} 用触电R900A表示“>”用触电R900B 表示“=”用触点R900C表示“<” 当S1>S3时R900A接通,S2<=S1<=S3 时R900B接通,S1 注意:判断触电要紧跟着比较指令F60 47、位数据块比较指令 格式:[F64 BWIN,S1,S2,S3] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} S3:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} 用触电R900A表示“>”用触电R900B 表示“=”用触点R900C表示“<” 当S1>S3时R900A接通,S2<=S1<=S3 时R900B接通,S1 注意:判断触电要紧跟着比较指令F60 48、16位数据与运算指令 格式:[F65 WAN,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相与 后结果存在D中 49、16位数据或运算指令 格式:[F66 WOR,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相或 后结果存在D中 50、16位数据异或运算指令 格式:[F67 XOR,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相异 或后结果存在D中 相同为0 不相同为 1 51、16位数据异或非运算指令 格式:[F68 XNR,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相异 或后结果存在D中 相同为0 不相同为 1 52、区块检查计算指令 格式:[F70 BCC,S1,S2,S3,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT } S3:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 通过S1的设定(K0:加,K1:减,K2: 执行运算)执行或运算,计算从数据寄存 器S2开始的12个字节的ASCⅡ码 数据的区块检查码(BCC),区块检查码 (BCC) 存储在数据寄存器的低按字节 53、十六进制数据转换为ASCⅡ码指令 格式:[F71 HEXA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 54、ASCⅡ码转换为十六进制数据指令 格式:[F72 AHEX,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 55、十六进制数据转换为ASCⅡ码指令 格式:[F72 AHEX,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 56、BCD数据转换为ASCⅡ码指令 格式:[F73 BCDA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 56、ASCⅡ码转换为BCD数据指令 格式:[F74 ABCD,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 57、16位数据转换为ASCⅡ码指令 格式:[F75 BINA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 58、ASCⅡ码转换为16位数据指令 格式:[F76 ABIN,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 59、32位数据转换为ASCⅡ码指令 格式:[F77 DBINA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 60、ASCⅡ码转换为32位数据指令 格式:[F78 DABIN,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 61、16位二进制数据转换为4位BCD码指令 格式:[F80 BCD,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为4位BCD码 62、4位BCD码转换为16位二进制数据指令 格式:[F81 BIN,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为16位二进制数据 63、32位数据转换为8位BCD码指令 格式:[F82 DBCD,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为8位BCD码 64、4位BCD码转换为32位二进制数据指令 格式:[F83 DBIN,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为32位二进制数据 65、16位数据求反指令 格式:[F84 INV,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求反后存放到D中 65、16位数据求补指令 格式:[F85 NEG,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求补后存放到D中 66、32位数据求补指令 格式:[F86 NEG,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求补后存放到D中 67、16位数据绝对值指令 格式:[F87 ABS,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求绝对值后存放到D中 68、32位数据绝对值指令 格式:[F88 DABS,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求绝对值后存放到D中 69、16位数据符号位扩展指令 格式:[F89 EXT,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX } 将D中的16位数据扩展为32位,存放 在D和D+1中 70、数据解码指令 格式:[F90 DECO,S,n,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} n:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 例:n=H302,3代表开始解码的数据位, 2代表解码的位数。 63、七段解码指令 格式:[F91 SEGT,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 2024年8月8日发(作者:毕元恺)
松下PLC指令
松下plc指令
1、16位数据传输指令
格式:[F0 MV,S,D]
功能:S:是源区操作数{WX,WY,WR,
SV,EV,DT,IX,IY,K,H}
D:是目的区{WY,WR,SV,EV,DT,
IX,IY }
16位的S→16位的D
2、32位数据传输指令
格式:[F1 DMV,S,D]
功能:S:是源区的操作数{WX,WY,WR,
SV,EV,DT,IX,K,H}
D:是目的区 {WY,WR,SV,EV,
DT,IX }
32位的S→32位的D
3、16位数据求反传输指令
格式:[F2 MV/,S,D]
功能:S:源区操作数{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
D:目标区 {WY,WR,SV,EV,
DT,IX,IY }
16位的S→16位的D
4、32位数据求反传输指令
格式:[F3 DMV/,S,D]
功能:S:源区操作数{WX,WY,WR,SV,
EV,DT,IX,K,H}
D:目标区 {WY,WR,SV,EV,
DT,IX }
32位的S→32位的D
5、16位数据一位传输指令
格式:[F5 BTM,S,n,D]
功能:S:是源区操作数{WX,WY,WR,
SV,EV,DT,IX,IY,K,H}
D:是目标区 { WY,WR,SV,EV,
DT,IX,IY,K,H}
n=H408中,4是目的区(S)地址
8是源区(D)地址
6、16位数据按位传输指令
格式:[F6 DGT,S,n,D]
功能:S:是源区操作数{WX,WY,WR,
SV,EV,DT,IX,IY,K,H}
D:是目标区 { WY,WR,SV,EV,
DT,IX,IY,K,H}
n=H418中,
4是目的区(S)地址
1是位数,0代表4位,1代表8位
8是源区(D)地址
7、数据块传输指令
格式:[F10 BKMV,S1,S2,D]
功能:S1:是源区首地址{WX,WY,WR,
SV,EV,DT }
S2:是源区末地址{WX,WY,WR,
SV,EV,DT }
D:目的区首地址{ WY,WR,SV,
EV,DT }
把S1到S2内的所有数据传输到以D为
首地址的寄存器
8、数据复制指令
格式:[F11 COPY,S,D1,D2]
功能:S:源区操作数{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
D1:目标区首地址{ WY,WR,SV,EV,
DT }
D2:目标区末地址{ WY,WR,SV,EV,
DT }
将操作数S复制到D1到D2的寄存器
9、16位数据交换指令
格式:[F15 XCH,D1,D2]
功能:D1:源区操作数{WX,WY,WR,SV,
EV,DT,IX, K,H}
D2:目标区操作数{ WY,WR,SV,EV,
DT,IX }
将D1和D2两个操作数对换
10、32位数据交换指令
格式:[F16 DXCH,D1,D2]
功能:D1:源区操作数{WX,WY,WR,
SV,EV,DT,IX, K,H}
D2:目标区操作数{ WY,WR,SV,
EV,DT,IX }
将D1和D2两个操作数对换
11、16位数据中的高/低字节交换指令
格式:[F17 SWAP,D]
功能:D:源区操作数{ WY,WR,SV,EV,
DT,IX, IY}
将D1和D2两个操作数对换
12、16位数据加法指令
格式:[F20 +,S,D]
功能:S:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S和D两个操作数相加后结果存在D
中
13、32位数据加法指令
格式:[F21 D+,S,D]
功能:S:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S和D两个操作数相加后结果存在D
中
13、32位数据加法传输指令
格式:[F22 +,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S1和S2两个操作数相加后结果存在
D中
14、32位数据加法传输指令
格式:[F23 D+,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:被加数{WY,WR,SV,EV,DT,
IX,IY }
将S1和S2两个操作数相加后结果存在
D中
15、16位数据减法指令
格式:[F25 -,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减S后结果存放在D中
16、16位数据减法指令
格式:[F26 -,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减S后结果存放在D中
17、16位数据减法传输指令
格式:[F27 -,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减S2后结果存放在D中
18、32位数据减法传输指令
格式:[F28 -,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减S2后结果存放在D中
19、16位数据乘法传输指令
格式:[F30 *,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
D:结果(32位){WY,WR,SV,
DT,IX,IY }
S1乘以S2后结果存放在D中
20、32位数据乘法传输指令
格式:[F31 D*,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,
DT,IX,IY,K,H}
D:结果(64位){WY,WR,SV,
DT,IX,IY }
S1乘以S2后结果存放在D中
EV,
EV,
EV,
EV,
EV,
EV,
21、16位数据除法传输指令
格式:[F32 %,S1,S2,D]
功能:S1:除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:商{WY,WR,SV,EV,
IY }
S1除以S2后商存放在D中,余数放到
DT9015中
22、32位数据除法传输指令
格式:[F33 D%,S1,S2,D]
功能:S1:除数{WX,WY,WR,
DT,IX,IY,K,H}
S2:被除数{WX,WY,WR,
DT,IX,IY,K,H}
D:商{WY,WR,SV,EV,
IY }
DT,IX,
SV,EV,
SV,EV,
DT,IX,
S1除以S2后商存放在D中,余数放到
DT9016 DT9015(低位)中
23、16位数据加1指令
格式:[F35 +1, D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D加1→D
24、32位数据加1指令
格式:[F36 D+1, D]
功能:D:寄存器{WY,
IX,IY }
D加1→D
25、16位数据减1指令
格式:[F37 -1, D]
功能:D:寄存器{WY,
IX,IY }
D减1→D
26、32位数据减1指令
格式:[F38 D-1, D]
功能:D:寄存器{WY,
IX,IY }
D减1→D
WR,
WR,
WR,
SV,EV,
SV,EV,
SV,EV,
DT,
DT,
DT,
27、4位BCD数据加法指令
格式:[F40 B+,S,D]
功能:S:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:加数{WY,WR,SV,EV,DT,IX,
IY }
D加上S后结果存放在D中
28、8位BCD数据加法指令
格式:[F41 DB+,S,D]
功能:S:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:加数{WY,WR,SV,EV,DT,IX,
IY }
D加上S后结果存放在D中
29、4位BCD数据加法传输指令
格式:[F42 B+,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1加上S2后结果存放在D中
30、8位BCD数据加法传输指令
格式:[F43 DB+,S1,S2,D]
功能:S1:加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被加数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1加上S2后结果存放在D中
31、4位BCD数据减法指令
格式:[F45 B-,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减去S后结果存放在D中
32、8位BCD数据减法指令
格式:[F46 DB-,S,D]
功能:S:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:减数{WY,WR,SV,EV,DT,IX,
IY }
D减去S后结果存放在D中
33、4位BCD数据减法传输指令
格式:[F47 B-,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减去S2后结果存放在D中
34、8位BCD数据减法传输指令
格式:[F48 DB-,S1,S2,D]
功能:S1:减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被减数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1减去S2后结果存放在D中
35、4位BCD数据乘法传输指令
格式:[F50 B*,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1乘以S2后结果存放在D中
36、8位BCD数据乘法传输指令
格式:[F51 DB*,S1,S2,D]
功能:S1:乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1乘以S2后结果存放在D中
37、4位BCD数据除法传输指令
格式:[F52 B%,S1,S2,D]
功能:S1:除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S2:被除数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1除以S2后结果存放在D中
38、8位BCD数据除法传输指令
格式:[F53 DB%,S1,S2,D]
功能:S1:乘数 {WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:被乘数{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
D:结果{WY,WR,SV,EV,DT,IX,
IY }
S1乘以S2后结果存放在D中
39、4位BCD加1指令
格式:[F55 B+1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D加1后储存在D中
40、8位BCD加1指令
格式:[F56 DB+1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D加1后储存在D中
41、4位BCD减1指令
格式:[F57 B-1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D减1后储存在D中
42、8位BCD减1指令
格式:[F58 DB-1,D]
功能:D:寄存器{WY,WR,SV,EV,DT,
IX,IY }
D减1后储存在D中
43、16位数据比较指令
格式:[F60 CMP,S1,S2]
功能:S1:寄存器{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
用触电R900A表示“>”用触电R900B
表示“=”用触点R900C表示“<”
注意:判断触电要紧跟着比较指令F60
44、32位数据比较指令
格式:[F61 DCMP,S1,S2]
功能:S1:寄存器{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
用触电R900A表示“>”用触电R900B
表示“=”用触点R900C表示“<”
注意:判断触电要紧跟着比较指令F60
45、16位数据区段比较指令
格式:[F62 WIN,S1,S2,S3]
功能:S1:寄存器{WX,WY,WR,SV,
EV,DT,IX,IY,K,H}
S2:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
S3:寄存器{WX,WY,WR,SV,EV,
DT,IX,IY,K,H}
用触电R900A表示“>”用触电R900B
表示“=”用触点R900C表示“<”
当S1>S3时R900A接通,S2<=S1<=S3
时R900B接通,S1 注意:判断触电要紧跟着比较指令F60 46、32位数据区段比较指令 格式:[F63 DWIN,S1,S2,S3] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} S3:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} 用触电R900A表示“>”用触电R900B 表示“=”用触点R900C表示“<” 当S1>S3时R900A接通,S2<=S1<=S3 时R900B接通,S1 注意:判断触电要紧跟着比较指令F60 47、位数据块比较指令 格式:[F64 BWIN,S1,S2,S3] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} S3:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} 用触电R900A表示“>”用触电R900B 表示“=”用触点R900C表示“<” 当S1>S3时R900A接通,S2<=S1<=S3 时R900B接通,S1 注意:判断触电要紧跟着比较指令F60 48、16位数据与运算指令 格式:[F65 WAN,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相与 后结果存在D中 49、16位数据或运算指令 格式:[F66 WOR,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相或 后结果存在D中 50、16位数据异或运算指令 格式:[F67 XOR,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相异 或后结果存在D中 相同为0 不相同为 1 51、16位数据异或非运算指令 格式:[F68 XNR,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器{WY,WR,SV,EV,DT, IX,IY } 将S1和S2两个寄存器的内容安位相异 或后结果存在D中 相同为0 不相同为 1 52、区块检查计算指令 格式:[F70 BCC,S1,S2,S3,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT,IX,IY,K,H} S2:寄存器{WX,WY,WR,SV,EV, DT } S3:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 通过S1的设定(K0:加,K1:减,K2: 执行运算)执行或运算,计算从数据寄存 器S2开始的12个字节的ASCⅡ码 数据的区块检查码(BCC),区块检查码 (BCC) 存储在数据寄存器的低按字节 53、十六进制数据转换为ASCⅡ码指令 格式:[F71 HEXA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 54、ASCⅡ码转换为十六进制数据指令 格式:[F72 AHEX,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 55、十六进制数据转换为ASCⅡ码指令 格式:[F72 AHEX,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 56、BCD数据转换为ASCⅡ码指令 格式:[F73 BCDA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 56、ASCⅡ码转换为BCD数据指令 格式:[F74 ABCD,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 57、16位数据转换为ASCⅡ码指令 格式:[F75 BINA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 58、ASCⅡ码转换为16位数据指令 格式:[F76 ABIN,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 59、32位数据转换为ASCⅡ码指令 格式:[F77 DBINA,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 60、ASCⅡ码转换为32位数据指令 格式:[F78 DABIN,S1,S2,D] 功能:S1:寄存器{WX,WY,WR,SV, EV,DT } S2:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX } 61、16位二进制数据转换为4位BCD码指令 格式:[F80 BCD,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为4位BCD码 62、4位BCD码转换为16位二进制数据指令 格式:[F81 BIN,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为16位二进制数据 63、32位数据转换为8位BCD码指令 格式:[F82 DBCD,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为8位BCD码 64、4位BCD码转换为32位二进制数据指令 格式:[F83 DBIN,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 将S中的内容转换为32位二进制数据 65、16位数据求反指令 格式:[F84 INV,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求反后存放到D中 65、16位数据求补指令 格式:[F85 NEG,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求补后存放到D中 66、32位数据求补指令 格式:[F86 NEG,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求补后存放到D中 67、16位数据绝对值指令 格式:[F87 ABS,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求绝对值后存放到D中 68、32位数据绝对值指令 格式:[F88 DABS,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX,IY } 将D中的内容求绝对值后存放到D中 69、16位数据符号位扩展指令 格式:[F89 EXT,D] 功能:D:寄存器{ WY,WR,SV,EV, DT,IX } 将D中的16位数据扩展为32位,存放 在D和D+1中 70、数据解码指令 格式:[F90 DECO,S,n,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} n:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY } 例:n=H302,3代表开始解码的数据位, 2代表解码的位数。 63、七段解码指令 格式:[F91 SEGT,S,D] 功能:S:寄存器{WX,WY,WR,SV,EV, DT,IX,IY,K,H} D:寄存器 {WY,WR,SV,EV,DT, IX ,IY }