存储区间接寻址求助

已锁定

leafbailili

  • 帖子

    137
  • 精华

    0
  • 被关注

    5

论坛等级:游侠

注册时间:2010-01-19

普通 普通 如何晋级?

存储区间接寻址求助

460

2

2016-02-27 09:36:06

各位专家好

     我是一个才来的菜鸟,正在学习STEP7,以下实例程序中,MW100 从哪里看出 减去1了呢?

以前学习宏程序的时候,有MW100=MW100-1 ,可是在这个程序里面,看不出减去1呢?

     是不是 LOOP循环,就代表了要给 累加器中的当前值减去1呢?

/M存储器连续区域操作

L     0                 //初始化MW100和MD4。

T    MW   100 

T    MD    4 

OPN  DB     1          //打开DB1。

L  100              //循环操作的次数,100次。

NEXT: T    MW   100  //将循环100次装载到MW100中,固定格式。                

L     MW  2    //进行比较的数值存储于MW2。

L  DBW  [MD 4]   //与DB块中存储的值进行比较,开始地址为DBW0。

==I                  //如果数值相等跳到m1。

JCm1 

L     MD    4          //将地址指针加2(每个相邻的字地址相差2)。

L     P#2.0 

+D 

T    MD    4 

L     MW   100      //次数减1,跳回next,如果MW100等于0,跳

LOOP  NEXT //出循环操作LOOP指令,LOOP指令固定格式。

m1:   FP  M  10.0   //如果数值相当,记录MD4指针的数据,将转换为数组             

JCN    m2                //的位置((地址值/P#2.0)+1)值存储于MD8中。

L     MD    4 

L     P#2.0 

/D 

+ L#1 

T    MD    8 

m2:   NOP  0 


存储区间接寻址求助 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54710条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。