签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1787105&b_id=50&s_id=0&num=9
实在是语焉不详,看不懂你的问题
用周期中断,分步计算,把扫描周期降下来
这类问题,最好画个示意图贴出来。
否则,谁也不知道你在问什么?
题目是个好题目,可惜表达欠缺。
建立1个二维数组,[原数据位置,与目标值差值绝对值],然后利用冒泡法,第一次查找出来后剔除该值,依次进行第二次冒泡、第三次、第四次,看看能否减少扫描时间
循环用mod写,变量用静态的,可以降低扫描周期
从20个数据里用1到4个数据组合,找出最接近目标值的组合,没有给定一个合格范围带,只说“最接近“。
这个比多头秤组合可能性更多吧?从1-4个组合遍历,和目标值求偏差绝对值,取偏差值最小。
如果计算流程上不好优化,一次计算的消耗时间可以看成一定的,一个周期内要将计算完成,这个周期的耗时就长,如果把计算分摊到多个扫描周期计算,各扫描周期就会短一些。
这类题一般都需要用到穷举法,如果数组固定还好办可以提前计算出1-4个数据的和值然后做从小到大或者从大到小的排序保存并标记源数据,比如185(1,1,3,18) 186(2,15),后面的就很简单了直接用目标值做比较提取数据。另外遇到这样的计算最好还是通过上位机什么的来做比较好,然后直接把结果传输给PLC比较靠谱,168420个值的计算然后和目标值做比较,还有中间的数据传输。。。
就是比较嘛,mov和比较指令配合做。
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录