CN1752923B - 混q进制、进位行数字工程方法和混q进制、进位行计算机 - Google Patents
混q进制、进位行数字工程方法和混q进制、进位行计算机 Download PDFInfo
- Publication number
- CN1752923B CN1752923B CN 200510113118 CN200510113118A CN1752923B CN 1752923 B CN1752923 B CN 1752923B CN 200510113118 CN200510113118 CN 200510113118 CN 200510113118 A CN200510113118 A CN 200510113118A CN 1752923 B CN1752923 B CN 1752923B
- Authority
- CN
- China
- Prior art keywords
- register
- computing
- complete
- yard
- carry
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Complex Calculations (AREA)
- Control By Computers (AREA)
Abstract
本发明涉及数字工程方法和计算机领域,提出一种新的数字工程方法,显著提高运算速度,而且大大降低笔算的出错率。本发明采用“混Q进制、进位行方法”:将参与加减运算的K个普通Q进制数的正负符号,分配到相应各个数的每一位上去,然后对K个数一起进行混Q进制的求和。从最低位开始或各位同时“按位加”,和数存入下一运算层;同时所得“混Q进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处。经过如此反复运算,直至运算层中,运算后仅获得一个数为止。则最后所得数,即为所求混Q进制加法和数。本发明同时提供了混Q进制、进位行计算机技术方案。
Description
技术领域
本发明涉及数字工程方法和计算机领域,特别是计算机的运算器
背景技术
数字工程包括数控机床、大中型数字化设备和数字系统工程等等。本发明中“数字工程”是专指“数字计算系统工程”。它不是解决一个个具体的算题、或定理证明、或几何问题、或某种数学思想,而是解决四则运算法则等的数字工程实现技术方案。它与密切相关。众所周知,“计算”有好多种,除“近似计算”、“模拟计算”及“无工具计算”(心算、指算、口算等,包括相应的口诀、速算、估算)外,则为“采用工具的数字计算”。人类历史上,“采用工具的数字计算”包括笔算、珠算、机械算、电算,以及筹算等。现代仅剩下三种,这就是数字电算、珠算、笔算。与此相应的“数字计算系统工程”也就仅有三种:数字计算机;算盘;采用笔和纸进行笔算的“数字计算系统工程”,简称为“笔算工程”。
四则运算是数的最基本运算。正如恩格斯所说:“四则(一切数学的要素)。”加法又是四则运算的最基本的运算。因此,我们理所当然应当对四则运算,尤其是对加法运算给予特别的关注。当前数字工程方法中的四则运算,首先是加法,有许多不尽如人意之处。主要表现为运算速度慢;在减法中,未能充分利用负数的作用,而且,不能“连减”。尤其在加减联合运算中,不能一步到位;在乘法中,加法的缺点更加扩大严重;在除法中,上述缺点依旧。总之,在最小的数体——有理数体中,四则运算情况并不满意。
在笔算数字工程中,对运算的解剖,表明存在一些隐含的操作程序,以至产生“隐
式一 式二
患”。以“二数相加”为例,算式如式一。123456+345678=469134[文中凡未标明数制的数,均指普通十进制数。下同。]其中,十位上的和数3,解剖一下。其微程序操作是: 个位上来的进位(见标志)十位上5、7二数字与低位进位相加,即(5+7+1)。取其和的个位。上列(5+7+1)和的进位送到高位(见标示)。其余各位情况类似。又如例二,设三数求和,算式如式二78+297+259=634。如图可见,上述情况更为加重。显然,存在下列缺点:
a.进位标示困难。若用小数字表明,则易混淆且字面积受限。特别是表456789时就更烦人;若以“.”符写在数字间,则易与小数点混淆且表示456789也不便;若以手指数数,则速度慢且不方便;若心算,则费脑力且易错。总之,比较讨厌,易出错。
b.一般二数相加时,每一位上要有三个数相加求和。于是,需三重运算。三及三以上个数相加求和时,则更不方便。
c.验算困难。一般采用重做一遍,费时费力。
减法比加法麻烦。而且不能在同一竖式中“连减”,必须断开。特别在加减联合运算时,不能一步到位。乘除法中,这类情况更为严重。而且,加减乘除运算格式不统一,除法时另起炉灶。
另一方面,在电子计算机数字工程中,同样有大量的数值运算。这些数一般均采用普通二进制数来表示。其负数常以原码、反码、补码、移码之类来表示。在现有计算机中运算均以二个数运算,而无法实现“多重运算”。所谓“多重运算”,是指多于二个数同时进行加减。在采用其他普通Q进制等普通数制的电子计算机中,存在相应的许多复杂性。[Q为自然数。]
此外,在算盘数字工程中,同样有大量的数值运算。这些数一般采用普通二进制与普通五进制的“联合Q进制”数。因此,运算口诀繁杂,而且存在相应的一些复杂性。
发明内容
本发明提出一种新的数字工程方法,“混数进制、进位行数字工程方法”。当不致误解时,也简称为“混数进制、进位行方法”。进一步,简称为《混进方法HJF》。混数进制包括混Q进制、增Q进制、偏Q进制及称Q进制。Q为自然数。“混进方法HJF”显著提高运算速度;同时加强运算正确性的保障,在“笔算工程”中,还大大降低笔算的出错率。
本发明同时提出了,采用上述“混数进制、进位行方法”的计算机技术方案。在现有研制技术的基础上,在设备量相近的情况下,显著提高计算机,特别是电子数字计算机的运算速度。
根据本发明的一个方面,提供一种混Q进制、进位行数字工程方法。采用“混Q进制”数,以“混数进制、进位行方法”运算;运算可为下列四种方案之一;方案一:(适于计算机、笔算工程中)①普通Q进制数编码或另行转换为混数进制数;②混数进制运算(“对冲”、“划Q”、“累加”);③混数进制数译码或另行转换为普通Q进制数;方案二:(适于计算机、算盘中;也可用于笔算工程,也可不用;)①普通Q进制数编码或另行转换为混数进制数;混数进制数编码为“编码全一进制数”;②“编码全一进制”运算(“对冲”、“划Q”、“累加”);③“编码全一进制数”译码为混数进制数;混数进制数译码或另行转换为普通Q进制数;方案三:(适于计算机中)①普通Q进制数编码或另行转换为混数进制数;混数进制数编码或另行转换为{0,±1}二进制(其特况为普通二进制)数;②{0,±1}二进制运算(“对冲”、“划Q”、“累加”);③{0,±1}二进制数译码或另行转换为混数进制数;混数进制数译码或另行转换为普通Q进制数;方案四:(适于计算机中)①普通Q进制数编码或另行转换为混数进制数;混数进制数编码或另行转换为“编码{0,±1}二进制数”;②“编码{0,±1}二进制”运算(“对冲”、“划Q”、“累加”);③“编码{0,±1}二进制数”译码或另行转换为混数进制数;混数进制数译码或另行转换为普通Q进制数;本发明中,采用方案一、方案二来展示。“混数进制、进位行数字工程方法”的每种方案,均包括以下三种步骤之一。第一种步骤:
第1步,设K个普通Q进制数参予加减运算,K为≥2的整数,Q为自然数;将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去;
第2步,对K个数中的二个数,进行混Q进制的求和运算;从最低位开始或各位同时按位相加,即在某一位上,取这二个数按位相加;采用“对冲”、“划Q”、“累加”,得到 这二个数该位“按位加”的和数;将此和数记入下一运算层,作为“部份和”数;同时所得“混Q进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;
第3步,在上述某位的相邻高位上,重复第2步的运算;如此反复,直至二数最高位也已运算为止;当采用并行运算时,二数各位同时进行第2步及第3步运算,则本步可跳越过去;当采用串并行运算时,则类似处理;
第4步,取K个数中的另二个数,进行第2步及第3步运算;如此反复,直至K个数或运算层中全部数均取完为止;当仅剩下一个数时,则直接移至下一运算层作为“部份和”数;
第5步,在下一个运算层中,将上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后仅获得一个数为止;则最后所得数,即为所求K个数混Q进制加法运算和数;
或者,采用以下第二种步骤:
第1步,设K个普通Q进制数参予加减运算,K为≥2的整数,Q为自然数;将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去;
第2步,从最低位开始,即在某一位上,取二数或K个数同时相加;采用“对冲”、“划Q”、“累加”;即在二数时,得到二个数该位“按位加”和数;将此和数记入下一运算层,作为“部份和”数;同时所得“混Q进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;
第3步,在上述某位上,取K个数中的另二个数,重复第2步的运算;如此反复,直至K个数或运算层中全部数均取完为止;当仅剩下一个数时,则直接移至下一运算层作为“部份和”数;
当采用同一位上各数同时运算时,同时进行第2步及第3步运算,则本步可跳越过去;这时在同一位上,对n个和为0的数先进行“对冲”;然后,对n个和为mQ的数进行“划Q”;n为≥2的整数,m为整数;所得“混Q进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;同一位上,余下各数进行“累加”,或者直接移至下一运算层;累加采用≥2的“多数累加”;当采用普通二数“累加”时,则顺序串行累加;
第4步,在上述某位的相邻高位上,重复第2步及第3步的运算;如此反复,直至K个数最高位也已运算为止;
第5步,在下一个运算层中,对上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后仅获得一个数为止;则最后所得数,即为所求K个数混Q进制加法运算和数;
或者,采用以下第三种步骤:
第1步,设K个普通Q进制数参予加减运算,K为≥2的整数,Q为自然数;将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去;
第2步,采用所谓“二维运算”;即,在K个数的各位上,同时进行运算;并且同时对每一位上,n个和为0的数进行“对冲”;n为≥2的整数;
第3步,采用所谓“二维运算”;即,在K个数的各位上,同时进行运算;并且同时对每一位上,n个和为mQ的数进行“划Q”;n为≥2的整数,m为整数;所得“混Q进位”, 则存放到下一运算层的,任一数据行相邻高位的空位或0位处;
第4步,采用所谓“二维运算”;即,在K个数的各位上,同时进行运算;并且同时对每一位上,余下各数进行“累加”;或者直接移至下一运算层;累加采用≥2的“多数累加”;当采用普通二数“累加”时,则顺序串行累加;
第5步,在下一个运算层中,将上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后仅获得一个数为止;则最后所得数,即为所求K个数混Q进制加法运算和数。
混Q进制、进位行数字工程方法,其运算为“混Q进制”运算;对于含0的{0,±1,…,±(Q-1)}Q进制,Q为>1的整数,称为“含0混Q进制”。符号表示为{含0,Q*};对于不含0的{±1,±2,…,±Q}Q进制,Q为自然数,称为“不含0混Q进制”。符号表示为{不含0,Q*}。含0和不含0的混Q进制,合起来统称为“混Q进制”,Q为自然数。符号表示为{Q*}。当不致误解时,“含0混Q进制”亦可称为“混Q进制”,亦以符号{Q*}来表示。
混Q进制、进位行数字工程方法,其运算采用“进位行方法”;在运算过程中,将产生的进位存放在相邻高位“进位行”中,即进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,与“按位和”一起进行运算。
混Q进制、进位行数字工程方法,对K个混Q进制数中的n个数进行求和运算时,如果在某一位上,其中n个运算数的“按位和”为零,但产生进位m(与n个数该位上的和数符号一致);n为≥2的整数,m为整数;进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,将n个运算数的该位均以逻辑方式置“0”,不再参加以后的运算;这称为“划Q”;“划Q”中m=0时,称为“对冲”;或者,不采用“对冲”及“划Q”。
混Q进制、进位行数字工程方法,所述运算数是混Q进制数,Q为自然数。可以不编码;可以混数进制数编码;也可以全一码来编码,即将各个混Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0。总位数则为Q或(Q-1)位;同时,将S的数符,即表示该位的数为正或负,作为相应全一码中每一位上的数符{参见第三部分增Q进制及全一码}。当采用全一码来编码混Q进制数时,n个数加法仅为n个数中1或1的不重复排列;其全一码编译可以定码长或变码长。
根据本发明的另一个方面,提供一种混Q进制、进位行计算机设计方案。包括输入逻辑,CPU中央处理器,外存,输出逻辑,控制台,输出转换逻辑组成。CPU中央处理器由内存、混Q运算控制逻辑组成。混数进制运算可为前述四种方案之一;本发明计算机中,采用方案二来展示;其中,K重运算器及控制器组成混Q运算控制逻辑。普通Q进制数经移位寄存器输入逻辑,获得的混Q进制数至K重运算器;K重运算器中,混Q进制数经K重运算获得混Q进制数的结果;经由编码器输出转换逻辑,以混Q进制数、或普通Q进制数、或普通十进制数通过输出逻辑输出;控制器协调控制整个运算控制的逻辑。
“K重运算器”由累加器∑i和寄存器网、对冲网、划Q网组成;i为序数。当用于计算机,特别是电子计算机运算器中时,数字工程方法可采用前述第一种或第二种或第三种步骤。这里,采用第三种步骤来展示。
在运算过程中,首先将普通Q进制数化为混Q进制数一般形式。将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去。普通Q进制数输入移位寄存器输入逻辑, 获得的混Q进制数输入至K重运算器。K重运算器中,为每个寄存器及其相应的累加器∑i的每一位,分配一个符号位。该符号位为普通二态触发器。K个寄存器存放输入的K个混Q数。K重运算器中采用“二维运算”。即,在数的各位上进行运算;并且每一位上各数,亦同时进行先“对冲”、后“划Q”、再“累加”。当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后仅获得一个数为止。最后,再经累加器∑i输出所求和数。当K值较大时,上述“K重运算器”可以进行分级、分组放大。
对K个数中的n个数进行求和运算时,如果在某一位上,其中n个运算数的“按位和”为零,但产生进位m(与n个数的和数符号一致);n为≥2的整数,m为整数;进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,将n个运算数的某位均以逻辑方式置“0”,不再参加以后的运算;这称为“划Q”;“划Q”中m=0时,称为“对冲”;或者,不采用“对冲”及“划Q”。
计算机中所述运算数是混Q进制数,Q为自然数。可用全一码编码;或以混数进制数编码;或不编码。以全一码来编码时,即将各个混Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0。总位数则为Q或(Q-1)位;同时,将S的数符,即表示该位的数为正或负,作为相应全一码中每一位上的数符。当采用全一码来编码混Q进制数时,n个数加法仅为n个数中1或1的不重复排列;其全一码编译可以定码长或变码长;本发明计算机中,采用定码长来展示。
当采用全一码编码时,K重运算器中的累加器,可以省略为全一码移位寄存器。该寄存器专门存放结果和数,又称为“和数寄存器”。这时,如采用上述“二维运算”,则称为“三维运算”。相应的运算器,则称为“三维运算器”。
计算机中所采用的元器件为P值元器件,P是数元集的基数,P为>1的整数;或者常取二值元器件;或者取三值元器件。
附图说明
图1是混Q进制计算机总逻辑框图。
图2是混Q进制、进位行计算机(运算控制)逻辑框图;
图3是K重运算器第I位的逻辑框图;
图4是对冲逻辑(对冲器)的逻辑框图;
图5是划Q逻辑(划Q器)的逻辑框图;
具体实施方式
第一部分混Q进制、进位行数字工程方法;第二部分混Q进制、进位行计算机;第三部分增Q进制及全一码;第四部分混十进制{十*}、全一码、进位行计算机。
第一部分混Q进制、进位行数字工程方法
(本部分为后面“第二部分混Q进制、进位行计算机”的预备知识。它包括:1.《进位行方法》;2.混数及混数进制;3.《混进方法HJF》及其混十进制{十*}四则运算;4.《混十进制》{十*}与《普通十进制》{十}的关系;5.结论)
1.《进位行方法》
1.1进位与《进位行方法》
在电子计算机等数值运算中,运算速度提高的关键之一,就在于“进退位”。简称“进位”。进位的获得,进位的存贮以及进位的参予运算都是至关重要的。“进位”就是争“速度”。在笔算工程中,还直接影响到“出错率”。本部分以笔算工程为例。
所谓《进位行方法》就是,在运算过程中,将产生的进位存放在参予运算与“按位和”数同等的位置上,然后与“按位和”一起进行运算。通常同运算层中二数相加时,将各位上的进位排列成一行,称为“进位行”。(运算层的概念,见下节。)举例如下,设二普通十进制数求和,算式以竖式求和。如式三123456+345678=469134个位运算(6+8)=14,其进位1写于下一行的高一位上。依此类推。式中二数相加时,各位上不计进位的求和,称为“按位加”。其和称为“按位和”。按位和的数据行,称为“行”。行与进位行组成“运算层”。式中一些“+”号已省去。以后可以知道,在混Q进制、进位行数字工程方法《混进方法HJF》中,除第0运算层外,各个“运算层”只存在一种运算,这就是“+”。故可以不必在这些运算层中写出“+”号。
1.2《进位行方法》分析
式三 式四 式五
采用《进位行方法》的加法运算由上节可知:
①二数相加时,每一位上只有二个数相加;在进位行中直接标示进位,不存在任何困难;
②验算十分方便。
[引理一]二数相加时,任意位上要么有进位记为1,要么无进位记为0;
[引理二]二数相加时,任意位上的和可为0~9之一。但是,当该位上有向高位进位时,该位上的和只能为0~8之一,而不能为9。
由[引理一]和[引理二]可得:
[定理一]二数相加时,当且仅当某位上没有向高位进位时,该位上的和才可能出现9。
1.2.2层次概念及运算层
设二数求和。算式为式四、式五5843029+4746979=10590008。由式四可见,运算是分层次进行的。运算层将一个运算解剖成子运算。每一运算层中,又将子运算解剖成微运算。微运算仅完成一项简单运算。这就是运算的“层次”概念。“层次”概念是数学中的基本概念,《进位行方法》正是建立在此基础上。以往的加法运算方法,本质上也隐含“层次”概念。因此,《进位行方法》中的“层次”,从总体上看并未增加运算的复杂性。反之,以往 的方法由于隐含了“层次”,反而进一步增加了运算的复杂性。这一点,也进一步造成运算速度被降低。二者对比,就会一清二楚。
在《进位行方法》中,二数相加的各个运算层,除第0运算层外,可以合并为一个运算层。如式五。进一步分析如下。
1.2.3唯一的运算层
二数相加时,特别情况下会出现多次运算层。各层有如下关系成立。
[引理三]二数相加时,当某位前一运算层上有进位时,其后各运算层上均不可能出现进位。(由引理一、二得)
[引理四]二数相加时,当某位后一运算层上有进位时,其前各运算层上必无进位。(由引理一、二得)
[定理二]二数相加时,同一位各运算层上,要么都无进位,要么只能有一个进位。(由引理三、四得)
[推论]二数相加时,可以将全部各层进位行合并为一个进位行;除第0运算层外,可以将各运算层合并为一个运算层。
1.2.4三数及三数以上求和分析
设三数求和,算式为231+786+989=2006(式六)。又,设六数求和。算式为786+666+575+321+699+999=4046(式七)。操作要点:
①“划Q”的运用;所谓“划Q”,即Q进制的n个数在某位上相加时,其按位加和为零,但该位上产生进位m(与n个数的和数符号一致)。n为≥2的整数,m为整数。进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;同时在某位上,该n个数均不再参加运算。即,同一位上n个数和为mQ时,可将n个数均划去,然后在相邻高位空位或0位处补m。在十进制时Q=10,划Q即为“划十”。
式六 式七
②多个数相加,可出现二个及二个以上的运算层。为了减少运算层数,同一位上的同一运算层空位或0位中,进位及和数可以任意占位;因此,上述“进位行”可以视为:一个运算层中某位上的进位,可以放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;
③尽量减少运算层。a、较小的数,直接合并算;b、尽量在“配对”中进位;c、尽量减少在第一运算层上相加数的个数,尽量使第二及二以上运算层不出现。
④同一位上,各数进行“累加”,或者直接移至下一运算层;累加采用≥2的“多数 累加”;当采用普通二数“累加”时,则顺序串行累加;“相同数”、“连续数”等,可直接得“部分和”。
2.混数及混数进制
2.1《数制理论SZLL》
2.1.1按同一种规则记录数,便于用来在一个数系统中进行运算的数的制度,称为“记数系统的制度”。简称为“数制”。一个数的质,首先就是由其所属的数制来决定的。恩格思指出:“单个的数在记数法中已经得到了某种质,而且质是依照这种记数法来决定的。”“一切数的定律都取决于所采用的记数法,而且被这个记数法所决定。”数制是数的属性。不存在没有所属数制的数,也不存在没有所属数的数制。
《数制理论SZLL》就是研究数制的生成、分类、分析、比较、变换、计算等的科学。它也是研究数制在数论、群论、集合论、博弈论等数学其他分支;及其在多值逻辑、Walsh函数、《狭义及广义模随论MSL》等邻近学科;特别是在数字工程领域的计算机、笔算工程及算盘中应用的科学。它是数学的基础理论之一。数学科学,即“数”的科学。“数”的基本为“数制”。因此,《数制理论SZLL》是“数论”的基础,是“核心数学”的“核心”之一。
2.1.2位值制数制
设,构造一个数系,其中的数以各不相同位置上的“数符”来表示。“数符”又称“数字”。数字通常从右向左水平排列。对于每个数位上的全部数字均给定一个单位值(又称“位值”),其值由低(小)到高(大)。以此表示整个数系中每一个数的数制,称为“位值制数制”。我们以下讨论的数制,都是“位值制数制”。在不致误解时,也直接简称为“数制”。
2.1.3数制的三大要素:数位I,数元集Zi和权Li。
a、数位I表示数制中数的各位数字的位置。I为序数,各位从右至左来表示。即,I=1,2,3,…表示该数的第1,2,3,…位。
b、数元集Zi,表示第I位上的“数元”组成的集合。同一数制系统中,各个数同一位上不同符号的全体,组成一个该位上的数符集。该数符集中的元素,称为“数的元素”。简称为“数元”。因此,该数符集称为“数元集Z”。数元集Zi可以随着i的取值不同而不同,也可以相同。当各位上的Zi均为相同的Z时,相应的数制称为“单一集数制”或“单一数制”;当各位上的Zi不全相同时,相应的数制称为“联合集数制”或“联合数制”。
数元集Zi中的数元可为复数或其他多种多样符号。在《数制理论》中,以aj来表示数元(a1,a2,a3,…),j为自然数。以iaj表示第i位上数元aj。约定,aj=-A(A为复数)时,可表示为aj=A。数元集Zi以集合{a1,…,aj,…}来表示,即Zi={a1,…,aj,…};或者,Zi以文字表明其特征。为便于计算,通常取数元aj为整数,以阿拉伯数字来表示。
数元集Zi的基数Pi(Pi为自然数),表示了集的元素总数。恩格思指出:它“不但决定它自己的质,而且也决定其他一切数的质。”Pi的取值不同,标示了数元集Zi的变化。各位上的Pi为相同的P,则称为“单一基数”;否则,称为“联合基数”。
在《数制理论》的“位值制数制”中,定义数中的“空位”表示“无”,其位值为0,称为“空位0”。“空位0”是0的一种,是0的一种表达形式,是一种隐含的0。通常不加以标明;在数元集中,“空位”是一种特殊的数元,称为“空位元”。简称为“空元”。 “空元”是每一个“位值制数制”数元集均有的数元,其在数元集中的表示即为“空位”。通常不加以标明。“空元”是数元集中,唯一通常不计入数元aj,也不计个数,即个数为0的数元;另一方面,在特别情况下,为统一表述,则将其计入数元,其个数计为1。
c、权Li,表示第i位上的位值大小。特称此位值为“权Li”。Li为实数。为便于计算,通常取权Li为整数,特别是自然数,以阿拉伯数字来表示。不同的Li,就决定了不同的位值。在“编码理论”中,“编码”的主要特征就在于权Li。
实际中常见的权Li采用所谓“幂权”。即,令Li=Qi(i-1),Qi为实数。为便于计算,通常取Qi为自然数。Qi可以阿拉伯数字来表示,也可以中文小写数字来表示。常见各位Li均为幂权,而且成等比Q的数制。Q称为数制幂权的“底数”或数制的“底数”。底数Q的不同,决定了不同的Li,从而决定了不同的位值。Qi可以随着i的取值不同而不同,也可以相同。当各位上的数制幂权Qi,其底数均为相同的Q时,相应的数制称为“单一Q进制”。简称为“Q进制”或“进制”。当各位上的数制幂权Qi,其底数不全相同时,相应的数制称为“联合Q进制”。另一种常用的权Li采用“等权”,即各位上的权L相同。
根据上述数制的三大要素,数制可以有无穷无尽的种类。
2.2混数及混数进制
当数元集Zi中,含数元0时,该相应数制被称为“含0数制”。对于进制,则称为“含0进制”;当数元集Zi中,不含数元0时,该相应数制被称为“不含0数制”。对于进制,则称为“不含0进制”。
当数元集Zi中,有正数元,又有负数元时,相应数制被称为“混数数制”。对于进制,则称为“混数进制”;混数数制中的数,称为“混数”。“混数”中有正数元又有负数元的数,称“纯混数”。当数元集Zi中,正负数元均为相反数时,相应数制称为“对称数制”。对于进制,则称为“对称进制”。
当数元集Zi中,全部数元为连续整数成为“整数段”时,该相应数制被称为“整数段数制”。对于进制,则称为“整数段进制”。恩格斯指出:“零比其他一切数都有更丰富的内容。”鉴于“0”的这种特殊重要性,在《数制理论》中,含0整数段去掉0时,仍作为一种特殊的整数段。
2.3混Q进制{Q*}
在《数制理论》中建立了“代数数制系统”。一个数制的名称采用“Zi Li”。对Q进制,则为ZiQi;单一数制时,则为ZLi;单一数制中联合Q进制时,则为ZQi。单一数制中Q进制时,则为ZQ。其中,Q以中文小写数来表示。
对于含0的普通Q进制,Z={0,1,…,(Q-1)}。故ZQ={0,1,…,(Q-1)}Q,Q为>1的整数,称为“含0普通Q进制”。符号表示为{含0,Q};对于不含0的{1,2,…,Q}Q,Q为自然数,称为“不含0普通Q进制”。符号表示为{不含0,Q}。
含0和不含0的普通Q进制,合起来统称为“普通Q进制”,Q为自然数。符号表示为{Q}。当不致误解时,“含0普通Q进制”亦可称为“普通Q进制”,亦以符号{Q}来表示。故可以符号{二}及{十}来表示普通二进制及普通十进制。
在任一个具有整数段数元集的Q进制数制中,当P=Q时,自然数在该数制中可以连续唯一的形态表达,称为“连续数制”,又称“普通数制”;
当P>Q时,自然数在该数制中可以连续,但有时以多种形态表达,称为“重复数制”, 或“增强数制”。对于Q进制,又称为“增强Q进制”,简称为“增Q进制”;
当P<Q时,自然数在该数制中只能断续的形态表达,称为“断续数制”,或“减弱数制”。对于Q进制,又称为“减弱Q进制”,简称为“减Q进制”。
本文中的混数进制主要为以下几类。
对于含0的{0,±1,…,±(Q-1)}Q进制,Q为>1的整数,称为“含0混Q进制”。符号表示为{含0,Q*};对于不含0的{±1,±2,…,±Q}Q进制,Q为自然数,称为“不含0混Q进制”。符号表示为{不含0,Q*}。含0和不含0的混Q进制,合起来统称为“混Q进制”,Q为自然数。符号表示为{Q*}。当不致误解时,“含0混Q进制”亦可称为“混Q进制”,亦以符号{Q*}来表示。故可以符号{十*}及{二*}来表示“混十进制”及“混二进制”。在《数制理论》中,{十*}的名称是:“单一基数P=19,含0,整数段,对称的十进制”。可写为{十九,含0,整数段,对称}十进制,或者写为{0,±1,±2,…,±9}十进制。一般情况下,进一步符号表示为{十*},称为“混十进制”;{二*}的名称是:“单一基数P=3,含0,整数段,对称的二进制”。可写为{三,含0,整数段,对称}二进制,或者写为{0,±1}二进制。一般情况下,进一步符号表示为{二*},称为“混二进制”。
2.4混数编码
当A进制数元以B进制数等来编码时,A进制数按位排列成相应的B进制数等。这称为“以B进制数等编码的A进制数”,简称为“B编码的A数”,或“编码B数”,或“编码数”。例,{十}328={二}101001000;其“编码{二}数”为0011,0010,1000。如上述“编码{0,±1}二进制数”,即指以{0,±1}二进制(其特况为普通二进制)数来编码的“编码数”。所谓“编码B数”的运算,即为“编码B进制”运算。这时,A进制数的位与位间为A进制运算,但每位中则为B进制运算。A进制数元以B进制数等来编码时,所需B进制数的最多位数,称为“码长”。固定的“码长”,称为“定码长”;如最高位0不加以标明,使之成为“空位0”时,相应“码长”是变化的,称为“变码长”。
混Q进制、进位行数字工程方法,所述运算数是混Q进制数,Q为自然数。可以不编码;可以混数进制数编码;也可以全一码来编码,即将各个混Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0。总位数则为Q或(Q-1)位;同时,将S的数符,即表示该位的数为正或负,作为相应全一码中每一位上的数符。当采用全一码来编码混Q进制数时,n个数加法仅为n个数中1或1的不重复排列;其全一码编译可以定码长或变码长。
3.《混进方法HJF》及其混十进制{十*}四则运算。
采用混数进制和《进位行方法》来进行有理数运算的方法,称为《混数进制、进位行方法》,简称为《混进方法HJF》。采用混Q进制和《进位行方法》来进行有理数运算的方法,称为《混Q进制、进位行方法》;当不致误解时,亦可简称为《混进方法HJF》。当用于算盘或笔算数字工程,采用的是{十*}混十进制等的《混进方法HJF》。当用于计算机,特别是电子计算机中时,采用的是{二*}混二进制及{十*}混十进制等的《混进方法HJF》。混数进制运算可为前述四种方案之一;本发明中,《混进方法HJF》采用方案一,以笔算工程来展示;可采用前述第一种或第二种步骤。这里,采用第二种步骤。
3.1{十*}的加法
例:123+456=427(式八)
式中求得和为573。当需要转化为普通十进制{十}数时,和为427。一般来说,所求和573不必转化(特别是作为计算过程中间结果时)。确需转化时,方法见4.1转换法
式中求得和为573。当需要转化为普通十进制{十}数时,和为427。一般来说,所求和573不必转化(特别是作为计算过程中间结果时)。确需转化时,方法见4.1转换法则。
3.2{十*}的减法
例123-456=123+456=339或者
例112+56-32-85+67-46=72(式九)
首先减法化为加法来运算。这一来实际计算中,加减就合并为加法了。这就消除了通常连加减的困难,这是由于混数的特性所决定。
式八 式九 式十
同一位上的n个数求和时,若和数为零,则这n个数可以消去。这称为“约混”,或“对消”,或“对冲”。即,“划Q”中m=0时,称为“对冲”。在算式中,该位上的这n个数,可以斜线划去,不再参加以后的运算。在实际运算中,采用先“对冲”、后“划Q”、再“累加”,来获得混Q数的结果。
3.3{十*}的乘法
例238×89=12502(式十)
3.4{十*}的除法例5728÷23=249……1(式十一、式十二)
要点:①式十一采用原普通除法,现采用四则统一算式。如式十二。
②式十二中由于采用混数可使除法中的“减”过程变为“加”过程。
为了去掉“减”过程的思路,进一步还可以令被除数变号。然后,整个“减”过程完全变成“加”过程。这可使整个运算的复杂性进一步降低。以后,除法就以此来进行。应该注意,此时若出现余数,则要将该余数变号后,才是最终运算结果的余数。
3.5四则运算的特点
①加减法合并为加法。
②乘除方法简单;除法中的“减”过程可变为“加”过程;除法中的试商过程,可变为予先设定的迭代过程。
③四则运算加减乘除,均可全面地显著提高运算速度。
④加强运算正确性的保障,在“笔算工程”中,大大降低笔算的出错率。
3.5四则运算的特点
①加减法合并为加法。
②乘除方法简单;除法中的“减”过程可变为“加”过程;除法中的试商过程,可变为予先设定的迭代过程。
③四则运算加减乘除,均可全面地显著提高运算速度。
④加强运算正确性的保障,在“笔算工程”中,大大降低笔算的出错率。
4.《混十进制》{十*}与《普通十进制》{十}的关系。
4.1{十*}与{十}数的转换法
这里指整数的情况,例如{十*}382296={十}221716(式十三)。{十}数本身即为{十*}数的一种特况,故{十}数不经转换即为{十*}数,只要将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去。
{十*}数转换成{十}数。方法有几种:一种是将{十*}数变为一正一负的二个{十}数求和。这有好多方式。其中,典型的是将该{十*}数中各正数字位及0位作为一正{十}数,而将各负数字位作为一负{十}数。例{十*}382296={十}302006-80290=221716。再一种是在该数的各位上,使正数不变;负数变为其绝对值对10取“补”数,同时在相邻的高位减1(即加1)。另一种方法是:在该数的各位上,连续正数字(或0)的数字段照写不变。如3×2××6。但,当其不在{十*}数末尾(个位)时,则最低位加1;连续负数字的数字段,则使负数字变为其绝对值对9取“补”数,如×1×70×。然后,在其最低位加1。这样,求得结果为221716,即为相应{十}数。当需转换的{十*}数首位为负,即该数为负数时,则将该数的相反数转换成{十}数,然后取此{十}数的符号为负即可。
4.2{十*}与{十}对照表及其说明(表一)
①表一中0+0-分别为从正负方向趋近于0所获得的0。
②表一中表示形式为“连续非负整数个9”的全体的缩写。即,可为0个9,可为1个9,可为99,可为999,…等形式。这种形式表示的集合,称为“连集”。显然,“连集”为无限集。设E为整数,则为E的“连集”,简称为“连E”。读作“E点”。以“连集”形式表示的一组无穷个数,称为“连集数组”或“连集组数”。
③由数10的二种表达形式可知
④在{十*}数系统中,“连集”形式有且仅有 四种。由于 故“连集”形式有且仅有 三种;亦可写为 三种。
4.3{十*}与{十}关系分析
{十}数与{十*}数的关系是“一多对应”关系,而不是“一一对应”关系。正由于此,{十*}就获得了多样处理的灵活性。这是{十*}运算中多样性、快速性的原因。从这一点来说,{十*}具有较强的功能。{十}中P=Q,因而在该数制中,自然数是连续
表一
唯一形态表达。它没有这种多样性,也缺少了这种相应的灵活性。{十*}中P>Q,因而在该数制中自然数会出现多种形态表达。这正是该数制灵活性所在,它使运算得以简便快捷。也可以说{十*}是以多样性来换取了灵活性。有了它,才有了《混进方法HJF》,才有了“笔算工程”的新技术方案。有了它,也才有了算盘、处理器及其相应的计算机新技术方案。
{十*}数转换为{十}数,只能化为相应唯一的一个数。这是因为,{十*}数可经{十}数加减直接获得,而{十}数加减运算后的结果是唯一的。反之,{十}数也只能化为相应唯一的一组{十*}“连集组数”。所以,这种{十}数的“一”与{十*}“连集组数”的“一”组,二者是“一一对应”关系。由此,可建立一种{十*}数与{十}数的互为映射关系。由于变换是集到自身上的对应,所以{十}与{十*}数是“一一变换”。对于运算系统来说,{十}与{十*}数系统是“自同构”。相应{十}数的各种运算性质,亦在{十*}数系统中成立。
应当指出,显然,上述对{十}与{十*}的分析,完全相应于{Q}与{Q*}的分析,因为{十}与{Q}是同构的。由此可知:①{Q}数是{Q*}数的一部份,{Q}数集是{Q*}数集的真子集。{Q*}数{Q}数,即{Q*}数对于{Q}数有真包含关系。②{Q}数与{Q*}数的关系是“一多对应”,而不是“一一对应”。③同时,{Q}中的“一”个数与相应的{Q*}中的“一”组“连集组数”,二者之间是“一一对应”关系。④{Q}与{Q*}数系统是“自同构”。相应{Q}数系统的各种运算性质,亦在{Q*}数系统中成立。
5.结论
混Q进制{Q*}及《混进方法HJF》在数字工程中,可显著提高运算速度,而且大大降低笔算的出错率。它正是钱学森指出的数学“直接应用的工程技术”。这种 与数字计算工程紧密结合的方法,称为“混Q进制、进位行数字工程方法”。
第二部分混Q进制、进位行计算机
图1为本发明计算机相应的混Q进制计算机总逻辑框图。由输入逻辑101、CPU中央处理器102、外存103、输出逻辑104、控制台105、输出转换逻辑108组成。CPU中央处理器102、内存106、混Q运算控制逻辑107组成。这些部件的连接关系是本领域公知的。普通Q进制数通过输入逻辑101,将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去;并通过混Q运算控制逻辑107进行混Q运算;运算结果连接输出转换逻辑108,以混Q进制数、或普通Q进制数、或普通十进制数通过输出逻辑104输出。内存106及外存103与运算控制逻辑107交换数据,执行原有普通Q进制的程序。总操作由控制台105按既定程序控制,以时钟脉冲来实现。
图2为混Q进制、进位行计算机(运算控制)逻辑框图,由输入逻辑101,K重运算器202,输出转换逻辑108及控制器201组成。其中,控制器201和K重运算器202组成混Q运算控制逻辑107。通过输入逻辑101,普通Q进制数每一位上被分配到相应数符。当采用全一码编码时,输入逻辑101为全一码移位寄存器。这时,只要将这些全一码编码{Q}数的正负符号,分配到相应这些数全一码的每一位上去。然后,混Q进制数送至K重运算器202;K重运算器202中,混Q进制数经K重运算获得混Q进制数的结果,经由译码器输出转换逻辑108以混Q进制数、或普通Q进制数、或普通十进制数通过输出逻辑104输出。控制器201协调控制整个运算控制逻辑。
图3为K重运算器第I位的逻辑框图,I为序数;混数进制运算可为前述四种方案之一;本发明计算机中,采用方案二来展示;“K重运算器”202由累加器∑i304和寄存器网311、对冲网312、划Q网313组成;i为序数;当用于计算机,特别是电子计算机运算器中时,数字工程方法可采用前述第一种或第二种或第三种步骤。这里,采用第三种步骤来展示。
其中寄存器网311由1寄存器1i301、2寄存器2i302、K寄存器Ki303等组成;各个寄存器二二相连;K个寄存器存放输入的K个混Q数;累加器∑i304为与Ki寄存器303相应的累加器,用来存放累加和数。每个寄存器及累加器∑i304每一位分配一个符号位,该符号位为普通二态触发器;符号位也可以放置在专用的符号位寄存器中,在运算时为存放混Q数的寄存器或累加器的每一位分配一个符号。
在运算指令的控制下,K重运算器202中采用所谓“二维运算”。即,在数的各位上进行运算;并且每一位上各数,亦进行运算。然后,“部份和”数送至寄存器网311中,替换原存数;进位送至寄存器网311中的相邻高位,替换原存数。当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后仅获得一个数为止。最后,再经累加器∑i304输出所求和数。
本发明计算机相应的计算机运算器中,除采用一般的累加器运算外,为了加速运算,可以采用“对冲”及“划Q”逻辑。对K个混Q进制数中的n个数进行求和运算时,如果在某一位上,其中n个运算数的“按位和”为零,但产生进位m(与n个数该位上的和数符 号一致);n为≥2的整数,m为整数;进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,将n个运算数的某位均以逻辑方式置“0”,不再参加以后的运算;这称为“划Q”;“划Q”中m=0时,称为“对冲”;或者,不采用“对冲”及“划Q”。典型的“对冲”及“划Q”为,对冲采用n=2,m=0;划Q采用n=Q,m=±1。其逻辑线路,如图4、图5所示。计算机中元器件采用二值元器件。
“对冲”及“划Q”可采用对冲网312和划Q网313。对冲网312由一个对冲逻辑305巡检;或由K(K-1)/2个对冲逻辑305、对冲逻辑306、…、对冲逻辑307与寄存器网311中各个寄存器二二相连组成;或由分级、分组的对冲逻辑组成。划Q网313由一个划Q逻辑308巡检;或由K(K-1)/2个划Q逻辑308、划Q逻辑309、…、划Q逻辑310与寄存器网311中各个寄存器二二相连组成;或由分级、分组的划Q逻辑组成。
采用“对冲”及“划Q”时,由控制器或程序发出的指令,对各个运算数的每一位实施先“对冲”、后“划Q”运算。划Q产生的“进位”(与运算和数同符号),送至下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处。即,“进位”送至K重运算器202中任一寄存器的相邻高位的空位或0位处置“1”端。然后,进行累加运算。累加采用≥2的“多数累加器”;当采用普通二数“累加器”时,则顺序串行累加。当采用全一码编码时,K重运算器202中的累加器∑i304可省略为全一码移位寄存器。该寄存器专门存放结果和数,又称为“和数寄存器”。这时,如采用上述“二维运算”,则称为“三维运算”。相应的运算器,则称为“三维运算器”。
上述“K重运算器”当K值较大时,可加以分级、分组放大处理。
图4为对冲逻辑(对冲器)的逻辑框图。其中的对冲逻辑典型组合,由1寄存器的第1i位301,2寄存器的第2i位302,同逻辑403,异逻辑404及与门405组成;1寄存器的第1i位301及2寄存器的第2i位302,其前附有符号位,为普通二态触发器;当采用全一码来编码并采用二值元器件时,对冲采用n=2,m=0;1寄存器的第1i位301,全一编码为1i1位401、1i2、…;2寄存器的第2i位302,全一编码为2i1位402、2i2、…;K寄存器的第Ki位303,全一编码为Ki1、Ki2、…;从1i1、1i2、…及2i1、2i2、…,直至Ki1、Ki2、…,全一码编码的全体中,任取二个形成组合;例取此中一个典型组合如下述:1寄存器的第1i1位401,其“1”端连接同逻辑403的输入,1i1符的“1”端连接异逻辑404输入;2寄存器的第2i1位402,其“1”端连接同逻辑403的输入,2i1符的“1”端连接异逻辑404的输入;同逻辑403的输出连接与门405输入;异逻辑404的输出连接与门405输入;与门405的输出,连接1寄存器的第1i1位401及2寄存器第2i1位402的置“0”端;
图5为划Q逻辑(划Q器)的逻辑框图。其中的划Q逻辑典型组合,由1寄存器的第1i位301,2寄存器的第2i位302,Q值判定逻辑501,同逻辑502及与门503组成;1寄存器的第1i位301及2寄存器的第2i位302,其前附有符号位,为普通二态触发器;当采用全一码来编码并采用二值元器件时,划Q采用n=Q,m=±1;1寄存器的第1i位301,全一编码为1i1位401、1i2、…;2寄存器的第2i位302,全一编码为2i1位402、2i2、…;K寄存器的第Ki位303,全一编码为Ki1、Ki2、…;从1i1、1i2、…及2i1、2i2、…,直至Ki1、Ki2、…,全一码编码的全体中,任取Q个形成组合;例取此中一个典型组合如下述:1i1位401的“1”端连接Q值判定逻辑501的输入,1i符的“1”端连接同逻辑502的输入;2i1位402的“1”端连接Q值判定逻辑501的输入;2i符的“1” 端连接同逻辑502的输入;如此连接共Q个;Q值判定逻辑501接受共Q个输入;Q值判定逻辑501的输出连接与门503的输入;同逻辑502接受共Q个输入;同逻辑502的输出连接与门503输入;与门503输出进位(同符号),送至K重运算器中任一进位行寄存器的相邻高位置“1”端,并置该高位数符与1i符相同;同时,与门503输出连接1寄存器的第1i1位401、2寄存器第2i1位402及组合内共Q个置“0”端。
混Q进制、进位行计算机,其中所述运算数是混Q进制数,Q为自然数。可用全一码编码来表示;或者,以混数进制数编码;或者,不编码;以全一码来编码时,即将各个混Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0。总位数则为Q或(Q-1)位;同时,将S的数符,即表示该位的数为正或负,作为相应全一码中每一位上的数符。当采用全一码来编码混Q进制数时,n个数加法仅为n个数中1或1的不重复排列;其全一码编译可以定码长或变码长;本发明计算机中,采用定码长来展示。
计算机中所采用的元器件为P值元器件,P是数元集的基数,P为>1的整数;或者常取二值元器件;或者取三值元器件。当采用{Q*}运算,并且以全一码编码时(其他混数进制类似),在运算及其控制中采用{1,0,1}三态进行。故计算机中元器件,采用三值元器件。当采用二值元器件时,其中1、1的正负号以一位{二}数表示,其权为0。即,以二位{二}数编码{1,0,1}三态。这时,K重运算器202中的累加器∑i304,可以省略为全一码移位寄存器。
当采用{Q*}运算时,运算器的输入将这些普通Q进制数的正负符号,分配到相应这些数的每一位上去即可;不需要将{Q}数另行转换为{Q*}数,因为{Q}数本来就是{Q*}数。即,{Q*}数={Q}数+纯{Q*}数。另一方面,运算器的输出在一般中间过程,也不必要将{Q*}数一般形式化为{Q}数。只有在需要输出最终结果时,才将{Q*}数一般形式化为{Q}数(实质是仅将纯{Q*}数一般形式化为{Q}数)。这时,本发明计算机在“运算”数字的输出界面上,只需加上特别简单的{Q*}一般形式化到{Q}的逻辑即可。原则上,本发明计算机其内外存及输入输出端与现有{Q}电子计算机完全一样(包括程序在内)。这其中的原因就在于,全部{Q}数本身均为{Q*}数所真包含。在这种意义上,现代{Q}电子计算机本来就是{Q*}电子计算机的特况。
本发明计算机采用“多重运算器”。例如,采用“八重运算器”。所谓“八重运算器”,即将8个数放入8个寄存器中,一次性完成加减运算。设多重数为K,则K=2t较合适(t为自然数)。故K=2、4、8、…。其中,较实用的可能是K=8、16、256、1024、4096等。同时,乘法本质上原来就是连续加法,除法本质上原来就是连续减法。因此,本发明计算机在乘除中,亦可运用多重加减来处理。
特别是,当采用全一码编码时,在{Q*}进位行计算机中,仅仅只需先“对冲”、后“划Q”,就能获得{Q*}数运算结果。当最终结果需要输出时,才将{Q*}数转换成{Q}数,或者转换成{十}数输出。
小结:
一、本发明计算机是混Q进制{Q*}的计算机,是《混进方法HJF》计算机。二、本发明计算机相应的混Q进制{Q*}的电子计算机使基于其他原理上的各种电子计算机,包括“超导计算机”、“量子计算机”等的运算速度大大提高。以 八重运算器为例,粗略地估算将使运算速度提高五倍。也就是说,原20万次/s的提高到100万次/s左右;原20亿次/s的提高到100亿次/s左右。当K增大时,则运算速度还将进一步提高。
第三部分增Q进制及全一码
(本部分为前面“第二部分混Q进制、进位行计算机”的附加预备知识。)
1.增Q进制
1.1定义及符号
在一个Q进制数制中,凡P>Q的进制,特别是P=Q+1>Q的进制,称为“增强Q进制”。Q为自然数。简称为“增Q进制”。其中,含0整数段、不对称增Q进制称为“含0不对称增Q进制”。显然,{0,1,2}二进制,即为“含0不对称增二进制”;{1,0,1}二进制也就是混二进制{二*},即为“含0对称增二进制”。此外,还有其他增二进制。
1.2{0,1}一进制及其运算
增Q进制中,当Q=1时,即为增一进制。增一进制中,主要有二种。其一是{0,
表二 表三
1}一进制,它可表示全部非负整数。其元器件为二态器件。其二是{1,1}一进制,它可表示全部整数。其元器件亦为二态器件。本文下面所称“增一进制”,除特别注明外,均指{0,1}一进制。
{0,1}一进制的运算。这里列出加法运算,例如{十}4+3+2=9={0,1}一进制110101+1011+101=11001100010101011=…。
1.3{0,1}一进制与{Q}的关系。
1.3.1{0,1}一进制数与{Q}数的转换法。
{0,1}一进制数转换成{Q}数,可以将{0,1}一进制数中的各位数字1,以{Q}计数即可。所得{Q}计数和,即为相应的{Q}数。这就是说,{0,1}一进制数中有几个1,则相应的{Q}数即为几。显然,这是十分简单的法则。(表二)
{Q}数转换成{0,1}一进制数,可将{Q}数各位均乘以各位上的权,然后将这些积以同样个数的1,分别在所要表达的{0,1}一进制数位置上,以不重复的方式列出即 可。这就是说,{Q}数为几,则{0,1}一进制数中就有几个1。显然,这也是十分简单的法则。(表三)
1.3.2{0,1}一进制数与{Q}数对照表及其说明
①{0,1}一进制数可表示全部{Q}数
②有较多的重复数,以4位{0,1}一进制数为例,除0及4唯一外,其余均有重复数。其中,1有4个;2有6个;3有4个。于是,从0~4的重复数分别为1,4,6,4,1个。这与二项式展开系数CKn是一致的。位数n为自然数,K为0~n。(表四扬辉三角形。)
表四
1个0,可为00,可为000,…等形式。这种形式表示的集合,称为“连集”。显然,“连集”为无限集。设E为整数,则为E的“连集”,简称为“连E”。读作“E点”。以“连集”形式表示的一组无穷个数,称为“连集数组”或“连集组数”。
1.3.3{0,1}一进制与{Q}关系分析。
(1)Q1,Q为自然数;1为最小的自然数,也是最基本的自然数单元。Q真包含1,这使得相应的{Q}与{0,1}一进制之间存在自然的联系。
(2){Q}数与{0,1}一进制数的关系是“一多对应”关系,而不是“一一对应”关系。{0,1}一进制中P=Q+1>Q,因而在该数制中,自然数有时会出现多种形态表达,这正是该数制灵活性所在。也可以说,{0,1}一进制是以多样性来换取了灵活性。{Q}中P=Q,因而在该类数中,自然数是连续唯一形态表达。它没有这种多样性,也缺少了这种相应的灵活性。
(3){0,1}一进制数转换为{Q}数,只能化为相应唯一的一个数。这是因为,{0,1}一进制数可经{Q}数加减直接获得,而{Q}数加减运算后的结果是唯一的。反之,{Q}数也只能化为相应唯一的一组{0,1}一进制“连集组数”。所以,这种{Q}数的“一”与{0,1}一进制“连集组数”的“一”组,二者是“一一对应”关系。由此,可建立一种{0,1}一进制数与{Q}数的互为映射关系。对于运算系统来说,{Q}与{0,1}一进制数系统“同构”。相应{Q}数的各种基本运算性质,亦在{0,1}一进制数系统中成立。
1.4{0,1}一进制的应用
{0,1}一进制由于以么元1配以0构造数,而且权为1,故其“运算”常以“传送”来实现。这是{0,1}一进制数运算快速原因之一。{0,1}一进制数运算中的“进位”,也以二数当前位的按位加和为0,而进位为Q的“划Q”逻辑实现。这种“传送”及“划Q” 的逻辑实现,结构简单,速度却快。这是{0,1}一进制数运算快速原因之二。当{0,1}一进制数与各种混数进制数结合运算时(见后面2.2节),又补充了“对冲”这一结构更为简单、速度更为快速的逻辑。这是{0,1}一进制数运算快速原因之三。
上述{0,1}一进制与各种混数进制相结合,使得功能更加增强。考虑到{0,1}一进制→{Q}→各种混数进制,这其中有着内在的联系。显然,这一切均在预料之中。
2.全一进制及全一编码
2.1全一进制和全一数
{0,1}一进制数的多样性就获得了多样处理的灵活性。但是,由于{0,1}一进制数“连集”形式有且仅有一种“”;而且具有极端的多样,在同一个数中可出现一次以上的“连集”形式。由此造成同一个数的形式过于多样,难以把握,不便于控制,势必增加设备并且影响运算速度。因此,在一般情况下,有必要对{0,1}一进制数加以某种约束条件。这就产生了“全一进制”。
在{0,1}一进制的正整数中,限定每一组“连集组数”只选取自个位开始,从右向左连续排列么元1的唯一的一种形态表达;高位上均为0,或以空位表示。例如:{十}数3={0,1}一进制数111/111/111/…(“/”表“或者”),限定为{十}3={0,1}一进制111。这样,每一组“连集组数”中的重复数均被删除,只剩下一个全是1的唯一形态,我们称为“全一数”。表达“全一数”的进制称之为“全一进制”。表三中,{0,1}一进制数最左边的形态,即为“全一进制”数。因此,“全一进制”可以是加特定约束条件的{0,1}一进制。
在《数制理论》的“位值制数制”中,定义数中的空位表示具有隐含的“空位0”;在其数元集中,“空位”是一种特殊的数元,称为“空位元”。简称为“空元”。因此,“全一进制”可以从不含0普通Q进制{不含0,Q}中的{1}一进制获得;故可以定义“全一进制”为{1}一进制,以符号{一}来表示。当考虑到正负整数时,可以将该全一进制数的正负符号,分配到该数的各位上去,从而构造各位均带相同符号的全一进制数。本发明中除特别注明外,均指此种“全一进制”,亦以符号{一}来表示。
“全一进制”也可以从不含0混Q进制{不含0,Q*}中的“{1,1}一进制”,加约束条件获得。约束条件为该进制数,必须各位上符号均相同;“全一进制”还可以从不含0增一进制中的“{1,1}一进制”,加上述同样约束条件获得;此外,还可以从其它混数进制获得。
2.2全一码
全一进制显然具有如下优缺点。优点:①运算速度快。“传送”代替了“翻转”。②
多重运算时,不需要二二求和,只需要先“对冲”后“划Q”即可得结果。这就大大加 快了总体运算速度。③与{Q}转换方便;缺点:①“字长”太长,位数多。(当取可变字长时,其平均字长仅为一半。)②荷载信息量较小。因此,根据全一进制的优缺点,扬长避短,以全一进制数来编码各种混数进制数是合适的。以“全一进制”数来编码,称为“全一编码”。“全一编码”中采用的“全一数”,称为“全一码”。表五,显示出全一码一位,编码{二}数元的情况。由表五可见,全一码一位编码的{二}数,即为{二}数本身。表六,显示出以全一码九位,编码{十}数元的情况。由表六可见,全一码九位编码的{十}数,码长增加至9倍。(当取可变码长时,其平均码长仅为5倍。)例如:{十}23=全一码=≡。对于各种混数进制数,均可以全一码来编码。
2.3全一码的计算。
全一码的计算非常简单。n个数加法仅为n个数中1或1的不重复排列,称为“排1”。以二数加法为例,如11+111=11111。特别是,在各种混数进制的数字工程中,仅仅只需先“对冲”后“划Q”,就能获得各种混数进制数的运算结果。当最终结果需要输出时,才将以全一码编码的各种混数进制数,转换成{Q}或{十}数输出。
2.4全一码的应用。
全一码主要应用于对{Q}数及各种混数进制数进行编码。特别是,
①采用全一码九位编码{十}数,可以实现普通十进制{十}、全一码、进位行计算机和笔算工程及算盘。
②采用全一码九位编码{十*}数,可以实现混十进制{十*}、全一码、进位行计算机和笔算工程及算盘。
③采用全一码编码各种混数进制数,可以实现各种混数进制、全一码、进位行计算机和笔算工程及算盘。
④采用全一码来编码{十}或{十*}数或各种混数进制数,再以“正负码”来二次编码,可以实现又一种算盘的新技术方案。
第四部分混十进制{十*}、全一码、进位行计算机
(本部分为前面“第二部分混Q进制、进位行计算机”的主要典型情况。)
㈠人类历史中,{十}计算应用的广度和深度,均是其他数制所不能比拟的。人类长期历史文化的底蕴与沉积,使得{十}具有牢不可破的至尊地位。因此,混十进制{十*}计算机具有特别重要的意义。为此,本部分将混十进制{十*}、全一码、进位行计算机特别列出。
㈡该计算机运算采用《混进方法HJF》。即,混十进制{十*}的《混进方法HJF》。混数进制运算可为前述方案之一;本发明计算机中,采用方案二来展示;当用于处理器,特别是计算机中时,数字工程方法可采用前述四种方案之一。这里,采用方案二来展示;该方案的步骤,则可采用前述第一种或第二种或第三种步骤。这里,采用第三种步骤来展示。
㈢混十进制{十*}、全一码、进位行计算机,是全一码九位来编码的{十*}计算机。这时,在运算及其控制中采用{1,0,1}三态进行。计算机中所采用的元器件为三值元器件;或者常取二值元器件。当采用二值元器件时,其中1、1的正负号以一位{二}数表示,其权为0。即,以二位{二}数编码{1,0,1}三态。当采用全一码编码时,K重运算器202中的累加器∑i304可省略为全一码移位寄存器。
㈣混十进制{十*}、全一码、进位行电子计算机总逻辑框图,如图1所示。混十进 制{十*}、全一码、进位行电子计算机中,{十}数以全一码九位来编码输入及最终输出转换为{十}数。其全一码编译可以定码长或变码长;本发明计算机中,采用定码长来展示。
当采用{十*}运算时,运算器的输入只要将这些普通十进制数的正负符号,分配到相应这些数的每一位上去即,不需要另行转换。因为{十}数本来就是{十*}数。即{十*}数={十}数+纯{十*}数。当采用全一码编码时,只要将这些全一码编码{十}数的正负符号,分配到相应这些数全一码的每一位上去。另一方面,在运算器的输出,一般中间过程也不必要将{十*}数一般形式化为{十}数。只有在需要输出最终结果时,才将{十 *}数一般形式化为{十}数(实质是仅将纯{十*}数一般形式化为{十}数)。这时,本发明计算机在“运算”的输出界面上,只需加上特别简单的全一码编码的{十*}一般形式化到{十}的逻辑即可。原则上,本发明计算机其内外存及输入输出端,与现有{十}电子计算机完全一样(包括程序在内)。这其中的原因就在于,全部{十}数本身均为{十*}数所真包含。在这种意义上,现代{十}电子计算{十*}电子计算机的特况。
(五)混十进制{十*}、全一码、进位行电子计算机中,采用“多重运算器”。例如,采用“八重运算器”,即将8个数放入8个寄存器中,一次性完成加减运算。设多重数为K,则K=2t较合适(t为正整数)。故K=2、4、8、…。其中,较实用的可能是K=8、16、256、1024、4096等。同时,乘法本质上原来就是连续加法,除法本质上原来就是连续减法。因此,在乘除中,本发明的计算机亦可运用多重加减来处理。
㈥混十进制{十*}、全一码、进位行电子计算机中,采用“对冲”及“划十”逻辑。混Q进制、进位行数字工程方法,对K个混Q进制数中的n个数进行求和运算时,如果在某一位上,其中n个运算数的“按位和”为零,但产生进位m(与n个数该位上的和数符号一致);n为≥2的整数,m为整数;进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,将n个运算数的某位均以逻辑方式置“0”,不再参加以后的运算;这称为“划Q”;“划Q”中m=0时,称为“对冲”;或者,不采用“对冲”及“划Q”。典型的“对冲”及“划十”为,对冲采用n=2,m=0;划Q采用n=Q,m=±1。其逻辑线路,见图4和图5。
K重运算器中采用所谓“二维运算”。即,在数的各位上进行运算;并且每一位上各数,亦同时进行先“对冲”、后“划Q”、再“累加”。当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后仅获得一个数为止。最后,再经累加器∑i输出所求和数;
当采用全一码编码时,如采用上述“二维运算”,则称为“三维运算”。相应的运算器,则称为“三维运算器”。特别是,在{十*}全一码、进位行计算机中,仅仅只需先“对冲”、后“划十”,就能获得运算结果。当最终结果需要输出时,才将全一码编码的{十*}数转换成{十}数输出。
小结:
一、混十进制{十*}全一码、进位行计算机,是混十进制{十*}计算机,是《混进方法HJF》计算机。
Claims (6)
1.一种混Q进制、进位行计算机;由输入单元(101)、CPU中央处理器(102)、外存(103)、输出单元(104)、控制台(105)、输出转换单元(108)组成;其中,CPU中央处理器(102)由内存(106)、混Q运算控制单元(107)组成;混Q运算控制单元(107)由K重运算器(202)及控制器(201)组成;
设K个普通Q进制数参与加减运算,K为大于或等于2的整数,Q为自然数;普通Q进制数输入转换成K个混Q进制数;普通Q进制数通过输入单元(101)至K重运算器(202);K重运算器(202)中,混Q进制数经K重运算获得混Q进制数的结果;然后,输出转换单元(108)以混Q进制数、或普通Q进制数、或普通十进制数,通过输出单元(104)输出;控制器(201)调控整个运算控制部分。
2.权利要求1的计算机,其中“K重运算器”(202)由累加器∑i(304)和寄存器网(311)、对冲网(312)、划Q网(313)组成;i为序数;或者,不采用对冲网(312)和划Q网(313);当用于计算机中时,其数字工程方法采用以下步骤来展示;
K重运算器(202)中采用“二维运算”;即,在数的各位上同时进行运算;并且每一位上各数,亦同时进行先“对冲”、后“划Q”、再“累加”;当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后仅获得一个数为止;最后,再经累加器∑i(304)输出结果;当采用全一码编码时,上述“二维运算”则为“三维运算”;
当采用“对冲”及“划Q”时,由控制器发出的指令,在数的各位上同时进行运算;并且每一位上各数,亦同时进行先“对冲”、后“划Q”;然后再“累加”;累加采用大于或等于2的“多数累加器”;当采用普通二数“累加器”时,则顺序串行累加;其中累加器∑i(304)为每一位带有一个符号位的,与Ki寄存器(303)相应的累加器;当采用全一码编码时,K重运算器(202)中的累加器∑i(304)为全一码移位寄存器。
3.权利要求2的计算机,其中所述寄存器网(311)由K个寄存器组成;各个寄存器二二相连;K个寄存器存放输入的K个混Q进制数;累加器∑i(304)为与K个寄存器之一Ki寄存器(303)相应的累加器,用来存放累加和数;每个寄存器及累加器∑i(304)的每一位分配一个符号位,该符号位为普通二态触发器;或者符号位放置在专用的符号位寄存器中,在运算时为存放混Q进制数的寄存器或累加器的每一位分配一个符号。
4.权利要求2的计算机,其中所述对冲网(312)由一个对冲单元(305)巡检;也可由K(K-1)/2个对冲单元(305、306、307)与寄存器网(311)中各个寄存器二二相连组成;其中的划Q网(313)由一个划Q单元(308)巡检;或者由K(K-1)/2个划Q单元(308、309、310)与寄存器网(311)中各个寄存器二二相连组成。
5.权利要求4的计算机,进一步包括:其中的对冲逻辑电路组合,由1寄存器1i(301),2寄存器2i(302),同逻辑电路(403),异逻辑电路(404)及与门(405)组成;1寄存器1i(301)及2寄存器2i(302),其前附有符号位,为普通二态触发器;当采用全一码来编码并采用二值元器件时,对冲采用n=2,m=0;1寄存器1i(301),全一编码为1i1位、1i2位(401);2寄存器2i(302),全一编码为2i1位、2i2位(402);K个寄存器之一Ki寄存器(303),全一编码为Ki1位、Ki2位;从1i1、1i2及2i1、2i2,直至Ki1、Ki2,全一码编码的全体中,任取二个形成组合;
其中的划Q逻辑电路组合,由1寄存器1i(301),2寄存器2i(302),Q值判定单逻辑电路(501),同逻辑电路(502)及与门(503)组成;1寄存器1i(301)及2寄存器2i(302),其前附有符号位,为普通二态触发器;当采用全一码来编码并采用二值元器件时,划Q采用n=Q,m=±1;1寄存器1i(301),全一编码为1i1位、1i2位(401);2寄存器2i(302),全一编码为2i1位、2i2位(402);K寄存器Ki(303),全一编码为Ki1位、Ki2位;从1i1、1i2及2i1、2i2,直至Ki1、Ki2,全一码编码的全体中,任取Q个形成组合。
6.权利要求1的计算机,其中混Q进制数不编码;或者混Q进制数编码;或者全一码来编码,其全一码编译定码长或变码长。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510113118 CN1752923B (zh) | 2005-10-14 | 2005-10-14 | 混q进制、进位行数字工程方法和混q进制、进位行计算机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200510113118 CN1752923B (zh) | 2005-10-14 | 2005-10-14 | 混q进制、进位行数字工程方法和混q进制、进位行计算机 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1752923A CN1752923A (zh) | 2006-03-29 |
CN1752923B true CN1752923B (zh) | 2010-12-15 |
Family
ID=36679789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200510113118 Expired - Fee Related CN1752923B (zh) | 2005-10-14 | 2005-10-14 | 混q进制、进位行数字工程方法和混q进制、进位行计算机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1752923B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111221497B (zh) * | 2020-01-10 | 2022-04-22 | 宁波大学 | 一种量子元胞自动机十进制全加器 |
CN112379925A (zh) * | 2020-10-10 | 2021-02-19 | 闵少维 | 十进制计算机基础技术原理及实现方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601458A (zh) * | 2003-09-27 | 2005-03-30 | 李志中 | 混q进制、进位行电子计算机新一代技术方案 |
CN1619487A (zh) * | 2004-11-08 | 2005-05-25 | 李志中 | 称q进制、进位行数字工程方法和处理器 |
CN1619485A (zh) * | 2004-11-08 | 2005-05-25 | 李志中 | 增q进制、进位行数字工程方法和处理器 |
CN1619486A (zh) * | 2004-11-08 | 2005-05-25 | 李志中 | 偏q进制、进位行数字工程方法和处理器 |
-
2005
- 2005-10-14 CN CN 200510113118 patent/CN1752923B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1601458A (zh) * | 2003-09-27 | 2005-03-30 | 李志中 | 混q进制、进位行电子计算机新一代技术方案 |
CN1619487A (zh) * | 2004-11-08 | 2005-05-25 | 李志中 | 称q进制、进位行数字工程方法和处理器 |
CN1619485A (zh) * | 2004-11-08 | 2005-05-25 | 李志中 | 增q进制、进位行数字工程方法和处理器 |
CN1619486A (zh) * | 2004-11-08 | 2005-05-25 | 李志中 | 偏q进制、进位行数字工程方法和处理器 |
Also Published As
Publication number | Publication date |
---|---|
CN1752923A (zh) | 2006-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106325810B (zh) | 微处理器 | |
Bernstein et al. | Kummer strikes back: new DH speed records | |
CN103176767B (zh) | 一种低功耗高吞吐的浮点数乘累加单元的实现方法 | |
CN102437857B (zh) | 一种ira-ldpc码的构造方法及其编码器 | |
Demmel et al. | Efficient reproducible floating point summation and BLAS | |
CN101326486A (zh) | 进行浮点数的除法运算或平方根运算的运算装置和运算方法 | |
CN110515589A (zh) | 乘法器、数据处理方法、芯片及电子设备 | |
CN101295237B (zh) | 求商和余数的高速除法器 | |
CN1752923B (zh) | 混q进制、进位行数字工程方法和混q进制、进位行计算机 | |
US8341203B2 (en) | Computer technical solution of the digital engineering method of hybrid numeral carry system and carry line | |
CN103176948A (zh) | 一种低成本的单精度初等函数运算加速器 | |
CN1776606B (zh) | 增q进制、进位行数字工程方法和增q进制、进位行计算机 | |
Chinal | Design methods for digital systems | |
CN1776605B (zh) | 偏q进制、进位行数字工程方法和偏q进制、进位行计算机 | |
CN108205518A (zh) | 获取函数值的装置、方法及神经网络装置 | |
CN102073473A (zh) | 基于fpga的十进制浮点乘法器设计 | |
CN101859240A (zh) | 混数进制、进位行计算机数字工程方法和混数进制、进位行计算机 | |
US20100023569A1 (en) | Method for computerized arithmetic operations | |
Chandu et al. | Design and implementation of high efficiency square root circuit using Vedic mathematics | |
CN101819514A (zh) | 混数进制、进位行笔算数字工程方法 | |
Selianinau | An efficient implementation of the CRT algorithm based on an interval-index characteristic and minimum-redundancy residue code | |
US20070271326A1 (en) | Technical Solution to Written Calculations Engineering of the Digital Engineering Method for Hybrid Numeral Carry System and Carry Line | |
WO2006039864A2 (fr) | Abaque numerique mixte d'echelle numerique mixte et procede de construction numerique d'une ligne de report de retenue | |
WO2004092946A1 (fr) | Procede et processeur d'ingenierie numerique a ligne mixte de qn-aire et de report | |
CN101091157B (zh) | 用于处理数字数据的数字处理器和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101215 Termination date: 20171014 |
|
CF01 | Termination of patent right due to non-payment of annual fee |