状态位STA与OR位
刘玉蓉
发布于2014-09-23 17:37
2
0
标签:
关于300的状态位,网上说得很多,但都是一个版本,其它都能从字面上稍微理解,但对于STA与OR位,本人理解得不是很深透,希望哪位能详细解释一下,好举个例子说明一下这两个位。什么时候STA与OR位为0,什么时候为1?
问题补充:
OR位理解了。
A I 0.1//如果I 0.1为1,则STA为1,否则为0.。
假如是 AN I0.1呢?或者是O I0.1呢?
佳答案
1、或位(OR):
状态字的位3称为或位(OR)。在先逻辑“与”后逻辑“或”的逻辑串中,OR位暂存逻辑“与”的操作结果,以便进行后面的逻辑“或”运算。其它指令将OR位清0。
这比较好理解,例:
在用指令OR执行或逻辑操作之前,执行与逻辑操作的时候,就需要用到OR这一状态位。OR位表示先前执行的与逻辑操作产生的值为“1”,于是,逻辑操作或的执行结果就已被确定为“1”。
A I 0.0
A I 0.1//如果“与”的结果为1,后面有逻辑“或”则OR为1,否则为0.
O I 0.2//
=Q 0.0
2、状态位(STA):
状态字的位2称为状态位。状态位不能用指令检测,它只是在程序测试中被CPU解释并使用。如果一条指令是对存储区操作的位逻辑指令,则无论是对该位的读或写操作,STA总是与该位的值取得一致;对不访问存储区的位逻辑指令来说,STA位没有意义,此时它总被置为1。
这比较好理解,例:
用以保存被寻址位的值。状态位总是向扫描指令(A,AN,O,…)或写指令(=,S,R,)显示寻址位的状态(对于写指令,保存的寻址位状态是本条写指令执行后的该寻址位的状态)。
A I 0.1//如果I 0.1为1,则STA为1,否则为0.。