[发明专利]去除循环处理流程中条件判断语句的方法和装置、应用单元有效
申请号: | 201611255464.2 | 申请日: | 2016-12-30 |
公开(公告)号: | CN106775593B | 公开(公告)日: | 2019-12-31 |
发明(设计)人: | 何君舰;刘瑞祥;张鹏;曹红胜;赵东旭;刘海明;沈海寅 | 申请(专利权)人: | 智车优行科技(北京)有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/302;G06F9/305 |
代理公司: | 11657 北京思源智汇知识产权代理有限公司 | 代理人: | 毛丽琴 |
地址: | 100020 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 去除 循环 处理 流程 条件 判断 语句 方法 装置 应用 单元 | ||
1.一种去除循环处理流程中条件判断语句的方法,其特征在于,包括:
响应于读取到条件判断语句,获取所述条件判断语句中判断条件的条件形式;
根据所述判断条件的条件形式,生成所述条件判断语句的非判断执行应用单元;所述非判断执行应用单元无需执行判断条件,通过符号位获取、加减法操作和按位与操作实现所述条件判断语句的执行结果。
2.根据权利要求1所述的方法,其特征在于,还包括:
执行所述非判断执行应用单元,获得所述条件判断语句的执行结果。
3.根据权利要求1或2所述的方法,其特征在于,所述判断条件的条件形式包括:a<b;
所述条件判断语句包括:if(a<b)c=b;else c=a,或者c=a<b?b:a;
所述非判断执行应用单元包括:c=((Sign(a-b)-1)&(a-b))+b。
4.根据权利要求3所述的方法,其特征在于,执行所述非判断执行应用单元,获得所述条件判断语句的执行结果,包括:
计算a与b相减的结果d=a-b;
获取d的符号位Sign(d);
计算d的符号位Sign(d)与1的差值Sign(d)-1;
将所述差值Sign(d)-1与d做按位与运算,获得第一运算结果(Sign(d)-1)&d;
计算所述第一运算结果(Sign(d)-1)&d与b相加的值((Sign(d)-1)&d)+b;
将所述值((Sign(d)-1)&d)+b赋值给c。
5.根据权利要求3所述的方法,其特征在于,b的取值为0。
6.根据权利要求4所述的方法,其特征在于,b的取值为0。
7.根据权利要求1或2所述的方法,其特征在于,所述判断条件的条件形式包括:a>b;
所述条件判断语句包括:if(a>b)c=b;else c=a,或者c=a>b?b:a;
所述非判断执行应用单元包括:c=-((sign(b-a)-1)&(b-a))+b。
8.根据权利要求7所述的方法,其特征在于,执行所述非判断执行应用单元,获得所述条件判断语句的执行结果,包括:
计算b与a相减的结果d=b-a;
获取d的符号位Sign(d);
计算d的符号位Sign(d)与1的差值Sign(d)-1;
将所述差值Sign(d)-1与d做按位与运算,获得第二运算结果(Sign(d)-1)&d;
计算b与所述第二运算结果(Sign(d)-1)&d的差值b-((Sign(d)-1)&d);
将所述差值b-((Sign(d)-1)&d)赋值给c。
9.根据权利要求7所述的方法,其特征在于,b的取值为255。
10.根据权利要求8所述的方法,其特征在于,b的取值为255。
11.一种去除循环处理流程中条件判断语句的装置,其特征在于,包括:
获取单元,用于在读取到条件判断语句时,获取所述条件判断语句中判断条件的条件形式;
生成单元,用于根据所述判断条件的条件形式,生成所述条件判断语句的非判断执行应用单元;所述非判断执行应用单元无需执行判断条件,通过符号位获取、加减法操作和按位与操作实现所述条件判断语句的执行结果。
12.根据权利要求11所述的装置,其特征在于,还包括:
执行单元,用于执行所述非判断执行应用单元,获得所述条件判断语句的执行结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于智车优行科技(北京)有限公司,未经智车优行科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611255464.2/1.html,转载请声明来源钻瓜专利网。