### ZMATH64 -- 64 位计算

类型 | 64 位计算指令
描述 | 对存储D寄存器(MODBUS寄存器)的64位数进行计算。 一个 64 位有符号整数占用 4 个寄存器(小端模式)。 只操作 MODBUS 寄存器，不处理 VR 映射等。 4 系列控制器 20170629 固件以上版本支持。
语法 | ZMATH64(opmode, dindex1, dindex2) opmode：操作编号 dindex1、dindex2：MODBUS 寄存器编号
操作编号 | 执行操作 | 说明
1 | 64 位整数加法 | D64(dindex1) += D64(dindex2)
2 | 64 位整数减法 | D64(dindex1) -= D64(dindex2)
3 | 64 位整数乘法 | D64(dindex1) *= D64(dindex2)
4 | 64 位整数除法 | D64(dindex1) /= D64(dindex2)
5 | 64 位整数余 | D64(dindex1) %= D64(dindex2)
11 | 64 位整数读取 | D64(dindex1) = D32(dindex2)
12 | 64 位整数转换 | D32(dindex1) = D64(dindex2)
13 | 64 位整数读取 | D64(dindex1) = D32IEEE(dindex2)
14 | 64 位整数转换 | D32IEEE(dindex1) = D64(dindex2)
15 | 赋值 | D64(dindex1) = double64(dindex2)
16 | 赋值 | double64(dindex1) = D64(dindex2)
17 | 赋值 | double64 (dindex1) = D32IEEE (dindex2)
18 | 赋值 | D32IEEE (dindex1) = double64 (dindex2)
21 | double 加法 | double64 (dindex1) += double64 (dindex2)
22 | double 减法 | double64 (dindex1) -= double64 (dindex2)
23 | double 乘法 | double64 (dindex1) *= double64 (dindex2)
24 | double 除法 | double64 (dindex1) /= double64 (dindex2)
25 | double 余，求小数 | double64 (dindex1) %= double64 (dindex2)
D32IEEE 表示浮点数存储，同 MODBUS_IEEE。 D64 表示 64 位有符号整数存储，可以通过两个 MODBUS_LONG 来读取高 32 和低 32 位。
适用控制器 | 通用
例子 | MODBUS_LONG(0)=100 MODBUS_LONG(8)=20 ZMATH64(1,8,0) '64 位整数加法计算，两个数相加后存储在 MODBUS_LONG(8)起始地址 ?MODBUS_LONG(0) '打印结果，100 ?MODBUS_LONG(8) '打印结果，120
相关指令 | MODBUS_IEEE，MODBUS_LONG，MODBUS_REG