一种基于异或运算实现的状态控制、查询方法及装置与流程

文档序号:37459228发布日期:2024-03-28 18:42阅读:11来源:国知局
一种基于异或运算实现的状态控制、查询方法及装置与流程

本发明涉及物联网,特别是涉及一种基于异或运算实现的状态控制、查询方法及装置。


背景技术:

1、物联网(internet of things,简称iot)是指通过各种信息传感器、射频识别技术、全球定位系统、红外感应器、激光扫描器等各种装置与技术,实时采集任何需要监控、连接、互动的物体或过程,采集其声、光、热、电、力学、化学、生物、位置等各种需要的信息,通过各类可能的网络接入,实现物与物、物与人的泛在连接,实现对物品和过程的智能化感知、识别和管理。物联网是一个基于互联网、传统电信网等的信息承载体,它让所有能够被独立寻址的普通物理对象形成互联互通的网络;

2、本发明给出了一种基于异或运算实现状态控制的方法。在某些业务场景中,一个设备、一种订单,或一种记录需要同时记录多种类别的状态,同时还要求不同类别状态的值不能相互影响,而且方便搜索,不影响对某种状态的记录的查询效率。例如:一个设备的故障状态类别分为火警、电量不足、传感器故障、温度报警、指示灯故障等,设备可以同时处于电量不足和温度报警两种状态,而当温度报警解除时,仅温度报警该状态的值会恢复正常,电量不足的状态值不发生变化。

3、常规的解决办法为,将这几种状态类别分别定义属性字段来标识,每次增加状态类别,需要增加新的属性字段来标识,当状态类别增多时,标识状态类别的属性字段会跟着变多,无法做到动态扩展。


技术实现思路

1、本发明目的是针对背景技术中存在的问题,提出一种基于异或运算实现的状态控制方法,本发明利用一个属性字段就可以标识多种不同类别的状态,无需增加额外的属性字段进行标识,同时还可以做到不同类别状态值发生改变时,相互之间不影响,此外还兼顾多种条件查询。

2、本发明的技术方案,一种基于异或运算实现的状态控制方法,包括以下具体步骤:

3、s1、定义不同的状态为2n;n>=1,每增加一种状态,则n递增加1。

4、s2、状态发生变化时,则状态值发生改变,其步骤如下:

5、s21、提供属性字段status用于存储设备状态;

6、s22、设备某种类别的状态发生变化,查询找到该类别状态定义的值为2n;

7、s23、设备当前的状态值status与发生变化的状态的值2n进行或操作,计算结果作为设备新的状态值,公式如下:status=status|2n;

8、s3、状态恢复时,则状态值发生改变,其步骤如下:

9、s31、设备某种状态恢复,查询找到该类别状态定义的值为2n;

10、s32、设备当前的状态值status与发生变化的状态的值2n进行异或操作,计算结果作为设备新的状态值,公式如下:status=status^2n。

11、一种基于异或运算实现的状态查询方法,包括以下步骤:

12、查询设备状态是某种类别的状态的设备,计算待查询类别状态定义的值为2n;

13、将设备当前的状态值status与待查询类别状态的值2n进行与操作,计算结果如果大于0的设备即为符合条件的设备,查询条件公式如下:status&2n>0。

14、一种基于异或运算实现的状态查询方法,包括以下步骤:

15、查询设备状态同时是某几种类别的状态的设备,计算待查询类别状态的值为2n及2m;

16、将设备当前的状态值status与待查询的多个类别的状态值2n及2m进行与操作,计算结果均大于0的设备即为符合条件的设备,查询条件公式如下:status&2n>0且status&2m>0。

17、一种基于异或运算实现的状态控制装置,处理如权利要求上述的步骤,包括交互模块、计算模块、查询模块、存储模块和数据采集模块;

18、交互模块用于将设备的不同的状态定义为2n;

19、数据采集模块用于采集设备运行的不同的状态信息;

20、存储模块用于对属性字段status进行存储;

21、计算模块用于对设备当前的状态值status与发生变化的状态的值2n进行计算并赋值;

22、查询模块用于查询不同状态定义的值2n。

23、一种基于异或运算实现的状态查询装置,处理上述的步骤,包括计算模块、查询模块、存储模块和数据采集模块;

24、查询模块用于查询设备状态同时是某几种类别的状态的设备;

25、数据采集模块用于采集设备运行的不同的状态信息;

26、存储模块用于对属性字段status进行存储;

27、计算模块用于将设备当前的状态值status与待查询的多个类别的状态值进行计算并赋值。

28、与现有技术相比,本发明具有如下有益的技术效果:

29、1、动态扩展,不用随状态增加而增加额外的属性字段来记录新增加的状态。

30、2、节约空间,用一个属性字段就可以代表多个状态。

31、3、复杂度低,多种类型状态的值发生改变或恢复默认值时,只需修改一个属性字段即可。

32、4、性能好,当对多种类型状态进行联合查询时,只需要对一个属性值比对查询即可。



技术特征:

1.一种基于异或运算实现的状态控制方法,其特征在于,包括以下具体步骤:

2.根据权利要求1所述的一种基于异或运算实现的状态控制方法,其特征在于,s1中n>=1,每增加一种状态,则n递增加1。

3.一种基于异或运算实现的状态查询方法,其特征在于,包括以下步骤:

4.一种基于异或运算实现的状态查询方法,其特征在于,包括以下步骤:

5.一种基于异或运算实现的状态控制装置,处理如权利要求1-2任一项所述的步骤,其特征在于,包括交互模块、计算模块、查询模块、存储模块和数据采集模块;

6.一种基于异或运算实现的状态查询装置,处理如权利要求3或4所述的步骤,其特征在于,包括计算模块、查询模块、存储模块和数据采集模块;


技术总结
本发明涉及物联网技术领域,特别是涉及一种基于异或运算实现的状态控制方法,包括以下具体步骤:定义不同的状态为2<supgt;n</supgt;;提供属性字段status用于存储设备状态;设备某种类别的状态发生变化,查询找到该类别状态定义的值为2<supgt;n</supgt;;设备当前的状态值status与发生变化的状态的值2<supgt;n</supgt;进行或操作,计算结果作为设备新的状态值,status=status|2<supgt;n</supgt;;设备某种状态恢复,查询找到该类别状态定义的值为2<supgt;n</supgt;;设备当前的状态值status与发生变化的状态的值2<supgt;n</supgt;进行异或操作,计算结果作为设备新的状态值,status=status^2<supgt;n</supgt;。本发明利用一个属性字段就可以标识多种不同类别的状态,无需增加额外的属性字段进行标识,同时还可以做到不同类别状态值发生改变时,相互之间不影响,此外还兼顾多种条件查询。

技术研发人员:杨帆,杨名
受保护的技术使用者:小视科技(江苏)股份有限公司
技术研发日:
技术公布日:2024/3/27
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1