返回工控网首页
|
| 添加到收藏夹
中国自动化学会专家咨询工作委员会指定宣传媒体
免费注册
广告服务
|
客服中心
您现在所在的是:
PLC论坛
工控论坛首页
→
PLC论坛
→ 浏览主题:
急求:PLC编程,求一个实数32位内存数中1的个数!
回帖:
12
个,阅读:
2055
次
[上一页]
[1]
[2]
[下一页]
* 帖子主题:
急求:PLC编程,求一个实数32位内存数中1的个数!
收藏
分享到
匿名用户
文章数:
N/A
年度积分:
0
历史总积分:
0
作者的所有帖子
注册时间:
2012/7/23
发站内信
发表于:2013/12/23 21:55:23
#10楼
该用户被锁定,回复内容不予显示!
【方案】
FLIR红外热像仪协助确保南非钢铁生产持续运行
只看该作者
|
赞
[0]
|
踩
[0]
|
引用
|
回复
|
编辑
|
推荐
|
举报
|
管理
5084
zytlc
文章数:
849
年度积分:
50
历史总积分:
5084
作者的所有帖子(849)
注册时间:
2006/8/9
发站内信
发表于:2013/12/24 4:18:22
#11楼
你是说10进制的1啊,那就按w71412659的方法,32位浮点数只有7位有效数字
【方案】
DELTA VFD-V series变频器应用于一般钻孔机使用P2P定位功能
只看该作者
|
赞
[0]
|
踩
[0]
|
引用
|
回复
|
编辑
|
推荐
|
举报
|
管理
7722
产品体验中心会员
w71412659
文章数:
1455
年度积分:
50
历史总积分:
7722
作者的所有帖子(1455)
注册时间:
2013/5/8
发站内信
2018论坛魅力之星
发表于:2013/12/24 8:11:58
#12楼
回复 #8楼 362585177
那你就要看看PLC手册里面循环是怎么写的了。不同的PLC指令不一样(例如S7-200是FOR -NEXT),做法也不一样。但是你可以这样:
设要计算的数为:
1010……1010,那就初始化X=1010……1010,Y=0000……0001;
下一步,判断X>Y时,开始执行:
(第一个扫描周期Y=0000……0001)X&Y=Z,如果Z>0,B自增1,Y左移一位(第一个扫描周期末为0000……0010);
程序段完;
等程序运行到B的值不再增加的时候就是你要的值。
这样就不是一个扫描周期了,不过跳过了循环语句的调用,也就是说我把整个程序看成一个循环来用
兽人永不为奴,除非包吃包住!
【方案】
加工机 | 春节机台维护保养注意事项
只看该作者
|
赞
[0]
|
踩
[0]
|
引用
|
回复
|
编辑
|
推荐
|
举报
|
管理
工控学堂推荐视频:
PLC学习视频
变频器学习视频
西门子学习视频
三菱学习视频
更多学习视频>>
•
[视频课程]一个小时教你学会升降输送系统编程方法
•
[视频课程]零基础快速入门西门子S7-1500PLC
•
[视频课程]西门子S7-200SMART如何快速找回原点
•
[视频课程]三菱PLC程序进制转化你懂了吗
•
[视频课程]台达DVP系列入门精讲
•
[视频课程]七节课带你全面认识西门子S7-1200
•
[视频课程]西门子S7-1500TCPU应用
•
[视频课程]西门子S7-1200与欧姆龙温控仪表的自由口通信
•
[视频课程]西门子S7-200SMART带参数子程序使用详解
62.4004