减少二进制字中“1”值位数的系统、方法和程序产品.pdf

上传人:小** 文档编号:651857 上传时间:2018-03-01 格式:PDF 页数:11 大小:530.72KB
返回 下载 相关 举报
摘要
申请专利号:

CN96122715.X

申请日:

1996.09.25

公开号:

CN1155701A

公开日:

1997.07.30

当前法律状态:

终止

有效性:

无权

法律详情:

未缴年费专利权终止IPC(主分类):G06F 17/00申请日:19960925授权公告日:20021211终止日期:20100925|||授权|||公开|||

IPC分类号:

G06F17/00

主分类号:

G06F17/00

申请人:

三星电子株式会社;

发明人:

金泰成

地址:

韩国京畿道

优先权:

1995.09.25 KR 31639/95

专利代理机构:

柳沈知识产权律师事务所

代理人:

马莹

PDF下载: PDF下载
内容摘要

在一数据处理系统中,将预定位数的第3二进制字表示成第1和第2二进制字,先存贮与第3二进制字相同的第1字和具有该预定位数的零位的第2字,再从第3二进制字的最低有效位开始,检索在其中二进制“1”值的连续幂次位对,然后将每个第1和第2字增加2的检出的连续幂次位对的最低次幂的乘方值,最好,对在第3二进制字中存在的其它二进制“1”值的较高位的连续幂次位对重复进行检索和增值的步骤。

权利要求书

1: 一种用于确定表示具有预定位数的第3二进制字的第1和第2二进 制字的方法,该预定位数的范围是从一最低有效位到一最高有效位,该第1 和第2二进制字包含的具有二进制“1”值的位数比第3二进制字包含的少, 该方法在一数据处理系统中所执行的步骤包括: 在该数据处理系统中存贮与第3二进制字相同的第1字; 在该数据处理系统中存贮具有预定数目的零位的第2字; 从第3二进制字的最低有效位开始,在第3二进制字中检索具有二进制 “1”值的一连续幂次位对;和 对于在该二进制字中存在的具有二进制“1”值的连续幂次位对,将第 1和第2字的每一个增加2 连续幂次位对的最低幂次 。
2: 根据权利要求1的方法: 其中存贮第1字的所述步骤包括在该数据处理系统中的第一存贮单元中 存贮第1字的步骤; 其中存贮第2字的所述步骤包括在该数据处理系统中的第二存贮单元中 存贮第2字的步骤;和 其中所述增值步骤包括: 计算存贮在第一存贮单元中的第1字与2 连续幂次位对的最低幂次 的第一和; 在第一存贮单元中存贮计算的和; 计算存贮在第二存贮单元中的第2字与2 连续幂次位对的最低幂次 的第二和;和 在第二存贮单元中存贮计算的第二和。
3: 根据权利要求2的方法,进一步包括在数据处理系统中的第三存贮 单元中存贮第3字的步骤,并且其中所述检索步骤包括检索在第三存贮单元 中存贮的第3字的步骤。
4: 根据权利要求1的方法,进一步包括步骤: 对于在第3二进制字中具有二进制“1”值的第二连续幂次位对,将第 1和第2二进制字的每一个增加2 连续幂次位对的最低幂次 。
5: 一种用于确定表示具有预定位数的第3二进制字的第1和第2二进 制字的数据处理系统,该预定位数的范围是从最低有效位到最高有效位,该 第1和第2二进制字的每一个包含的具有二进制“1”值的位数比第3二进 制字包含的少,该数据处理系统包括: 第一存贮装置,用于存贮具有该预定位数的第1二进制字; 第二存贮装置,用于存贮具有该预定位数的第2二进制字; 将存贮的第1二进制字设置成第3二进制字和将存贮的第2二进制字设 置成零的装置; 在第3二进制字的最低有效位开始,对在第3二进制字中的具有二进制 “1”值的连续幂次位对进行检索的装置;和 响应于所述第一和第二存贮装置和响应于所述检索装置,对于在第3二 进制字中存在的具有二进制“1”值的连续幂次位对,将第1和第2二进制 字的每一个字增加2 连续幂次位对的最低幂次 的装置。
6: 根据权利要求5的数据处理系统,进一步包括第一、第二和第三存 贮单元,和: 其中用于存贮第1字的所述装置包括在所述第一存贮单元中的用于存贮 第1字的装置; 其中用于存贮第2字的所述装置包括在所述第二存贮单元中的用于存贮 第2字的装置;和 其中用于增值的所述装置包括; 用于计算存贮在第一存贮单元中的第1字与2 该连续幂次位对的最低幂次 的第一 和的装置; 在所述第一存贮单元中存贮该计算的和的装置; 用于计算存贮在第二存贮单元中的第2字与2 该连续幂次位对的最低幂次 的第二 和的装置;和 在所述第二存贮单元中存贮计算的第二和的装置。
7: 根据权利要求6的数据处理系统,进一步包括第三存贮单元和在第 三存贮单中存贮第3字的装置,以及其中所述用于检索的装置包括检索在第 三存贮单元中存贮的第3字的装置。
8: 一种计算机程序产品,包括: 其内具有计算机可读程序代码装置的计算机可读存贮介质,用于确定表 示具有预定位数的第3二进制字的第1和第2二进制字,该预定位数的范围 是从最低有效位到最高有效位,该第1和第2二进制字包含的具有二进制 “1”值的位数比第3二进制字包含的少,所述计算机可读程序代码装置包 括; 用于存贮与第3二进制字相同的第1字的第一计算机可读程序代码装 置; 用于存贮具有预定位数的零位的第2字的第二计算机可读程序代码装 置; 用于从第3二进制字的最低有效位开始,检索在第3二进制字中的具有 二进制“1”值的连续幂次位对的第三计算机可读程序代码装置;和 响应所述第一、第二和第三计算机可读程序代码装置,对于在该二进制 字中存在的具有二进制“1”值的连续幂次位对,将第1和第2字的每一个 增加2 连续幂次位对的最低幂次 的第四计算机可读程序代码装置。
9: 根据权利要求8的计算机程序产品: 其中所述第一计算机可读程序代码装置包括用于在数据处理系统中的 第一存贮单元中存贮第1字的计算机可读程序代码装置; 其中所述第二计算机可读程序代码装置包括用于在数据处理系统中的 第二存贮单元中存贮第2字的计算机可读程序代码装置;和 其中所述第三第四计算机可读程序代码装置包括: 用于计算存贮在第一存贮单元中的第1字与2 连续幂次位对的最低幂次 的第一和 的第五计算机可读程序代码装置; 用于在第一存贮单元中存贮计算的第一和的第六计算机可读程序代 码装置; 用于计算存贮在第二存贮单元中的第2字与2 连续幂次位对的最低幂次 的第二和 的第七计算机可读程序代码装置;和 用于在第二存贮单元中存贮计算的第二和的第八计算机可读程序代 码装置。
10: 根据权利要求9的计算机程序产品,进一步包括在第三存贮单元中 存贮第3字的第九计算机可读程序代码装置,以及其中所述第三计算机可读 程序代码装置包括用于检索在第三存贮单元中存贮的第3字的第十计算机可 读程序代码装置。
11: 在一数据处理系统中存贮一二进制字的方法,包括步骤: 在所述数据处理系统中存贮第1和第2二进制字,该第1和第2二进制 字包含的具有二进制“1”值的位数比该二进制字包含的少。

说明书


减少二进制字中“1”值位数 的系统、方法和程序产品

    本发明涉及数据处理系统、方法和计算机程序产品,特别是用于处理二进制字的数据处理系统、方法和计算机程序产品。

    在数据处理系统中,通常正数能由多种方法表示,但是普通数据处理硬件一般将数表示为二进制字,即具有位“1”或“0”的字。以这种方式在硬件中表示的数据会影响计算速度,例如,当在逻辑运算器,例如加法器、乘法器、比较器及类似电路中利用这种表示时会影响计算速度。例如,在乘法运算中位值“1”与位值“0”有不同的作用效果。两个8位二进制数01001010和00000101相乘时,乘法运算如下各行:

    其中对在乘数00000101中具有二进制“1”值的每位进行加运算。通常在乘数中有更多位具二进制“1”值,那就要完成较大次数的加。相应地,乘法的效率取决于在乘数中具有二进制“1”值的位的数目。

    经以上简述,本发明的目的是提供以能提高运算操作效率的形式表示二进制数的系统、方法和计算机程序产品。

    在根据本发明的系统,方法和计算机程序产品中具备这种和其它目的、特点和优点,其中确定第1和第2二进制字,该第1和第2二进制字表示一具有预定位数的第3二进制字,该预定位数地范围是从最低有效位到最高有效位,该第1和第2二进制字的每一个都包括比第3二进制字包含的要少的具有二进制值“1”的位数。这样,该第1和第2可以代替第3二进制字用于计算操作,以便更有效地执行计算操作。

    特别是,根据本发明,在一数据处理系统中是通过存贮与第3二进制字相同的第1字和存贮具有预定数目的零位来确定表示具有预定位数的第3二进制字的第1和第2二进制字。在第3二进制字的最低有效位开始,在第3二进制字中检索具有二进制“1”值的连续幂次位的对。对于具有二进制字中的二进制“1”值的连续幂次位对,将第1和第2字的每一个增加2连续幂次 位对的最低幂次。对于在具有二进制“1”值的第3二进制字中的第2连续幂次位对,最好将第1和第2字的每一个增加2连续幂次位对的最低幂次。从而提供一种用于确定包含具有二进制“1”值的数目要比第3二进制字包含的要少的第1和第2二进制字的迭代技术。

    用于确定表示第3二进制字的第1和第2二进制字的一数据处理系统包括:第一存贮装置,用于存贮具有预定位数的第1二进制字;和第二存贮装置,用于存贮具有预定位数的第2二进制字;该系统还包括:能将存贮的第1二进制字置成第3二进制字和将存贮的第2二进制字置成零的装置;检索装置,用于在第3二进制字的最低有效位开始,对在第3二进制字中具有二进制“1”值的连续幂次位对进行检索;响应于第一和第二存贮装置和响应于检索装置,以便对第1和第2二进制字的每一个进行增值的装置,用于对于该第3二进制字中具有二进制“1”值的连续幂次位对,将第1和第2二进制字的每一个增加2连续幂次位对的最低幂次。

    根据本发明的计算机程序产品包括其内具有计算机可读程序代码装置的计算机可读存贮介质,用于确定表示具有一预定位数的第3二进制字的第1和第2二进制字,该预定位数的范围从最低有效位到最高有效位,该第1和第2二进制字具有的二进制1”值的位数比第3二进制字的少。该计算机可读程序代码装置包括:用于存贮与第3二进制字相同的第1字的第一计算机可读程序代码装置和用于存贮具有预定位数的零位的第2字的第二计算机可读程序代码装置;用于检索的第三计算机可读程序代码装置,该装置从第3二进制字的最低有效位开始在第3二进制字中检索具有二进制“1”值的连续幂次位对;对第1和第2二进制字的每一个进行增值的第四计算机可读程序代码装置,用于响应于第一、第二和第三计算机可读程序代码装置,对于第3二进制字中具有二进制“1”值的连续幂次位对,将第1和第2字的每一个增加2连续幂次位对的最低幂次。从而提供了利用减少的具有二进制“1”值的位数表示一二进制字的系统,方法和程序产品。

    已经陈述了本发明的某些目的和优点,参照附图及以下详细描述将会更全面理解其它优点。附图中:

    图1是根据本发明的用于确定表示第3二进制字的第1和第2二进制字的流程图。

    现在参照附图更全面地描述本发明,附图所示是本发明的实施例。然而该发明可以许多的不同形式实施,而不应将所陈述实施例理解为是对本发明的限制。这些实施例是用于完全彻底地披露本发明并使本技术领域的技术人员了解本发明的范围。在图中类似序号标志着类似单元。

    对于M个位的字X来说,具有二进制“1”值的最多位数是M。如果假设X为正数,并由2的补码格式表示,则最高有效位一般具有二进制“0”值。

    表示正数的二进制字A、B和X可由2幂次和加以定义:

    A=aM-12M-1+aM-22M-2+…+a0  ……

    B=bM-12M-1+bM-22M-2+…+b0  ……

    X=xM-12M-1+xM-22M-2+…+x0  ……

    对于以2的补码格式表示的正数,每个字的最高有效位是零,即xm-1=am-1=bm-1=0。

    二进制字X可以表示为:

    X=a-b(A>0,B>0,X>0,A>X,A>B)

    所以,可以用两个二进制字A和B的差表示X,这样同二进制字X的具有二进制值“1”的位数相比二进制字A和B具有相同的或较少的二进制“1”值的位数,从而使这两个二进制字A和B替代二进制字X以便于流水线计算。

    本领域的技术人员可以理解,利用在一数据处理系统中执行软件,利用特定用途的硬件或利用特定用途的硬件和软件的组合就可以实现本发明的一个或多个(包括全部)的单元/步骤。图1是根据本发明的方法、系统和计算机程序产品的流程图。应理解,流程图中的每一块和流程图中这些块的组合都可以通过计算机程序指令加以执行。这些计算机程序指令可以装载到计算机或其它可编程数据处理装置中以形成一处理机,这样,在计算机或其它可编程数据处理装置上执行的指令就形成了用于执行在流程块或多个块中指定功能的装置。这些计算机程序指令也可以存贮在计算机可读存贮器中来指示计算机或其它可编程数据处理装置执行特定的功能,这样,存贮在计算机可读存贮器中的指令就形成了包括能执行流程块或多个块中规定的功能的指示装置的产品。该计算机程序指令也可以装载到计算机或其它可编程数据处理装置中,以使得在计算机或其它可编程装置中执行一系列操作步骤来产生计算机执行的处理过程,这样,在计算机或其它可编程装置上执行的指令就提供了用于实现在流程图中的一块或多个块中规定功能的步骤。

    相应地,这些流程图中的块支持用于完成特定功能的装置的组合、用于完成特定功能的步骤的组合和用于完成该特定功能的程序指令装置。还应理解,在流程图中每块和流程图中多个块的组合,可通过能完成特定功能或步骤基于特定用途硬件的计算机系统或特定用途的硬件与计算机指令的组合来加以实现。

    图1示出用于确定表示一第3M个位二进制字的第1和第2M个位二进制字的操作,该操作使得与第3二进制字比较,第1和第2二进制字中具有二进制“1”值的位数被降低了。首先,与第3二进制字X相同的一二进制字被存贮作为第1二进制字A(块S1),并且全部位是零的一二进制字被存为第2二进制字B(块S2)。从最低有效位开始,在第3二进制字X中检索具有二进制“1”值的连续幂次位对(块S3)。如果存在二进制“1”值的连续幂次位对,则将第1和第2二进制字的每一个增加2连续幂次位对的最低幂次的乘方值(块S4,S5)。

    然后,继续对第3二进制字X进行检索以找到具有二进制“1”值的另一连续幂次位对(块S6)。本领域的技术人员可以理解,这可以由多种方法完成,例如,通过直接检验二进制字X,通过检验第1二进制字A一即它具有更多的没有被先前增值操作改变的与二进制字X中的相一致的有效位,等等。如果发现了另一对连续幂次位,那么就增加该第1二进制字A和第2二进制字B(块S4,S5)。当不存在更多的二进制“1”值的连续位时,操作就完成了,留下第1二进制字A和第2二进制字B,这样,第1二进制字A和第2二进制字B的差就表示第3二进制字X(块S7)。

    例如,对于具有二进制值“00110011”的第3二进制字X来说,第1二进制字A初始化为“00110011”,和第2二进制字B初始化为“00000000”。在第3二进制字X中的相应于20和21的位上存在二进制值“1”的第一连续幂次位对,这样第1二进制字A和第2二进制字B被增加20,这样第1二进制字A是“00110100”和第2二进制字B是“00000001”。在第3二进制字X中相应于24和25处的位存在二进制“1”的第二连续幂次位对,这样,第1二进制字A和第2二进制字B增加24,如此,第1二进制字A更新为“01000100”和第2二进制字B更新为“00010001”。

    如果第3二进制字X表示一负数,通过取2的补码,X可被转换为正数,然后以如上方法可确定第1二进制字A和第2二进制字B。该负数然后可由如下关系式确定:

    -(-X)=-(A-B)  (A>0,B>0)表1示出本发明的表示第3二进制字X的第1二进制字A和第2二进制字B,本发明的二进制字X对应的十进制数从0到31:

                    表1十进制数        X      =    A     -    B 0:         00000000  = 00000000 - 00000000 1:         00000001  = 00000001 - 00000000 2:         00000010  = 00000010 - 00000000 3:         00000011  = 00000100 - 00000001 4:         00000100  = 00000100 - 00000000 5:         00000101  = 00000101 - 00000000 6:         00000110  = 00001000 - 00000010 7:         00000111  = 00001000 - 00000001 8:         00001000  = 00001000 - 00000000 9:         00001001  = 00001001 - 0000000010:         00001010  = 00001010 - 0000000011:         00001011  = 00010000 - 0000010112:         00001100  = 00010000 - 0000010013:         00001101  = 00010001 - 0000010014:         00001110  = 00010000 - 0000001015:         00001111  = 00010000 - 0000000116:         00010000  = 00010000 - 0000000017:         00010001  = 00010001 - 0000000018:         00010010  = 00010010 - 0000000019:         00010011  = 00010100 - 0000000120:         00010100  = 00010100 - 0000000021:         00010101  = 00010101 - 0000000022:         00010110  = 00100000 - 0000101023:         00010111  = 00100000 - 0000100124:         00011000  = 00100000 - 0000100025:         00011001  = 00100001 - 00001000

      26:         00011010  = 00100010 - 00001000

      27:         00011011  = 00100000 - 00000101

      28:         00011100  = 00100000 - 00000100

      29:         00011101  = 00100001 - 00000100

      30:         00011110  = 00100000 - 00000010

      31:         00011111  = 00100000 - 00000001

    如表1所示,本发明能够减少用于表示二进制字X的所需二进制“1”值的位数。这样,在计算操作中,表示第3二进制字X的第1和第2二进制字A和B可以代替第3二进制字,从而简化了操作过程。

    在附图和说明书中,虽然是利用特定术语披露了本发明的典型实施例,但它们仅用于一般发明思想的描述并非用于限制本发明,本发明的范围由所附权利要求确定。

减少二进制字中“1”值位数的系统、方法和程序产品.pdf_第1页
第1页 / 共11页
减少二进制字中“1”值位数的系统、方法和程序产品.pdf_第2页
第2页 / 共11页
减少二进制字中“1”值位数的系统、方法和程序产品.pdf_第3页
第3页 / 共11页
点击查看更多>>
资源描述

《减少二进制字中“1”值位数的系统、方法和程序产品.pdf》由会员分享,可在线阅读,更多相关《减少二进制字中“1”值位数的系统、方法和程序产品.pdf(11页珍藏版)》请在专利查询网上搜索。

在一数据处理系统中,将预定位数的第3二进制字表示成第1和第2二进制字,先存贮与第3二进制字相同的第1字和具有该预定位数的零位的第2字,再从第3二进制字的最低有效位开始,检索在其中二进制“1”值的连续幂次位对,然后将每个第1和第2字增加2的检出的连续幂次位对的最低次幂的乘方值,最好,对在第3二进制字中存在的其它二进制“1”值的较高位的连续幂次位对重复进行检索和增值的步骤。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1