发明名称 一种节省存储空间的数据处理方法
摘要 本发明公开一种节省存储空间的数据处理的方法,属于计算机技术领域。所述方法包括,A:CPU用第一寄存器中的数据更新第一存储区中的数据;B:判断第一寄存器中的数据是否为第一预设值,如果不是第一预设值,则从第四存储区中获取一个字节的数据,保存在第三存储区中,判断第二寄存器中的数据是否为第二预设值,如果是,则将第二寄存器中的数据清零,然后调用第一数据处理模块对第二存储区中的数据进行处理,用处理结果更新第二存储区,否则返回B;如果是第一预设值,则对第三存储区中的数据进行填充,用填充结果调用第一数据处理模块,得到的结果即为最终结果。采用本发明的技术方案,实现了内存的复用,减少了对空间的占用,提高了计算效率。
申请公布号 CN103593299B 申请公布日期 2016.02.24
申请号 CN201310562145.6 申请日期 2013.11.12
申请人 飞天诚信科技股份有限公司 发明人 陆舟;于华章
分类号 G06F12/02(2006.01)I 主分类号 G06F12/02(2006.01)I
代理机构 代理人
主权项 一种节省存储空间的数据处理的方法,其特征在于,包括:步骤101:CPU调用初始化模块,初始化第一存储区、第二存储区、第三存储区、第五存储区、第一寄存器和第二寄存器;其中,所述第一寄存器用于存储第四存储区中的数据的长度;第二寄存器用于存储所述第三存储区中的数据的长度;步骤102:所述CPU获取所述第一寄存器中的数据,更新所述第一存储区中的数据;步骤103:所述CPU判断所述第一寄存器中的数据是否为第一预设值,如果是,则执行步骤112,否则执行步骤104;步骤104:所述CPU根据所述第四存储区的首地址和当前偏移地址,从所述第四存储区中获取一个字节的数据,保存在所述第三存储区中,并更新所述第二寄存器中的数据,更新所述当前偏移地址,更新所述第一寄存器中的数据,判断所述第二寄存器中的数据是否等于第二预设值,如果是,则将所述第二寄存器中的数据清零,执行步骤105,否则返回步骤103;步骤105:所述CPU调用第一数据处理模块,将所述第二存储区中的数据存放在第五存储区中,获取循环计数器的当前计数值;步骤106:所述CPU对所述第二存储区中的数据进行处理,将处理结果保存在第三寄存器中;调用第二数据处理模块,对所述当前计数值与预设字节做与运算,对所述当前计数值加第三预设值的结果与所述预设字节做与运算,根据两个运算结果分别从所述第三存储区中获取对应的两个数据,对获取到的两个数据进行异或处理,将结果保存在第四寄存器中;步骤107:所述CPU对所述第三寄存器中的数据和所述第四寄存器中的数据进行处理,将结果保存在第五寄存器中;步骤108:所述CPU判断所述当前计数值是否大于或等于第四预设值,如果是,则调用第三数据处理模块,将处理结果保存在第六寄存器中,用所述第六寄存器中的数据更新所述第三存储区中与所述当前计数值对应的数据,执行步骤109,否则直接执行步骤109;步骤109:所述CPU对第六寄存器中的数据和所述第二存储区中的数据进行处理,将结果保存在第七寄存器中,对所述第二存储区中的数据进行处理,并用所述第五寄存器中的数据更新所述第二存储区,根据第一移位寄存器中的数据对所述第七寄存器中数据执行循环移位操作,将结果保存在第八寄存器中,根据第二移位寄存器中的数据对所述第八寄存器中的数据执行循环移位操作,将结果保存在第九寄存器中,然后对所述第七寄存器中的数据、所述第八寄存器中的数据、所述第九寄存器中的数据进行处理,将结果保存在第十寄存器中,用所述第十寄存器中的数据更新所述第二存储区;步骤110:所述CPU判断所述当前计数值是否等于第五预设值,如果是,则执行步骤111,否则更新所述当前计数值,返回执行步骤106;步骤111:所述CPU对所述第二存储区中的数据和所述第四存储区中的数据做异或处理,用处理结果更新所述第二存储区,退出所述第一数据处理模块,执行步骤103;步骤112:所述CPU调用填充模块,对所述第三存储区中的数据进行填充,调用第一数据处理模块对填充结果进行处理,得到处理结果;所述步骤108中,所述调用第三数据处理模块,将处理结果保存在第六寄存器中,用所述第六寄存器中的数据更新所述第三存储区中与所述当前计数值对应的数据,具体为:步骤A:所述CPU调用所述第三数据处理模块,将所述当前计数值减去第六预设值再与所述预设字节做与运算得到第二计数值,将所述当前计数值减去第七预设值再与所述预设字节做与运算得到第三计数值,将所述当前计数值减去第八预设值再与所述预设字节做与运算得到第四计数值,将所述当前计数值减去第九预设值再与所述预设字节做与运算得到第五计数值,将所述当前计数值减去第十预设值再与所述预设字节做与运算得到第六计数值,从所述第三存储区中分别获取与所述第二计数值、所述第三计数值、所述第四计数值、所述第五计数值和所述第六计数值对应的第三数值、第四数值、第五数值、第六数值和第七数值;步骤B:所述CPU根据第三移位寄存器中的数据对所述第五数值执行循环移位操作,对得到的循环移位结果、所述第三数值、所述第四数值做异或运算,将结果保存在第十五寄存器中;步骤C:所述CPU根据第五移位寄存器中的数据对所述第十五寄存器中的数据执行循环移位操作,将该移位结果保存在第十七寄存器中;步骤D:所述CPU根据第六移位寄存器中的数据对所述第十七寄存器中的数据执行循环移位操作,将该移位结果保存在第十八寄存器中;步骤E:所述CPU对所述第十五寄存器、所述第十七寄存器和所述第十八寄存器做异或运算,将结果保存在第十六寄存器中;步骤F:所述CPU根据第四移位寄存器中的数据对所述第六数值执行循环移位操作,得到的循环移位结果与所述第七数值、所述第十六寄存器中的数据做异或运算,将结果保存在第六寄存器中,将所述第三存储区中与所述当前计数值对应的数据替换为所述第六寄存器中的数据。
地址 100085 北京市海淀区学清路9号汇智大厦B楼17层