回复:有一个信息校验的程序没有看明白,有没有大神帮忙分析一下的,谢谢

已锁定

kenshinguo

  • 帖子

    719
  • 精华

    3
  • 被关注

    14

论坛等级:侠圣

注册时间:2004-03-16

普通 普通 如何晋级?

发布于 2021-09-24 16:27:42

2楼

 OPN   #DB_Mode_43      //打开DB74

 CDB                                 //DB74作为背景数据块DI74打开

 L   DW#16#85000000     //16#85代表DI,背景数据块的访问

LAR2                                 //ar2作为访问DI74的地址寄存器

 L     P##First_Sign           //p#db91.dbb430, 指针含6个字节信息,byte0-1代表DBNo=91,byte2代表数据区域类型16#84, byte3-5代表p#430.0

 LAR1

 L     0

L W [ AR1 , P#0.0 ]          //byte0-1,91

 ==I

JZ    M002

T     #TEMP10                  //temp10=91

 OPN DB [ #TEMP10]      //打开db91

M002: NOP 0

      L D [ AR1 , P#2.0 ]      //byte2-byte5, p#84代表指向DB块,本例中DB为91,byte3-5代表P#430.0

      LAR1                          //AR1存储待检验字符组的首地址

      L     #Length

      L     1

      <I

      =     #Error

      JC    M001

      TAK

M003: T     #TEMP11          //长度11,每循环减1,直到0

      L B [ AR1 , P#0.0 ]        //当前待检验字符

      T     #TEMP14

      L     DW#16#85000000

      LAR2

      L     43                          //43次循环,查找di74里面是否有匹配的字符

M004: T     #TEMP12

      L     #TEMP14              //当前待检验字符

      L B [ AR2 , P#0.0 ]        //di74里面的字符

      ==I

      JC    M005

      +AR2  P#1.0

      L     #TEMP12

      LOOP  M004

      SET

      =     #Error

      JU    M001

M005: TAR2                      //如果匹配,ar2是di74里面匹配字符的指针

      L     DW#16#FFFFFF   //16#00ffffff, 需要抹掉最高位的16#85

      AD

      SRD   3                        //指针右移3位,是该字符在DB块的绝对位置

      L     #TEMP13              //累加位置信息

      +D

      T     #TEMP13

      +AR1  P#1.0

      L     #TEMP11

      LOOP  M003


 L     #TEMP13                    //累加数值,你列举的例子里面累加值为150

      L     43

      MOD

      SLD   3                          //余数为21,转换成指针p#21.0

      L     DW#16#85000000 //通过16#85来指向DI,本例子中打开的背景数据块是74

      OD

      LAR2

      L B [ AR2 , P#0.0 ]          //db74.dbb21是‘L’

      T     #Checksum


精华帖版主置评:谢谢有心人

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10698条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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