[发明专利]一种计算整数的模数除法的余数的方法有效
申请号: | 200810097696.9 | 申请日: | 2008-05-23 |
公开(公告)号: | CN101276268A | 公开(公告)日: | 2008-10-01 |
发明(设计)人: | 黄建;徐晶;丁国荣;许炜;范兵;汪进;陈丽萍;张伟伟 | 申请(专利权)人: | 武汉飞思科技有限公司 |
主分类号: | G06F7/72 | 分类号: | G06F7/72;G06F7/535 |
代理公司: | 北京捷诚信通专利事务所 | 代理人: | 魏殿绅;庞炳良 |
地址: | 430000湖北省武汉市东湖开发区*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种计算整数的模数除法的余数的方法,涉及计算模数的方法,其特征在于:其计算步骤如下:1判断M和D的大小关系;2将被除数M转换成二进制位;3根据被除数M确定流水线处理第1级输入参数的个数;4根据各个权值的系数Mi(i=0□n-1)的结果查存储在计算装置内的余数表,得到ri(i=0,1...n-1);5确定流水线处理第1级的输入参数;6确定流水线级数及每级子处理程序的数量;7确定子处理流程的输入参数;8开始子处理流程的计算过程;9判断是否所有级的子处理流程均处理完毕,没有转步骤7,否则最终计算结果即为余数的值。本发明所述的计算整数的模数除法的余数的方法采用流水线处理方式,便于硬件实现,克服了传统迭代方法的计算量大的不足,而且对于除数和被除数没有特定的限制。 | ||
搜索关键词: | 一种 计算 整数 除法 余数 方法 | ||
【主权项】:
1.一种计算整数的模数除法的余数的方法,其特征在于:其计算步骤如下:(1)通过和计算装置连接的输入设备或通过和计算装置连接的存储设备获取被除数M、除数D,判断M和D的大小关系:如果M<D,则余数R=M,结束计算,否则转(2);(2)将被除数M转换成二进制位M=M0×20+M1×21+…+Mn-1×2n-1,获取各个权值的系数Mi(i=0□n-1)和二进制的位数n;(3)根据被除数M确定流水线处理第1级输入参数的个数:如果2j<M≤22j,其中j为集合{1,2,4,……,2m}中的一个值,m为自然数,那么流水线处理第1级输入参数的个数N=2j;(4)根据各个权值的系数Mi的结果查存储在计算装置内的余数表,得到ri(i=0,1…n-1):当Mi=1(i=0~n-1)时获取余数表中除数D所在行和Mi对应的权值2i所在列的值ri,当Mi=0时,ri=0;(5)确定流水线处理第1级的输入参数:由(3)知流水线处理的第1级有N个输入参数,由(2)知被除数被表示成二进制时的位数n,那么这N个输入参数R1i(i=0…N-1)中的n个参数R1i(i=0…n-1)即为(4)中所得到的ri(i=0,1…n-1)的值,剩下的N-n个输入值均为0,即R1i=0(i=n,…N-1);(6)确定流水线级数及每级子处理程序的数量:由(3)知第1级流水线处理输入参数的个数N=2j,则N=2q,即j=2q-1,那么流水线处理级数为q,第1级流水线处理有2q-1个子处理流程,以此类推,第k级流水线处理有2q-k+1个输入参数,有2q-k个子处理流程;(7)确定子处理流程的输入参数:每个子处理流程有两个输入参数,对于第k级流水线处理总共有2q-k+1个输入参数Rki(i=0,1,…,2q-k+1-1),将这2q-k+1个输入参数两两分组,作为2q-k个子处理流程的输入,即第i-1,i(i=2,4,6,…2q-k+1)个参数Rk(i-2),Rk(i-1)作为第i/2个子处理流程的两个输入参数;(8)开始子处理流程的计算过程:首先将这两个输入参数相加,和必定大于等于0且小于两倍的除数,然后判断和与除数的大小,如果所得的和小于除数,那么把相加后的和作为下一级的输入参数,如果所得的和大于等于除数且小于两倍的除数,那么用和减去除数,将这个差值作为下一级的输入参数;(9)判断是否所有级的子处理流程均处理完毕,没有转步骤(7),否则最终计算结果即为余数的值。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉飞思科技有限公司,未经武汉飞思科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810097696.9/,转载请声明来源钻瓜专利网。
- 上一篇:扫描变换图像滤波
- 下一篇:频谱扩展通信装置和频谱扩展通信方法