[发明专利]反编译电子表格中的循环无效
申请号: | 201110172799.9 | 申请日: | 2011-06-16 |
公开(公告)号: | CN102289429A | 公开(公告)日: | 2011-12-21 |
发明(设计)人: | J·B·梅瑟利;J·J·于根宁;J·M·斯托尔;C·O·哈根洛赫 | 申请(专利权)人: | 微软公司 |
主分类号: | G06F17/24 | 分类号: | G06F17/24 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 钱静芳 |
地址: | 美国华*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 反编译 电子表格 中的 循环 | ||
1.一种在包括一个或多个处理器和系统存储器的计算机系统处的用来标识电子表格(111)内的循环语义的方法,其特征在于,所述方法包括:
解析所述电子表格(111)以标识所述电子表格(111)内的多个公式(112)的动作;
生成所述多个公式(112N)的规范化表示的动作,所述多个公式的所述规范化表示指示所述电子表格(111)内的单元格位置之间的相对差异;
计算所述多个公式(112)之间的依赖性(113)的动作;
基于所述多个公式(112)之间的所计算的依赖性(113),检测所述电子表格(111)的单元格之间的任何循环引用(114)的动作;
将具有检测到的循环引用的单元格(116)标记为迭代计算的一部分的动作;
对于所标记的单元格(116)中的一个或多个,从所述多个公式(112)的所述规范化表示中标识重复公式(117)的一个或多个模式的动作;
确定重复公式的所述一个或多个模式表示至少一个循环(118)的动作;以及
从所述多个公式(112)中计算用于所述至少一个循环(118)的循环输入数据(121)和循环输出数据(122)的动作。
2.如权利要求1所述的方法,其特征在于,生成所述多个公式的规范化表示的所述动作包括将所述多个公式转换成R1C1表示法的动作。
3.如权利要求2所述的方法,其特征在于,确定重复公式的所述一或多个模式表示至少一个循环的所述动作包括标识除了下列之一之外相同的公式的动作:行和列偏移量。
4.如权利要求1所述的方法,其特征在于,确定重复公式的所述一个或多个模式表示至少一个循环的所述动作包括为循环确定迭代次数的动作。
5.如权利要求1所述的方法,其特征在于,确定重复公式的所述一个或多个模式表示至少一个循环的所述动作包括标识嵌套循环的动作。
6.如权利要求1所述的方法,其特征在于,计算用于所述循环的循环输入数据和循环输出数据的所述动作包括:
检测用于所述循环的数据来自所述电子表格内的一定范围的单元格的动作;以及
将来自所述一定范围的单元格的所述数据存储在数组中的动作。
7.如权利要求6所述的方法,其特征在于,确定相同公式的所述一个或多个模式表示至少一个循环的所述动作包括确定重复公式的所述一个或多个模式表示多个循环的动作。
8.如权利要求7所述的方法,其特征在于,计算用于至少一个循环的循环输入数据和循环输出数据的所述动作包括计算用于所述多个循环的循环输入数据和循环输出数据的动作。
9.如权利要求8所述的方法,其特征在于,计算用于所述多个循环的循环输入数据和循环输出数据的所述动作包括:
检测用于第一循环的数据来自所述电子表格内的第一范围的单元格的动作;以及
检测用于第二循环的数据来自所述电子表格内的第二范围的单元格的动作,其中所述第一范围的单元格和所述第二范围的单元格至少部分重叠。
10.如权利要求9所述的方法,其特征在于,还包括:
创建包含所述第一范围的单元格中的所有单元格和所述第二范围的单元格中的所有单元格的数组的动作。
11.如权利要求10所述的方法,其特征在于,还包括:
确定所述数组内要被所述第一和第二范围的单元格覆盖的最小区域的动作,包括:
将来自所述数组内的所述第一范围的单元格变换成第一数组的动作;
将来自所述第一范围的单元格的数据存储在所述第一数组中的动作;
将来自所述数组内的所述第二范围的单元格变换成第二数组的动作;
将来自所述第二范围的单元格的数据存储在所述第二数组中的动作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于微软公司,未经微软公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110172799.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种瘦身紫薯果冻及其制备方法
- 下一篇:一种八渡笋的加工及保鲜方法