- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
STL状态字的使用
STL状态字问题悬赏分:5 - 解决时间:2009-2-9?11:47最近在学习STL语言,每个指令都有个状态字,BR,CC1,CC0,OV,OS,OR,STA,RLO,/FC,这些状态位都代表什么含意?怎么个用法呢?希望各位老师指点一下,越详细越好!问题ID: 31231提问者:工控123 - 毕业实践员??第4级?最佳答案●首次检查位:状态字的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(条件代码)位给出有关下列结果的相关信息:???算术指令结果???比较指令结果???字逻辑指令??在移位功能中,移出位相关信息。?可以用以下指令来检查条件代码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,?ENO位也为1。在用户编写的FB/FC程序中,应该对BR位进行管理,功能块正确执行后,使BR位为1,否则使其为0。使用SAVE指令将RLO存入BR中,从而达到管理BR位目的。状态字的9-15位未使用。回答者:yhk - 初级工程师??第9级? 2009-2-5?11:45提问者对于答案的评价:很详细,非常感谢!30天内的投票结果:好50% (0)???不好 50% (0)?其他回答楼上的?已经详细的解释了?状态字的意义??他说的很对?我想说的是??你对状态字的认识有一定的误区?不是“每个指令都有状态字”状态字?和地址寄存器等一样,是CPU?里面的一个区域?大小是16位?就是一个字?;我们给这个区域取名位状态字?,各个位的意思如楼上所说;而?指令的执行结果?受到状态字的影响,并且指令也会影响到状态字,即修改状态字;回答者:sqzth - 中级技术员??第6级 ?2009-2-5?12:02好多指令执行完后的状态字,你可以不用理会的,要的时候才去捡回来回答者:Youder - 毕业实践员??第4级 ?2009-2-5?12:09要想得到非手册解释,就到300论坛里有哪些信誉好的足球投注网站,300论坛里有更好的解释,讨论的次数更多。回答者:LaoHuai - 高级工程师??第11级 ?2009-2-5?13:09看起来是很简单!但应用起来就麻烦了!回答者:轻轻飞 - 顶级工程师??第12级 ?2009-2-5?13:25状态字的编程较复杂,感觉常用的是RLO与BR位的操作回答者:实在 - 高级技术员??第7级 ?2009-2-5?13:57学习了。回答者:yanjiuximenzi - 初级技术员??第5级 ?2009-2-5?21:11Step?7里就有帮助,非常清楚SIEMENS?STEP7?编程状态字的作用定义状态字用于表示CPU执行指令时所具有的状态。一些指令是否执行或以何方式执行可能取决于状态字中的某些位;执行指令时也可能改变状态字中的某些位,也能在位逻辑指令或字逻辑指令中访问并检测他们。状态字的结
文档评论(0)