移位指令可以可以将累加器1
的低字或整个累加器的内容进行左移或右移一定的位数。二进制数左移一位相当于将原数值乘以2。右移一位相当于将原数值除以2。
参数N
表示移位的次数。移出的空位根据不同的指令由0或符号位的状态填充。最后移出的位的状态同时被装入到状态字的CC1位,CC0和OV位被复位。
l
SSI <number> 16位整数右移指令
l
SSD <number>
32位整数右移指令
l
SLW <number>
逻辑字左移指令
l
SRW <number> 逻辑字右移指令
l
SLD <number>
逻辑双字左移指令
l
SRD <number>
逻辑双字右移指令
例3.8.1
FBD符号:
STL指令格式:
SSI <number>
1.当使能输入端EN
= 1时,执行整数右移指令。将来自输入端IN的16位整数右移N位后,由OUT端输出。
2.N端输入要移位的次数,如果N
大于16则其作用与N
= 16 相同。
3.移出的空位由符号位的状态填充,如果是正数,以0填充,如果是负数,以1填充。
4.如果N不等于0,则执行该指令后,CC0和OV位总是等于0。
5.ENO
= EN
|