[发明专利]一种DATA型数据长度计算方法和装置有效
申请号: | 201711387383.2 | 申请日: | 2017-12-20 |
公开(公告)号: | CN108268599B | 公开(公告)日: | 2021-12-17 |
发明(设计)人: | 邓政策 | 申请(专利权)人: | 南昌市科陆智能电网科技有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/21 |
代理公司: | 广州嘉权专利商标事务所有限公司 44205 | 代理人: | 唐致明 |
地址: | 330000 江西省南昌市高新技术产*** | 国省代码: | 江西;36 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 data 数据 长度 计算方法 装置 | ||
本发明公开了一种DATA型数据长度计算方法和装置,该方法包括:A、判断数据类型是否属于构造基本型,是则获取成员的个数,不是则执行D;B、判断成员个数是否为零,是执行步骤E;C、判断用于存储特定生成树的中间节点的栈是否满栈,不满则将成员个数入栈并执行步骤A;D、非构造基本型数据长度计算并累加;E、判断当前栈是否空栈,是则应答数据长度;F、判断栈顶数据,若大于1则执行步骤H;G、执行出站操作并执行步骤E;H、当前栈顶数据减1并执行步骤A。该装置用于执行对应方法。本发明基于DL‑T698协议的DATA数据的定义,通过合理的步骤进行数据长度的计算,能够提供数据处理的速度和效率。
技术领域
本发明涉及通信数据处理技术领域,尤其涉及一种DATA型数据长度计算方法和装置。
背景技术
在DL/T698协议的数据帧解析过程中,经常需要对传输数据中的各个组成单元进行定位。如数据帧中“时间标签”的定位,设置数据帧SetRequestNormalList中各个设置对象OAD的定位,操作数据帧ActionRequestList中各个操作对象OMD的定位等。因此快速、准确的识别数据帧中各组成部分的长度,成为正确解析数据帧的关键问题。
目前,在DL/T698数据帧的解析中,一般采用对象绑定识别方法,即根据对象OAD或OMD的类型来识别其后跟随的“Data”型数据的长度。如,“通信地址”对象,则默认其后跟随的“Data”型数据为8字节的字符串。
采用对象绑定识别方法,在数据帧符合DL/T698协议及其功能规范时,能正确进行数据解析。但,当数据帧为符合协议的异常帧时,则容易解析错误。如电量OAD跟随一个1字节Char型“Data”数据时,若仍把“Data”解析成4字节的电量数据,则会导致数据帧解析错误,影响电量OAD其后的数据解析。尤其是当“Data”为多层嵌套的Structure类型时,其长度更加难以确认,非常容易造成数据帧解析错误。
采用对象绑定识别方法时,数据帧的解析需要逐层进行。当一帧数据中存在多个对象时,只有上一个对象及其数据正确解析后,才能正确解析下一个对象。程序无法对数据进行灵活处理,增加了程序设计的复杂度和数据处理时间。
发明内容
为了解决上述问题,本发明提供一种DATA型数据长度计算方法和装置。
本发明采用的技术方案一方面为一种DATA型数据长度计算方法,适用于DL-T698协议的DATA型数据,包括步骤:A、判断数据类型是否属于构造基本型,是则获取成员的个数,不是则执行D;B、判断成员个数是否为零,是执行步骤E;C、判断用于存储特定生成树的中间节点的栈是否满栈,不满则将成员个数入栈并执行步骤A;D、非构造基本型数据长度计算并累加;E、判断当前栈是否空栈,是则应答数据长度;F、判断栈顶数据,若大于1则执行步骤H;G、执行出站操作并执行步骤E;H、当前栈顶数据减1并执行步骤A。
优选地,所述构造基本型包括array和structure。
优选地,基于树结构对DATA数据的编码进行特定生成树的建模,编码的数据类型为树的节点,其中,当数据类型是构造基本型时,成员为孩子节点,成员个数为节点的度;当数据类型不是构造基本型时,则数据类型所跟随的数据值域为叶节点。
本发明采用的技术方案另一方面为一种DATA型数据长度计算装置,适用于上述方法,包括处理器,用于执行步骤:A、判断数据类型是否属于构造基本型,是则获取成员的个数,不是则执行D;B、判断成员个数是否为零,是执行步骤E;C、判断用于存储特定生成树的中间节点的栈是否满栈,不满则将成员个数入栈并执行步骤A;D、非构造基本型数据长度计算并累加;E、判断当前栈是否空栈,是则应答数据长度;F、判断栈顶数据,若大于1则执行步骤H;G、执行出站操作并执行步骤E;H、当前栈顶数据减1并执行步骤A。
优选地,所述构造基本型包括array和structure。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南昌市科陆智能电网科技有限公司,未经南昌市科陆智能电网科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711387383.2/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置