L STW
T #conv_stw //装载STW 数据到 #conv_stw
L MB 87 // 装载MB87
SLW 4 //字左移4位
LAR1 // 装载地址寄存器AR1
L #conv_stw //
T STW //装载#conv_stw 数据到 STW
L #conv_akku1 //装载 #conv_akku1
L DBW [AR1,P#0.0] //装载AR1指针指向P#0.0
T #conv_akku1 //传送到 #conv_akku1
TAK //将accu1和accu2中的内容交换
T #conv_akku2 //传送至 #conv_akku2
L STW //
T #conv_stw //装载STW 数据到 #conv_stw
L MB 89 //装载MB87
SLW 4 //字左移4位
LAR1 //装载地址寄存器AR1
L #conv_stw //
T STW //装载#conv_stw 数据到 STW
L #conv_akku2 //装载 #conv_akku2
L #conv_akku1 //装载 #conv_akku1
T DBW [AR1,P#0.0] //传送至DBW [AR1,P#0.0]
这一段程序,我有一个地方不明白,请高人指点:
L MB 87 // 装载MB87
SLW 4 //字左移4位
LAR1 // 装载地址寄存器AR1
L #conv_stw //
T STW //装载#conv_stw 数据到 STW
L #conv_akku1 //装载 #conv_akku1
L DBW [AR1,P#0.0] //装载AR1指针指向P#0.0
这一段是把MB87的内容装入ACCU1,ACCU1的内容左移4位,再装入地址寄存器AR1。此时地址寄存器的内容就是将要装载的数据块DBW的地址。
为什么MB87的内容左移4位就得到数据块DBW的地址呢?