CN114047885A - 多类型数据的写入方法、装置、设备及介质 - Google Patents

多类型数据的写入方法、装置、设备及介质 Download PDF

Info

Publication number
CN114047885A
CN114047885A CN202111431546.9A CN202111431546A CN114047885A CN 114047885 A CN114047885 A CN 114047885A CN 202111431546 A CN202111431546 A CN 202111431546A CN 114047885 A CN114047885 A CN 114047885A
Authority
CN
China
Prior art keywords
data
variable
type
target data
storage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111431546.9A
Other languages
English (en)
Other versions
CN114047885B (zh
Inventor
徐龙增
陈娜娜
李富民
马彦
李树伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weichai Power Co Ltd
Weifang Weichai Power Technology Co Ltd
Original Assignee
Weichai Power Co Ltd
Weifang Weichai Power Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Weichai Power Co Ltd, Weifang Weichai Power Technology Co Ltd filed Critical Weichai Power Co Ltd
Priority to CN202111431546.9A priority Critical patent/CN114047885B/zh
Publication of CN114047885A publication Critical patent/CN114047885A/zh
Application granted granted Critical
Publication of CN114047885B publication Critical patent/CN114047885B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1041Resource optimization
    • G06F2212/1044Space efficiency improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1056Simplification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种多类型数据的写入方法、装置、设备及介质。包括:根据各第一存储变量指定的数据类型,确定第一目标数据的数据类型;各第一存储变量的数据类型为多种;创建各第一存储变量对应的联合体变量;每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,第一数组变量的预定字节用于存储第一目标数据的数据特征,第二数组变量中除预定字节的映射字节以外的其它字节用于存储第一目标数据;第二类型为第一存储变量的数据类型;将各第一存储变量对应的联合体变量存储至存储空间,以完成对第一目标数据的写入。本申请的方法,实现了多类型数据的写入,提高数据计算效率,节省存储空间。

Description

多类型数据的写入方法、装置、设备及介质
技术领域
本申请涉及计算机网络技术,尤其涉及一种多类型数据的写入方法、装置、设备及介质。
背景技术
在计算机网络技术中,程序员通过编译不同的功能模块实现不同的技术效果。其中针对一些变量进行数据存储,来满足功能模块的通用性。
目前针对数据变量存储按照数据类型的不同分别进行写入。通过创建中间数组,将待存储变量的数据特征信息进行大量计算赋值处理,占用大量的存储空间,最后将数据内容一起存储到中间数组中,然后对中间数组进行存储,来完成数据的写处理。
对此,如何简化计算来完成数据的处理是需要解决的问题。
发明内容
本申请提供一种多类型数据的写入方法、装置、设备及介质,用以解决不同数据类型数据写入时计算繁琐的问题。
第一方面,本申请提供一种多类型数据的写入方法,包括:
根据各第一存储变量指定的数据类型,确定所述各第一存储变量中第一目标数据的数据类型;其中,所述各第一存储变量的数据类型为多种;
创建所述各第一存储变量对应的联合体变量;其中,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,所述联合体变量的第一数组变量的预定字节用于存储所述第一存储变量中第一目标数据的数据特征,所述联合体变量的第二数组变量中,除所述预定字节的映射字节以外的其它字节用于存储所述第一存储变量中的第一目标数据;其中,所述第二类型为所述第一存储变量的数据类型;
将所述各第一存储变量对应的联合体变量存储至存储空间,以完成对所述第一目标数据的写入。
在一种可能的设计中,所述创建所述各第一存储变量对应的联合体变量,包括:
针对每个第一存储变量中的第一目标数据,采用预定算法,生成所述第一目标数据的初始数据特征,所述第一目标数据的初始数据特征的数据类型为第三类型;
将所述第一目标数据的初始数据特征进行数据转换,获得所述第一目标数据的数据特征,所述第一目标数据的数据类型为所述第一类型;
将所述第一目标数据的数据特征,赋值给所述第一存储变量对应的联合体变量的第一数组变量中的所述预定字节。
在一种可能的设计中,所述方法还包括:
从存储空间获取存储的各联合体变量,其中,所述各联合体变量的第二数组变量的类型为多种;
基于所述各联合体变量的第一数组变量中的预定字节,获得所述各联合体变量的第二数组变量中第二目标数据的数据特征;其中,所述第二目标数据的数据特征的数据类型为所述第一类型;
基于所述各联合体变量中第二目标数据的数据特征,对所述第二目标数据进行校验,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,以完成对所述第二目标数据的读处理。
在一种可能的设计中,所述基于所述各联合体变量中第二目标数据的数据特征,对所述第二目标数据进行校验,包括:
针对每个联合体变量中的第二目标数据,采用预定算法,生成所述第二目标数据的实际数据特征,所述第二目标数据的实际数据特征的数据类型为第三类型;
将所述第二目标数据的数据特征进行数据转换,获得所述第二目标数据的转换后的数据特征,该转换后的数据特征的数据类型为所述第三类型;
基于所述第二目标数据的实际数据特征和所述第二目标数据的转换后的数据特征,对所述联合体变量中的所述第二目标数据进行数据校验。
在一种可能的设计中,所述每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
第二方面,本申请提供一种多类型数据的写入装置,包括:
获取模块,用于根据各第一存储变量指定的数据类型,确定所述各第一存储变量中第一目标数据的数据类型;其中,所述各第一存储变量的数据类型为多种;
处理模块,用于创建所述各第一存储变量对应的联合体变量;其中,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,所述联合体变量的第一数组变量的预定字节用于存储所述第一存储变量中第一目标数据的数据特征,所述联合体变量的第二数组变量中,除所述预定字节的映射字节以外的其它字节用于存储所述第一存储变量中的第一目标数据;其中,所述第二类型为所述第一存储变量的数据类型;
所述处理模块,还用于将所述各第一存储变量对应的联合体变量存储至存储空间,以完成对所述第一目标数据的写入。
在一种可能的设计中,所述多类型数据的写入装置还包括:
所述处理模块,具体用于针对每个第一存储变量中的第一目标数据,采用预定算法,生成所述第一目标数据的初始数据特征,所述第一目标数据的初始数据特征的数据类型为第三类型;
所述处理模块,还具体用于将所述第一目标数据的初始数据特征进行数据转换,获得所述第一目标数据的数据特征,所述第一目标数据的数据特征的类型为所述第一类型;
所述处理模块,还具体用于将所述第一目标数据的数据特征,赋值给所述第一存储变量对应的联合体变量的第一数组变量中的所述预定字节。
在一种可能的设计中,所述多类型数据的写入装置还包括:
所述获取模块,还用于从存储空间获取存储的各联合体变量,其中,所述各联合体变量的第二数组变量的类型为多种;
所述处理模块,还用于基于所述各联合体变量的第一数组变量中的预定字节,获得所述各联合体变量的第二数组变量中第二目标数据的数据特征;其中,所述第二目标数据的数据特征的数据类型为所述第一类型;
所述处理模块,还用于基于所述各联合体变量中第二目标数据的数据特征,对所述第二目标数据进行校验,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,以完成对所述第二目标数据的读处理。
在一种可能的设计中,所述多类型数据的写入装置还包括:
所述处理模块,具体用于针对每个联合体变量中的第二目标数据,采用预定算法,生成所述第二目标数据的实际数据特征,所述第二目标数据的实际数据特征的数据类型为第三类型;
所述处理模块,还具体用于将所述第二目标数据的数据特征进行数据转换,获得所述第二目标数据的转换后的数据特征,该转换后的数据特征的数据类型为所述第三类型;
所述处理模块,还具体用于基于所述第二目标数据的实际数据特征和所述第二目标数据的转换后的数据特征,对所述联合体变量中的所述第二目标数据进行数据校验。
在一种可能的设计中,所述多类型数据的写入装置还包括:所述每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
第三方面,本申请提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如上第一方面以及第一方面各种可能的设计所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上第一方面以及第一方面各种可能的设计所述的方法。
本申请提供的多类型数据的写入方法、装置、设备及介质,通过创建各第一存储变量对应的联合体变量,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,第一数组变量的预定字节用于存储第一目标数据的数据特征,第二数组变量中除预定字节的映射字节以外的其它字节用于存储第一目标数据;将各第一存储变量对应的联合体变量存储至存储空间,实现对第一目标数据的写入处理。本方案在数据写入过程中,针对多类型数据无需调用多种转换算法,而只需采用单种转换算法即可完成多类型数据的写入,有效简化数据存储过程中的计算。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1为本申请实施例一提供的一种多类型数据写入方法的流程示意图;
图2为本申请实施例二提供的一种多类型数据写入方法的流程示意图;
图3为本申请实施例三提供的一种多类型数据写入方法的流程示意图;
图4为本申请实施例四提供的一种多类型数据写入方法的流程示意图;
图5为本申请实施例五提供的一种多类型数据写入装置的结构示意图;
图6为本申请实施例六提供的一种多类型数据写入装置的装置框图;
图7为本申请实施例七提供的电子设备的结构示意图。
通过上述附图,已示出本申请明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本申请构思的范围,而是通过参考特定实施例为本领域技术人员说明本申请的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅代表本申请的一些方面相一致的装置和方法的例子。
在相关技术中的一种数据写入方案的场景示例中,预先定义各数据类型对应的中间数组。当需要存储多类型数据时,该方案包括:按照固定的数据特征算法计算各数据的数据特征,计算得到的数据特征的类型是固定的。接下来,需要将各数据的数据特征和数据本身赋值到对应类型的中间数组。此时,可能存在数据的类型与计算获得的数据特征的固定类型是不一致的,故需要采用相应的转换算法,将计算获得的数据特征转换为与数据的数据类型相同的类型后,再赋值到对应的中间数组中。进一步的,中间数组中的数据特征和数据被存储至EEPROM或Flash中,实现数据的写入处理。
上述方案中,由于涉及多类型数据场景,因此,在对数据特征进行类型转换时,可能涉及多种类型转换算法,比如,32位转16位、32位转8位以及32位转浮点等导致数据写入的计算处理需要调用多种转换算法,计算过程比较复杂。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
实施例一
图1为本申请实施例一提供的一种多类型数据的写入方法的流程示意图。本申请实施例的主体可以为多类型数据的写入程序,本实施例此处不做特别限制。如图1所示,该方法包括:
101、根据各第一存储变量指定的数据类型,确定各第一存储变量中第一目标数据的数据类型。
其中,各第一存储变量的数据类型为多种。在一个示例中,第一目标数据的数据类型是根据各第一存储变量的数据类型决定的,保证了在存储数据过程中数据类型的一致性。
102、创建各第一存储变量对应的联合体变量;其中,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量。
其中,联合体变量的第一数组变量的预定字节用于存储第一存储变量中第一目标数据的数据特征,联合体变量的第二数组变量中,除预定字节的映射字节以外的其它字节用于存储第一存储变量中的第一目标数据。
其中,第二类型为第一存储变量的数据类型。其中,联合体指的是在进行某些算法编程的时候,需要使几种不同类型的变量映射到同一段内存单元中,这种几个不同的变量共同占用一段内存的结构,被称作“共用体”类型结构,简称共用体,也叫联合体。一个联合变量的长度等于各成员变量中最长的长度。这样使内存使用更为精细灵活,节省了内存空间。
实际应用中,可以预先定义各类型对应的联合体变量。可以理解,联合体变量的第一数组变量均为第一类型,故联合体变量的类型取决于该联合体变量的第二数组变量定义的类型。比如,第一类型可以为uint8类型,则第二类型为uint16类型的联合体变量,即为uint16类型的联合体变量,可应用于uint16类型的存储变量的数据处理。
上述步骤中,将计算获得的第一目标数据的数据特征,转换为第一类型的数据特征后,赋值在联合体变量的第一数组变量的指定字节(比如第一数组变量的前16个字节),将第一存储变量的第一目标数据赋值在联合体变量的第二数组变量的除被数据特征占用的字节以外的其它字节,从而完成第一存储变量对应的联合体变量的创建。
103、将各第一存储变量对应的联合体变量存储至存储空间,以完成对第一目标数据的写入。
具体的,将包含第一目标数据的数据特征和第一目标数据的联合体变量存储到存储空间中,从而完成第一目标数据的写入处理。
在一种可能的场景示例中,举例说明,当给定第一存储变量的数据类型为Uint32类型,则确定第一目标数据的数据类型为Uint32类型。可选的,基于Uint32类型的联合体变量,来创建该第一存储变量对应的联合体变量。举例来说,联合体变量的第一数组变量的第一类型可以固定设定为Uint8类型,第一数组变量可以包括数组Data[n],可以知道联合体变量的第二数组变量的第二类型为Uint32类型。第二数组变量可以包括数组Data_Real[m]。
可选的,联合体变量的数组Data[n]的预定字节长度可以设定但不限于16字节。由此获得联合体变量中Uint8类型的数组Data[n]的前16个字节长度空间用于存储Uint32类型的第一存储变量中第一目标数据的数据特征。可选的,第一存储变量中第一目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。按照Uint8类型对第一目标数据的版本号、存储次数、检验和、Block大小信息进行计算赋值,并完成对联合体变量中的Uint8类型的数组Data[n]的前16个字节空间的数据存储。
根据联合体变量中的Uint32类型的数组Data_Real[m],除去数组Data[n]前16个字节后的n-16个字节空间对应在第二数组变量中的字节,可用于存储Uint32类型的第一目标数据。将第一存储变量对应的联合体变量存储至存储空间,从而完成了对第一目标数据的写入处理。具体的,由于本实施例中,用于赋值数据特征的联合变量体的第一数组变量的类型是固定的第一类型,因此在进行数据特征的赋值时,尽管涉及多类型数据,只需将计算得到的固定类型(比如Uint32类型)的数据特征采用单一转换算法,转换为第一类型(比如Uint8类型)的数据特征,即可进行联合体变量的创建,故能够简化数据写入的计算。
本实施例提供的多类型数据的写入方法,通过创建各第一存储变量对应的联合体变量,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量。第一数组变量的预定字节用于存储第一目标数据的数据特征,第二数组变量中除预定字节的映射字节以外的其它字节用于存储第一目标数据。将各第一存储变量对应的联合体变量存储至存储空间,从而完成对第一目标数据的写入处理。针对多类型数据无需调用多种转换算法,而只需采用单种转换算法即可完成多类型数据的写入,有效简化数据存储过程中的计算。
实施例二
图2为本申请实施例二提供的一种多类型数据的写入方法的流程示意图。如图2所示,在任一实施例的基础上,步骤102具体可以包括:
201、针对每个第一存储变量中的第一目标数据,采用预定算法,生成第一目标数据的初始数据特征,第一目标数据的初始数据特征的数据类型为第三类型;
202、将第一目标数据的初始数据特征进行数据转换,获得第一目标数据的数据特征,第一目标数据的数据特征的类型为第一类型;
203、将第一目标数据的数据特征,赋值给第一存储变量对应的联合体变量的第一数组变量中的预定字节。
在一种可能的场景示例中,第一目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。联合体变量包括Uint8类型的数组Data[n]和Uint32类型的数组Data_Real[m]。第一目标数据类型为Uint32类型,举例说明,Block大小为112,根据Uint8类型占用1个字节长度,Uint32类型占用4个字节长度,则获得n*1=112,4*m=112,可得m=28。针对Uint32类型的第一存储变量中的第一目标数据,采用预定的算法,生成第三类型的第一目标数据的初始数据特征。可选的,生成的第三类型的初始数据特征可以但不限于是Uint32类型。将Uint32类型的第一目标数据的初始数据特征进行数据转换,转换成与数组Data[n]相同数据类型的第一目标数据的数据特征,即得到Uint8类型的第一目标数据的数据特征。将转换后的第一目标数据的数据特征,赋值给数组Data[n]中的预定字节,完成对第一目标数据的数据特征的存储处理,减少了反复计算量,节省了内存空间,达到了简化数据写入处理的效果。
本实施例提供的多类型数据的写入方法,通过采用预定算法,生成第三类型的第一目标数据的初始数据特征。再将第一目标数据的初始数据特征进行数据转换,获得第一类型的第一目标数据的数据特征。将第一类型的第一目标数据的数据特征,赋值给第一存储变量对应的联合体变量的第一类型的第一数组变量中的预定字节,完成对第一目标数据的数据特征的存储,减少了计算量,简化了多类型数据写入的处理过程。
实施例三
图3为本申请实施例三提供的一种多类型数据的写入方法的流程示意图。如图3所示,在任一实施例的基础上,多类型数据的写入方法还包括:
301、从存储空间获取存储的各联合体变量,其中,各联合体变量的第二数组变量的类型为多种。
302、基于各联合体变量的第一数组变量中的预定字节,获得各联合体变量的第二数组变量中第二目标数据的数据特征。
其中,第二目标数据的数据特征的数据类型为第一类型。
在一种可能的示例场景中,举例说明,设定各联合体变量的第一数组变量中的预定字节长度为16字节,第二目标数据的数据特征可以为但不限于数据的版本号、存储次数、校验和、Block大小。设定第一类型为Uint8类型,联合体变量的第二数组变量类型为Uint32类型,举例来说,可以通过设定预定字节为16个字节长度,每个数据特征占用四字节长度,实现对第二目标数据的数据特征的存储。
303、基于各联合体变量中第二目标数据的数据特征,对第二目标数据进行校验,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,以完成对第二目标数据的读处理。
在本示例中,通过获得第二目标数据的数据特征进行数据校验,确认数据是否正确。校验通过后第二目标数据赋值给相同类型的第二存储变量,从而完成对第二目标数据的读处理,节省了内存空间,提高了数据存储效率。
在一种可能的示例场景中,举例说明,可以设定联合体变量中的第一类型包括Uint8类型,第一数组变量可以包括数组Data[n],第二类型可以包括Uint32类型,同样设定第二数组变量可以包括数组Data_Real[m]。可选的,联合体变量的数组Data[n]的预定字节长度可以设定但不限于16字节。从存储空间获取存储的各联合体变量,Uint8类型的数组Data[n]的前16个字节长度空间存储第二目标数据的数据特征。可选的,第一存储变量中第一目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。将获得Uint32类型的第二目标数据进行校验,校验通过后将Uint32类型的第二目标数据赋值给类型相同的第二存储变量,完成对Uint32类型第二目标数据的读处理。节省内存空间,简化数据读入处理过程。
本实施例提供的多类型数据的写入方法,通过从存储空间获取存储的各联合体变量,基于各联合体变量的第一数组变量中的预定字节,获得第二目标数据的数据特征。再基于第二目标数据的数据特征,对第二目标数据进行校验处理,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,从而完成对第二目标数据的读处理。节省内存空间,简化数据读入处理过程。
实施例四
图4为本申请实施例四提供的一种多类型数据的写入方法的流程示意图。如图4所示,在实施例三的基础上,步骤303具体可以包括:
401、针对每个联合体变量中的第二目标数据,采用预定算法,生成第二目标数据的实际数据特征,第二目标数据的实际数据特征的数据类型为第三类型。
在一个示例中,每个联合体变量中的第二目标数据用来进行校验,通过采用预定算法,计算并生成第三类型的第二目标数据的实际数据特征。实现对第二目标数据的数据特征的数据处理。
402、将第二目标数据的数据特征进行数据转换,获得第二目标数据的转换后的数据特征,该转换后的数据特征的数据类型为第三类型。
在一个示例中,将每个联合体变量中的第二目标数据的数据特征进行数据转换,获得转换后的第三类型的第二目标数据的数据特征,实现对第二目标数据的数据特征的数据转换处理过程。
403、基于第二目标数据的实际数据特征和第二目标数据的转换后的数据特征,对联合体变量中的第二目标数据进行数据校验。
在本示例中,通过预定算法计算得到的第二目标数据的实际数据特征和经过数据转换处理得到的第二目标数据的转换后的数据特征进行对比,实现联合体变量中的第二目标数据的数据校验,进一步完善多类型数据写入方法的处理过程。
在一种可能的场景示例中,第二目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。联合体变量包括Uint8类型的数组Data[n]和Uint16类型的数组Data_Real[m]。第二目标数据类型为Uint16类型,举例说明,针对Uint8类型的联合体变量对应的第二目标数据,采用预定的算法,生成第三类型的第二目标数据的实际数据特征。可选的,生成的第三类型的实际数据特征可以但不限于是Uint32类型。将Uint16类型的第二目标数据的实际数据特征进行数据转换,转换成与第二目标数据的实际数据特征相同数据类型的第二目标数据的数据特征,即得到Uint32类型的转换后的第二目标数据的数据特征。将转换后的Uint32类型的第二目标数据的数据特征和Uint32类型的第二目标数据的实际数据特征进行数据校验,完成对第二目标数据的数据特征的校验处理,减少了反复计算量,节省了内存空间,达到了简化数据写入处理的效果。
可选的,每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
在一个示例中,将联合体变量中的第一数组变量的数据类型可以设定为非浮点型。举例说明,设定联合体变量的第一数组变量的数据类型为float浮点型。第二数组变量的数据类型为Uint16类型,第二目标数据类型为Uint16类型。可选的,设定第三类型为Uint32类型。在对第二目标数据进行校验时,首先对float类型的联合体变量对应的第二目标数据,采用预定的算法,生成Uint32类型的第二目标数据的实际数据特征。将Uint16类型的第二目标数据的实际数据特征进行数据转换,转换成Uint32类型的第二目标数据的数据特征。将转换后的Uint32类型的第二目标数据的数据特征和Uint32类型的第二目标数据的实际数据特征进行数据校验,完成对第二目标数据的数据特征的校验处理。但是运用float类型生成的实际数据特征往往会产生一定的出错率,导致数据校验失败。为了更有效地降低出错发生率,简化代码实现方式,本方案选择将每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
本实施例提供的多类型数据的写入方法,通多对每个联合体变量中的第二目标数据,采用预定算法,生成第二目标数据的实际数据特征,再对第二目标数据的数据特征进行数据转换,获得第二目标数据的转换后的数据特征,基于第二目标数据的实际数据特征和转换后的数据特征,对联合体变量中的第二目标数据进行数据校验。通过数据检验,可以保证数据读取时的准确性,减少多类型数据的写入方法的出错率。
实施例五
图5为本申请实施例五提供的一种多类型数据的写入装置的结构示意图。如图5所示,该多类型数据的写入装置包括:
获取模块51,用于根据各第一存储变量指定的数据类型,确定各第一存储变量中第一目标数据的数据类型;其中,各第一存储变量的数据类型为多种;
处理模块52,用于创建各第一存储变量对应的联合体变量;其中,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,联合体变量的第一数组变量的预定字节用于存储第一存储变量中第一目标数据的数据特征,联合体变量的第二数组变量中,除预定字节的映射字节以外的其它字节用于存储第一存储变量中的第一目标数据;其中,第二类型为第一存储变量的数据类型;
上述步骤中,通过处理模块52将计算获得的第一目标数据的数据特征,转换为第一类型的数据特征后,赋值在联合体变量的第一数组变量的指定字节(比如第一数组变量的前16个字节),通过处理模块52将第一存储变量的第一目标数据赋值在联合体变量的第二数组变量的除被数据特征占用的字节以外的其它字节,从而完成第一存储变量对应的联合体变量的创建。
处理模块52,还用于将各第一存储变量对应的联合体变量存储至存储空间,以完成对第一目标数据的写入。
具体的,将包含第一目标数据的数据特征和第一目标数据的联合体变量存储到存储空间中,从而完成第一目标数据的写入处理。
在一种可能的场景示例中,举例说明,当给定第一存储变量的数据类型为Uint32类型,则确定第一目标数据的数据类型为Uint32类型。可选的,基于Uint32类型的联合体变量,来创建该第一存储变量对应的联合体变量。举例来说,联合体变量的第一数组变量的第一类型可以固定设定为Uint8类型,第一数组变量可以包括数组Data[n],可以知道联合体变量的第二数组变量的第二类型为Uint32类型。第二数组变量可以包括数组Data_Real[m]。
可选的,联合体变量的数组Data[n]的预定字节长度可以设定但不限于16字节。由此获得联合体变量中Uint8类型的数组Data[n]的前16个字节长度空间用于存储Uint32类型的第一存储变量中第一目标数据的数据特征。可选的,第一存储变量中第一目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。按照Uint8类型对第一目标数据的版本号、存储次数、检验和、Block大小信息进行计算赋值,并完成对联合体变量中的Uint8类型的数组Data[n]的前16个字节空间的数据存储。
根据联合体变量中的Uint32类型的数组Data_Real[m],除去数组Data[n]前16个字节后的n-16个字节空间对应在第二数组变量中的字节,可用于存储Uint32类型的第一目标数据。将第一存储变量对应的联合体变量存储至存储空间,从而完成了对第一目标数据的写入处理。具体的,由于本实施例中,用于赋值数据特征的联合变量体的第一数组变量的类型是固定的第一类型,因此在进行数据特征的赋值时,尽管涉及多类型数据,只需将计算得到的固定类型(比如Uint32类型)的数据特征采用单一转换算法,转换为第一类型(比如Uint8类型)的数据特征,即可进行联合体变量的创建,故能够简化数据写入的计算。
在一种可能的设计中,处理模块52,具体用于针对每个第一存储变量中的第一目标数据,采用预定算法,生成第一目标数据的初始数据特征,第一目标数据的初始数据特征的数据类型为第三类型。
处理模块52,还具体用于将第一目标数据的初始数据特征进行数据转换,获得第一目标数据的数据特征,第一目标数据的数据特征的类型为第一类型。
处理模块52,还具体用于将第一目标数据的数据特征,赋值给第一存储变量对应的联合体变量的第一数组变量中的预定字节。
本示例中,通过处理模块52采用预定算法,生成第三类型的第一目标数据的初始数据特征。再将第一目标数据的初始数据特征进行数据转换,获得第一类型的第一目标数据的数据特征。将第一类型的第一目标数据的数据特征,赋值给第一存储变量对应的联合体变量的第一类型的第一数组变量中的预定字节,完成对第一目标数据的数据特征的存储,减少了计算量,简化了多类型数据写入的处理过程。
在一种可能的设计中,获取模块51,还用于从存储空间获取存储的各联合体变量,其中,各联合体变量的第二数组变量的类型为多种。处理模块51,还用于基于各联合体变量的第一数组变量中的预定字节,获得各联合体变量的第二数组变量中第二目标数据的数据特征;其中,第二目标数据的数据特征的数据类型为第一类型。处理模块52,还用于基于各联合体变量中第二目标数据的数据特征,对第二目标数据进行校验,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,以完成对第二目标数据的读处理。
在一种可能的示例场景中,可以设定联合体变量中的第一类型包括Uint8类型,第一数组变量可以包括数组Data[n],第二类型可以包括Uint32类型,同样设定第二数组变量可以包括数组Data_Real[m]。可选的,联合体变量的数组Data[n]的预定字节长度可以设定但不限于16字节。从存储空间获取存储的各联合体变量,Uint8类型的数组Data[n]的前16个字节长度空间存储第二目标数据的数据特征。可选的,第一存储变量中第一目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。将获得Uint32类型的第二目标数据进行校验,校验通过后将Uint32类型的第二目标数据赋值给类型相同的第二存储变量,完成对Uint32类型第二目标数据的读处理。节省内存空间,简化数据读入处理过程。
本示例中,通过获取模块从存储空间获取存储的各联合体变量,基于各联合体变量的第一数组变量中的预定字节,获得第二目标数据的数据特征。再基于第二目标数据的数据特征,对第二目标数据进行校验处理,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,从而完成对第二目标数据的读处理。节省内存空间,简化数据读入处理过程。
在一种可能的设计中,处理模块52,具体用于针对每个联合体变量中的第二目标数据,采用预定算法,生成第二目标数据的实际数据特征,第二目标数据的实际数据特征的数据类型为第三类型;
处理模块52,还具体用于将第二目标数据的数据特征进行数据转换,获得第二目标数据的转换后的数据特征,该转换后的数据特征的数据类型为第三类型;
处理模块52,还具体用于基于第二目标数据的实际数据特征和第二目标数据的转换后的数据特征,对联合体变量中的第二目标数据进行数据校验。
在一种可能的场景示例中,第二目标数据的数据特征可以包括但不限于数据的版本号、存储次数、检验和、Block大小。联合体变量包括Uint8类型的数组Data[n]和Uint16类型的数组Data_Real[m]。第二目标数据类型为Uint16类型,举例说明,针对Uint8类型的联合体变量对应的第二目标数据,采用预定的算法,生成第三类型的第二目标数据的实际数据特征。可选的,生成的第三类型的实际数据特征可以但不限于是Uint32类型。将Uint16类型的第二目标数据的实际数据特征进行数据转换,转换成与第二目标数据的实际数据特征相同数据类型的第二目标数据的数据特征,即得到Uint32类型的转换后的第二目标数据的数据特征。将转换后的Uint32类型的第二目标数据的数据特征和Uint32类型的第二目标数据的实际数据特征进行数据校验,完成对第二目标数据的数据特征的校验处理,减少了反复计算量,节省了内存空间,达到了简化数据写入处理的效果。
可选的,处理模块52,还用于每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
将第一类型设置成浮点型类型生成的实际数据特征往往会产生一定的出错率,导致数据校验失败。为了更有效地降低出错发生率,简化代码实现方式,本方案选择将每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
本实施例提供的多类型数据的写入装置,通过处理模块创建各第一存储变量对应的联合体变量,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量。第一数组变量的预定字节用于存储第一目标数据的数据特征,第二数组变量中除预定字节的映射字节以外的其它字节用于存储第一目标数据。通过处理模块将各第一存储变量对应的联合体变量存储至存储空间,从而完成对第一目标数据的写入处理。针对多类型数据无需调用多种转换算法,而只需采用单种转换算法即可完成多类型数据的写入,有效简化数据存储过程中的计算。
实施例六
图6是本申请实施例六提供的一种多类型数据的写入装置的装置框图,该装置可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
装置600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)接口612,传感器组件614,以及通信组件616。
处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。
存储器604被配置为存储各种类型的数据以支持在装置600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件606为装置600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。
多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当装置600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。
I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到装置600的打开/关闭状态,组件的相对定位,例如所述组件为装置600的显示器和小键盘,传感器组件614还可以检测装置600或装置600一个组件的位置改变,用户与装置600接触的存在或不存在,装置600方位或加速/减速和装置600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
一种非临时性计算机可读存储介质,当该存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行上述终端设备的分屏处理方法。
实施例七
在本实施例中,图7为本申请实施例七提供的一种电子设备的结构示意图,如图7所示,该电子设备包括:
处理器(processor)701,电子设备还包括了存储器(memory)702;还可以包括通信接口(Communication Interface)703和总线704。其中,处理器701、存储器702、通信接口703、可以通过总线704完成相互间的通信。通信接口703可以用于信息传输。处理器701可以调用存储器704中的逻辑指令,以执行上述实施例的方法。
此外,上述的存储器702中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器702作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本申请实施例中的方法对应的程序指令/模块。处理器701通过运行存储在存储器702中的软件程序、指令以及模块,从而执行功能应用以及数据处理,即实现上述方法实施例中的方法。
存储器702可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非易失性存储器。
本申请实施例提供一种非临时性计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,计算机执行指令被处理器执行时用于实现如前述实施例的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求书指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求书来限制。

Claims (12)

1.一种多类型数据的写入方法,其特征在于,包括:
根据各第一存储变量指定的数据类型,确定所述各第一存储变量中第一目标数据的数据类型;其中,所述各第一存储变量的数据类型为多种;
创建所述各第一存储变量对应的联合体变量;其中,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,所述联合体变量的第一数组变量的预定字节用于存储所述第一存储变量中第一目标数据的数据特征,所述联合体变量的第二数组变量中,除所述预定字节的映射字节以外的其它字节用于存储所述第一存储变量中的第一目标数据;其中,所述第二类型为所述第一存储变量的数据类型;
将所述各第一存储变量对应的联合体变量存储至存储空间,以完成对所述第一目标数据的写入。
2.根据权利要求1所述的方法,其特征在于,所述创建所述各第一存储变量对应的联合体变量,包括:
针对每个第一存储变量中的第一目标数据,采用预定算法,生成所述第一目标数据的初始数据特征,所述第一目标数据的初始数据特征的数据类型为第三类型;
将所述第一目标数据的初始数据特征进行数据转换,获得所述第一目标数据的数据特征,所述第一目标数据的数据特征的类型为所述第一类型;
将所述第一目标数据的数据特征,赋值给所述第一存储变量对应的联合体变量的第一数组变量中的所述预定字节。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
从存储空间获取存储的各联合体变量,其中,所述各联合体变量的第二数组变量的类型为多种;
基于所述各联合体变量的第一数组变量中的预定字节,获得所述各联合体变量的第二数组变量中第二目标数据的数据特征;其中,所述第二目标数据的数据特征的数据类型为所述第一类型;
基于所述各联合体变量中第二目标数据的数据特征,对所述第二目标数据进行校验,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,以完成对所述第二目标数据的读处理。
4.根据权利要求3所述的方法,其特征在于,所述基于所述各联合体变量中第二目标数据的数据特征,对所述第二目标数据进行校验,包括:
针对每个联合体变量中的第二目标数据,采用预定算法,生成所述第二目标数据的实际数据特征,所述第二目标数据的实际数据特征的数据类型为第三类型;
将所述第二目标数据的数据特征进行数据转换,获得所述第二目标数据的转换后的数据特征,该转换后的数据特征的数据类型为所述第三类型;
基于所述第二目标数据的实际数据特征和所述第二目标数据的转换后的数据特征,对所述联合体变量中的所述第二目标数据进行数据校验。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
6.一种多类型数据的写入装置,其特征在于,包括:
获取模块,用于根据各第一存储变量指定的数据类型,确定所述各第一存储变量中第一目标数据的数据类型;其中,所述各第一存储变量的数据类型为多种;
处理模块,用于创建所述各第一存储变量对应的联合体变量;其中,每个第一存储变量对应的联合体变量包括预定的第一类型的第一数组变量和第二类型的第二数组变量,所述联合体变量的第一数组变量的预定字节用于存储所述第一存储变量中第一目标数据的数据特征,所述联合体变量的第二数组变量中,除所述预定字节的映射字节以外的其它字节用于存储所述第一存储变量中的第一目标数据;其中,所述第二类型为所述第一存储变量的数据类型;
所述处理模块,还用于将所述各第一存储变量对应的联合体变量存储至存储空间,以完成对所述第一目标数据的写入。
7.根据权利要求6所述的装置,其特征在于,
所述处理模块,具体用于针对每个第一存储变量中的第一目标数据,采用预定算法,生成所述第一目标数据的初始数据特征,所述第一目标数据的初始数据特征的数据类型为第三类型;
所述处理模块,还具体用于将所述第一目标数据的初始数据特征进行数据转换,获得所述第一目标数据的数据特征,所述第一目标数据的数据特征的类型为所述第一类型;
所述处理模块,还具体用于将所述第一目标数据的数据特征,赋值给所述第一存储变量对应的联合体变量的第一数组变量中的所述预定字节。
8.根据权利要求6所述的装置,其特征在于,
所述获取模块,还用于从存储空间获取存储的各联合体变量,其中,所述各联合体变量的第二数组变量的类型为多种;
所述处理模块,还用于基于所述各联合体变量的第一数组变量中的预定字节,获得所述各联合体变量的第二数组变量中第二目标数据的数据特征;其中,所述第二目标数据的数据特征的数据类型为所述第一类型;
所述处理模块,还用于基于所述各联合体变量中第二目标数据的数据特征,对所述第二目标数据进行校验,并将校验通过的第二目标数据赋值给类型相同的第二存储变量,以完成对所述第二目标数据的读处理。
9.根据权利要求8所述的装置,其特征在于,
所述处理模块,具体用于针对每个联合体变量中的第二目标数据,采用预定算法,生成所述第二目标数据的实际数据特征,所述第二目标数据的实际数据特征的数据类型为第三类型;
所述处理模块,还具体用于将所述第二目标数据的数据特征进行数据转换,获得所述第二目标数据的转换后的数据特征,该转换后的数据特征的数据类型为所述第三类型;
所述处理模块,还具体用于基于所述第二目标数据的实际数据特征和所述第二目标数据的转换后的数据特征,对所述联合体变量中的所述第二目标数据进行数据校验。
10.根据权利要求6-9任一项所述的装置,其特征在于,所述每个联合体变量中的第一数组变量中的预定的第一类型为非浮点型类型。
11.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,以实现如权利要求1-5中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-5任一项所述的方法。
CN202111431546.9A 2021-11-29 2021-11-29 多类型数据的写入方法、装置、设备及介质 Active CN114047885B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111431546.9A CN114047885B (zh) 2021-11-29 2021-11-29 多类型数据的写入方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111431546.9A CN114047885B (zh) 2021-11-29 2021-11-29 多类型数据的写入方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN114047885A true CN114047885A (zh) 2022-02-15
CN114047885B CN114047885B (zh) 2023-09-15

Family

ID=80211597

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111431546.9A Active CN114047885B (zh) 2021-11-29 2021-11-29 多类型数据的写入方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN114047885B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114721982A (zh) * 2022-03-22 2022-07-08 潍柴动力股份有限公司 一种可配置存储数据类型的读写处理方法及系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243859B1 (en) * 1998-11-02 2001-06-05 Hu Chen-Kuang Method of edit program codes by in time extracting and storing
JP2005346272A (ja) * 2004-06-01 2005-12-15 Sony Corp 構造体型配列のデータのメモリ使用方法
CN1760871A (zh) * 2004-10-15 2006-04-19 微软公司 将模式数据映射到数据结构
US20140330827A1 (en) * 2013-05-03 2014-11-06 Sas Institute Inc. Methods and systems to operate on group-by sets with high cardinality
WO2017071777A1 (en) * 2015-10-30 2017-05-04 Hewlett Packard Enterprise Development Lp Generation of a data type code value for a data type
US20210064234A1 (en) * 2019-04-16 2021-03-04 Formulus Black Corporation Systems, devices, and methods for implementing in-memory computing

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243859B1 (en) * 1998-11-02 2001-06-05 Hu Chen-Kuang Method of edit program codes by in time extracting and storing
JP2005346272A (ja) * 2004-06-01 2005-12-15 Sony Corp 構造体型配列のデータのメモリ使用方法
CN1760871A (zh) * 2004-10-15 2006-04-19 微软公司 将模式数据映射到数据结构
US20140330827A1 (en) * 2013-05-03 2014-11-06 Sas Institute Inc. Methods and systems to operate on group-by sets with high cardinality
WO2017071777A1 (en) * 2015-10-30 2017-05-04 Hewlett Packard Enterprise Development Lp Generation of a data type code value for a data type
US20210064234A1 (en) * 2019-04-16 2021-03-04 Formulus Black Corporation Systems, devices, and methods for implementing in-memory computing

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114721982A (zh) * 2022-03-22 2022-07-08 潍柴动力股份有限公司 一种可配置存储数据类型的读写处理方法及系统
CN114721982B (zh) * 2022-03-22 2024-06-18 潍柴动力股份有限公司 一种可配置存储数据类型的读写处理方法及系统

Also Published As

Publication number Publication date
CN114047885B (zh) 2023-09-15

Similar Documents

Publication Publication Date Title
US20180365004A1 (en) Method and device for calling software development kit
CN107291626B (zh) 数据存储方法和装置
KR20170061626A (ko) 통신 모듈 펌웨어와 플러그인 생성 방법, 장치, 프로그램 및 컴퓨터 판독가능한 기록매체
CN108008955B (zh) 显示自定义控件信息的方法、装置
CN107590534B (zh) 训练深度卷积神经网络模型的方法、装置及存储介质
CN107608714B (zh) 字节对齐方法、装置及计算机可读存储介质
CN114047885B (zh) 多类型数据的写入方法、装置、设备及介质
EP3118729A1 (en) Method and device for presenting tasks
CN108153540B (zh) 系统升级的方法、装置、终端及存储介质
CN107992894B (zh) 图像识别方法、装置及计算机可读存储介质
CN107239758B (zh) 人脸关键点定位的方法及装置
CN107832058B (zh) 数据处理方法及装置
CN109813295B (zh) 方位确定方法及装置、电子设备
CN107885464B (zh) 数据存储方法、装置及计算机可读存储介质
CN110795153A (zh) 电子设备及其硬件配置方法和装置
CN107193530B (zh) 一种生成随机数的方法和装置
CN113778687B (zh) 内存分配信息处理方法、装置、电子设备及存储介质
CN106354657B (zh) 寄存器访问方法、装置及系统
CN114612287A (zh) 图像处理方法、装置及存储介质
CN108132782B (zh) 自动编程装置及电子设备
CN111984423A (zh) 一种运行深度学习模型的方法、装置及介质
CN110942486B (zh) 相机标定参数的保存方法、装置及存储介质
CN111866785A (zh) 终端、参数测量方法、装置及存储介质
CN116893816B (zh) 远程渲染方法、装置及存储介质
CN117472371B (zh) 远程渲染方法、装置及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant