|
|
|
发表人:a_tie |
发表时间:2003/11/10 12:08:00 |
|
|
本栏论题: |
对《几种置位、复位的方法和比较》的一点质疑 [9989] |
本文缺少一个非常重要的方法,就是“字与”指令和“字或”指令,
他们不但能够实现文章所说的字节、字、双字的置位、复位。而且能够单独对位置位、复位。
原文如下:
几种置位、复位的方法和比较
中国工控网站chinakong.com
位置位、复位操作方法上,有好几种方法,可以直接采用置位、复位指令,也可以采用数据传送指令、表格填充指令,甚至可以采用移位循环指令。
这几种方法在具体运用时,也要根据情况而定。下面用一个范例来讲解他们的不同之处。要求对Q0.0~0.7、Q1.0~1.7十六位输出进行置位、复位。

图 几种置位、复位的方法
在以上几种方法中,除移位循环指令外,其他指令比较好理解。
移位循环指令的方法,置位是对16#FFFF十六位常数左循环16位,送入输出字QW0(由Q0.0~0.7、Q1.0~1.7组成),无论16#FFFF如何循环,还是16#FFFF,16位输出。复位采用对QW0一次扫描周期一次执行16位左移位指令,将QW0中的数据全部移出(如果是带符号位的字,连符号位也移出),输出复位。
在上面的方法中,直接采用置位、复位的方法不仅可以对字节、字、双字中的位进行置位、复位操作,也可以对不成字节、字、双字的位进行操作。而数据传送指令、移位循环指令、填充指令只能对字节、字、双字中的位进行置位、复位操作,其中填充指令还只能对字操作。
比如单单对Q0.0~0.6七个位输出进行置位、复位,采用数据传送指令、移位循环指令、填充指令是很难实现的,此时只有采用直接置位、复位指令的方法。
|
|
以下是关于《对《几种置位、复位的方法和比较》的一点质疑》论题的回复(共15篇) |
回复:多长时间的事啦,我以为都忘记了
多长时间的事啦,我以为都忘记了。这篇文章我刚一看就感觉有问题。还在这里,而且还在网上到处流放。
道理应该很简单吧。
字与能够实现对一个位、或几个位复位
字或能够实现对一个位、或几个位置位
|
|
回复:TO:a_tie,能用一个最简单的例子说明一下"字与/字或"吗
TO:a_tie,能用一个最简单的例子说明一下"字与/字或"吗.
期盼中!
|
|
回复:TO:a_tie,能用一个最简单的例子说明一下
“与”和“或”不会不懂吧。那个学校毕业的,不知道你老师不行,还是你不行
|
|
回复:在思考,说不定还有更多的方法!
在思考,说不定还有更多的方法!
|
|
回复:真是越讨论,越明朗呀!
真是越讨论,越明朗呀!
不说还真不知道呀。太好了!
|
|
|