找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
问题
取消精华
首页精华问答
取消推荐
高端用户推荐
申请置评
已申请置评
修改
修改标签
添加标签
官方认证
取消官方认证
修改标签
添加标签
转移分类
删除
{{itemCategory}}
STL Explanation
L L#1 //Load the integer constant (32 bit) into ACCU 1.
T MD20 //Transfer the contents from ACCU 1 into MD20 (initialization).
L 5 //Load number of loop cycles into ACCU 1-L.
NEXT: T MW10 //Jump label = loop start / transfer ACCU 1-L to loop counter.
L MD20
* D //Multiply current contents of MD20 by the current contents of MB10.
T MD20 //Transfer the multiplication result to MD20.
L MW10 //Load contents of loop counter into ACCU 1.
LOOP NEXT //Decrement the contents of ACCU 1 and jump to the NEXT jump label if ACCU 1-L > 0.
L MW24 //Program scan resumes here after loop is finished.
L 200
>I
我怎么都不明白Acc1的数值什么时候能=<0.在我看来这个例子中的MW10永远等于5,我错在那里了?请高手们指点,谢谢!
收藏({{answerDetail.Q_FavoriteCounts}})
手机扫码追踪该问题,
觉得实用,立即去分享!
点击复制链接
专家建议
取消最佳答案
修改
L L#1 32位整数常数装入累加器1,置阶乘初值,此时ACC2的内容是0
T MD20 把累加器1的内容传送到MW20
L 5 把循环次数转入ACCU 1-L,此时ACC2的内容是1
NEXT: T MW10
L MD20
* D
T MD20
L MW10
LOOP NEXT
... ... ... ...
这是用循环指令求5的阶乘的程序。
LZ忽视了循环指令中,每次执行 LOOP 指令时 ACCU1-L 的值会自动减一。
另外,执行 L 指令时,原累加器1的内容会传送到累加器 2 中,累加器1装入新内容。
等您来回答
换一换
{{item.CoinValue}}西币
{{item.VisitNum}}人想问
本版相关问题
换一换
专家置评
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!

西门子商城