- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
www.PLC
西门子西门子S7300S7300 CPUCPU 寄存器状态字的用法分析寄存器状态字的用法分析
西门子西门子S7300S7300 CPUCPU 寄存器状态字的用法分析寄存器状态字的用法分析
1.引言
CPU 寄存器状态字的各位给出了有关指令状态或结果的信息以及所出现的错误,我们可以将二进制逻辑操作状态位信号状态直接集成到
程序中,以控制程序执行的流程。
2.状态字寄存器
先简单介绍一下CPU 中状态字。
● 首次检查位:状态字的0 位称作首次检查位,如果/FC 位的信号状态为“0”,则表示伴随着下一条逻辑指令,程序中将开始一个新的逻
辑串。FC 前面的斜杠表示对FC 取反。
● 逻辑运算结果:状态字的第 1 位为RLO 位(RLO= “逻辑运算结果” ),在二进制逻辑运算中用作暂时存储位。比如,一串逻辑指令中
的某个指令检查触点的信号状态,并根据布尔逻辑运算规则将检查的结果(状态位)与RLO 位进行逻辑门运算,然后逻辑运算结果又存
在RLO 位中。
● 状态位:状态位(第2 位)用以保存被寻址位的值。状态位总是向扫描指令(A,AN,O,… )或写指令(=,S,R,)显示寻址位的状态(对
于写指令,保存的寻址位状态是本条写指令执行后的该寻址位的状态)。
● OR 位:在用指令OR 执行或逻辑操作之前,执行与逻辑操作的时候,就需要用到OR 这一状态位。OR 位表示先前执行的与逻辑操作
产生的值为“1”,于是,逻辑操作或的执行结果就已被确定为“1” 。
● OV 位:溢出表示算术或比较指令执行时出现了错误。根据所执行的算术或逻辑指令结果对该位进行设置。
● OS 位:溢出存储位是与OV 位一起被置位的,而且在更新算术指令之后,它能够保持这种状态,也就是说,它的状态不会由于下一个
算术指令的结果而改变。 这样,即使是在程序的后面部分,也还有机会判断数字区域是否溢出或者指令是否含有无效实数。OS 位只有
通过如下这些命令进行复位:JOS (若OS = 1,则跳转)命令,块调用和块结束命令。
● CC1 及CC0 位:CC1 和CC0 (条件代码)位给出有关下列结果的相关信息:
#8226; 算术指令结果
#8226; 比较指令结果
www.PLC
#8226; 字逻辑指令
#8226; 在移位功能中,移出位相关信息。
可以用以下指令来检查条件代码CC1 和CC0 。
CC1 CC0 检查完成后,如果:
0 0 A == 0 结果 =0
1 0 A 0 结果 0
0 1 A 0 结果 0
● BR 位:状态字的第8 位称为二进制结果位。它将字处理程序与位处理联系起来,在一段既有位操
作又有字操作的程序中,用于表示字逻辑是否正确。将 BR 位加入程序后,无论字操作结果如何,都不会造成二进制逻辑链中断。在梯
形图的方块指令中,BR 位与ENO 位有对应关系,用于表明方块指令是否被正确执行:如果执行出现了错误,BR 位为0,ENO 位也为
0;如果功能被正确执行,BR 位为1,
文档评论(0)