负Q进制、进位行计算机和负Q进制、进位行数字工程方法与流程

文档序号:12270850阅读:540来源:国知局
负Q进制、进位行计算机和负Q进制、进位行数字工程方法与流程

本发明涉及数字工程方法和计算机硬件总体设计。特别是,计算机体系结构及运算器。



背景技术:

1.本发明人在先已获得的发明专利

前后历经四十三年之久,我们终于攻克特别重大的计算机世界难题“三Q”!

这是全世界计算机领域发达国家,美国、日本、特别是前苏联,长期以来梦寐以求的成果。“三Q”的攻克,基于一系列本质上全新的概念,并且要求部分改变或者完全改变早先的观念。“三Q”获得人类数学上三项重大突破,和数字工程上五项重大突破。

由此,“三Q”在全世界科技上,取得三项重大成就。

2009年10月23日,本“三Q”的第一发明人李志中和第二发明人徐菊园,参加了中国最高级别计算机学术会议《2009中国计算机大会》。

“三Q计算机”论文,混数进制、进位行数字工程方法和混数进制、进位行计算机,发表于《2009中国计算机大会论文集》。

“三Q计算机”发明,混数进制、进位行数字工程方法和混数进制、进位行计算机,已经获得中国发明专利证书。

(该发明,已分项获得三个中国发明专利证书:中国发明专利号ZL 200510113118.6/ZL 200510119816.7/ZL 200510119815.2)。

“三Q计算机”发明,混数进制、进位行数字工程方法和混数进制、进位行计算机,已经获得美国发明专利证书。(美国发明专利号US 8,341,203 B2)

“三Q计算机”发明,混数进制、进位行数字工程方法和混数进制、进位行计算机,已经获得日本发明专利证书。(日本发明专利号特许第5133693号)

2.负Q进制

本发明与发明人在先已经获得的上述发明专利,可以统称为“三Q发明系列”。简称为“三Q”。本发明计算机与发明人在先已经获得的上述发明的计算机,可以统称为“三Q计算机”系列。本发明负Q进制、进位行数字工程方法和负Q进制、进位行计算机,其中,负Q进制、进位行数字工程方法,也属于《混进方法HJF》,或《三Q方法》。当不致误解时,也简称为“三Q”;其中,负Q进制、进位行计算机,简称为“负Q进制计算机”。(详见具体实施方式之中,负Q进制、进位行数学方法。)

约定,数A的相反数-A,表示为加上划线的即,如-1,-2,…,-9分别以…,来表示。(或约定,-A以下划线表示为A;即,-A=A;如-1,-2,…,-9分别以12,…,9来表示。)

在Q进制数中,各位上均为幂权,其底数均为相同的Q。Q为实数。为便于计算,通常取Q为整数,特别是正整数。约定,Q的相反数(-Q),表示为Q加下划线的Q。即Q=-Q,称为“负Q”。

当Q为正数时,相应的Q进制称为“正Q进制”;

当Q为正数时,相应的“Q进制”则称为“负Q进制”。

(这样的约定,目的是为了行文方便,而且,进制之间的对应、对称有利于比较、分析。)

普通Q进制,简称“普Q进制”,这就是现有技术之中,称谓的Q进制或进制。其中,设定Q为>1的正整数。

设,一个进制的数的各位上数字,可以为正数字,也可以为负数字,也可以为0。则,称这种进制为“混数进制”;这种进制数称为“混数”。(“混”字,是混合的概念。)“混数进制”之中的Q进制,称为“混数Q进制”。对于“混数Q进制”,其中,设定Q为>1的正整数。

正Q进制是一族进制,包括普通Q进制和混数Q进制。设定Q为>1的正整数。其中,混数Q进制包括称/偏/增/混Q进制;即,称Q进制、偏Q进制、增Q进制、混Q进制。

负Q进制是另一族进制,包括普通Q进制和混数Q进制。设定Q为>1的正整数。其中,混数Q进制包括称/偏/增/混Q进制;即,称Q进制、偏Q进制、增Q进制、混Q进制。

本发明正是专题展开对于负Q进制研究的发明。本发明“负Q进制计算机”相对“正Q进制计算机”,虽有不足,但仍有独特之处。故,作为全面的“三Q”发明专利系列,申请人进一步,提出本发明。与此同时,向刊物投稿了同名同内容的论文:

负Q进制、进位行计算机和负Q进制、进位行数字工程方法

3.数字工程和数字工程方法

本发明中“数字工程”是专指“数字计算系统工程”。它是解决四则运算法则等计算系统本身的数字工程实现技术方案。众所周知,“计算”有好多种,除“近似计算”、“模拟计算”及“无工具计算”(心算、指算、口算等,包括相应的口诀、速算、估算)外,则为“采用工具的数字计算”。与此相应的“数字计算系统工程”,也就是“数字工程”,有且仅有三类:数字计算机(包括各种处理器);算盘;采用笔和纸进行笔算的“数字计算系统工程”,简称为“笔算工程”。

所谓“数字工程方法”,就是数字工程总体设计所采用的方法。它规定“数字工程”总体设计应遵循的设计规则,及其工程实施技术方案。它是一项新的数字工程进行总体设计时,所必须的总体设计方法。①它规定相应数字工程中,存储、运载“数字”的工程元器件、部件、设备等实物的工程实现;②它规定相应的数字输入、输出、运载、存储等规则的工程实施;③以及相应的数字传输、转换、计算、处理等规则的工程实施;④以及相应的数据采集、控制、流程等规则的工程实施。

在实施该“数字工程方法”的“数字工程”总体设计中,表示“数字”、“数字传输”、“数字转换”、“数字计算”“数字处理”等,及“数据采集”、“数据控制”、“数据流程”等的全过程,都是在此具体的数字工程中进行的。因此,以相应的数字工程方法,来进行相应数字工程总体设计,即可获得该数字工程总体设计技术方案。这种与数字计算系统工程紧密结合的方法,称为“数字工程方法”。

总之,“数字工程方法”就是在“数字工程”总体设计中,数字化设计的工程方法。

4.当前数字工程方法中的四则运算

以“笔算工程”为例,就是“普通Q进制”(简称“普Q进制”)的四则运算。当Q=10时,即“普通十进制”(简称“普十进制”)的四则运算。

首先是加法,有许多不尽如人意之处。主要表现为运算速度慢;在减法中,未能充分利用负数的作用,而且,不能“连减”。尤其在加减联合运算中,不能一步到位;在乘法中,加法的缺点更加扩大严重;在除法中,上述缺点依旧。总之,在最小的数体——有理数体中,四则运算情况并不满意。

在笔算数字工程中,对运算的解剖,表明存在一些隐含的操作程序,以至产生“隐患”。以 “二数相加”为例,算式如式一123456+345678=469134。[文中凡未标明数制的数,均指普十进制数。下同。]其中,十位上的和数3,解剖一下。其微程序操作是:①个位上来的进位;②十位上5、7二数字与低位进位相加,即(5+7+1)。取其和的个位;③上列(5+7+1)和的进位送到高位。④其余各位,依此类推。又如例二,设三数求和,算式如式二78+297+259=634。上述情况,更为加重。

显然,存在下列缺点:①进位标示困难。若用小数字表明,则易混淆且字面积受限。特别是表456789时就更烦人;若以“.”符写在数字间,则易与小数点混淆且表示456789也不便;若以手指数数,则速度慢且不方便;若心算,则费脑力且易错。总之,比较讨厌,不但速度慢,而且很容易出错。②一般二数相加时,每一位上要有三个数相加求和。于是,需三重运算。三及三以上个数相加求和时,则更不方便。③验算困难。一般采用重做一遍,费时费力。

减法比加法麻烦。而且不能在同一竖式中“连减”,必须断开。特别在加减联合运算时,不能一步到位。乘除法中,这类情况更为严重。

而且,加减乘除运算格式不统一,除法时还另起炉灶。

另一方面,在计算机数字工程中,一般采用“普通二进制数字工程方法”。于是,现有数字工程技术,只有“普通二进制系统结构”。因此,现有计算机无法实现“二维多重运算”及“三维运算”等等。同时,现有计算机无法运用“对冲”及“划Q”技术。因此,现有计算机运算速度较低。

此外,在算盘数字工程中,这些数一般采用普通二进制与普通五进制的“二五联合进制”数。因此,运算速度低、运算口诀繁杂,而且也存在相应的一些复杂性。

5.关于自定义词

现有关于数制的理论和技术概念之中,常常有未定义、定义错误、定义不妥当、定义不明确。如,数制、自然数等;鉴于“三Q”基于一系列本质上全新的概念,并且要求部分改变或者完全改变早先的观念。同时,鉴于计算机的特别复杂性及其深化和拓展,在“三Q”的研究之中,出现了一系列自定义词。(详见具体实施方式之中,负Q进制、进位行数学方法。)

有必要说明一下:①本文件之中数字,凡是没有特别注明的,均为普通十进制数。

②“进制”为一种最典型的“数制”。为简明起见,在“数制”与“进制”均适用的地方,本文件之中有时采用习惯用法,以“进制”来代表全部“数制”。并且在相应文件之中,加以引用。请阅者明鉴。



技术实现要素:

本发明的数学基础为,负Q进制、进位行数学方法(见具体实施方式之中)。以此,作为数字工程总体设计的数学基础,就产生了“负Q进制、进位行数字工程方法”。也称《混进方法HJF》,或《三Q方法》。当不致误解时,也简称为“三Q”。

本发明第一个方面,提出一种新的数字工程方法,负Q进制、进位行数字工程方法。

本发明第二个方面,是依据负Q进制、进位行数字工程方法,来进行新一代计算机的总体设计。本新一代计算机称为“负Q进制、进位行计算机”。简称为“负Q进制计算机”。

本发明计算机,与现有普通二进制计算机的主要不同之处,就在于计算机中CPU中央处理器;特别是其中的运算器。运算包括算术运算和逻辑运算。本发明中只涉及算术运算。因此,本发明计算机总体设计,主要部分就是CPU中央处理器,特别是其中的运算器。

第一个方面,负Q进制、进位行数字工程方法

根据本发明的第一个方面,以“负Q进制、进位行数字工程方法”来进行计算机的总体设计。

“负Q进制、进位行数字工程方法”,就是指该数字工程中的元器件、部件、设备等,均以负Q进制、负Q进制数及其相应法则为准。这类结构的“集合”,就成为“负Q进制结构”。同样,“数字工程”中的元器件、部件、设备等,均以进位行、进位行数及其相应法则为准。这类结构的‘集合”,就成为“进位行结构”。本发明计算机具有“负Q进制结构”和“进位行结构”。

负Q进制、进位行计算机总逻辑框图包括:输入转换逻辑、输入逻辑、CPU中央处理器、外存、输出转换逻辑、输出逻辑、控制台。其中,控制器和K或2K重运算器,组成负Q运算控制逻辑。

一、四种总体设计方案

“负Q进制、进位行数字工程方法”的计算机总体设计方案,设计为以下四种方案之一;该数字工程方法,用操作条件、步骤或流程技术特征,来描述如下:

方案一,①输入K个普通Q进制数到输入转换逻辑;在输入转换逻辑中,编码或另行转换为负Q进制数;或者,直接输入K或2K个负Q进制数;该负Q进制数经输入逻辑至CPU中央处理器;②在CPU中央处理器之中,进行负Q进制“对冲”、“划Q”、“累加”运算;③在输出转换逻辑之中,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑输出计算结果负Q进制数,或普通Q进制数,或直接为普十进制数;

方案二,①输入K个普通Q进制数到输入转换逻辑;在输入转换逻辑中,编码或另行转换为负Q进制数;或者,直接输入K或2K个负Q进制数;该负Q进制数编码为负Q进制“称全一码”;该负Q进制称全一码经输入逻辑至CPU中央处理器;②在CPU中央处理器之中,进行负Q进制称全一码“对冲”、“划Q”、“累加”运算;③在输出转换逻辑之中,将运算结果负Q进制“称全一码”译码为负Q进制数;然后,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑输出计算结果负Q进制数,或普通Q进制数,或直接为普十进制数;

方案三,①输入K个普通Q进制数到输入转换逻辑;在输入转换逻辑中,编码或另行转换为负Q进制数;或者,直接输入K或2K个负Q进制数;该负Q进制数编码或另行转换为{0,±1}二进制数;该{0,±1}二进制数经输入逻辑至CPU中央处理器;②在CPU中央处理器之中,进行{0,±1}二进制“对冲”、“划Q”、“累加”运算;③在输出转换逻辑之中,将运算结果{0,±1}二进制数译码或另行转换为负Q进制数;然后,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑输出计算结果负Q进制数,或普通Q进制数,或直接为普十进制数;

方案四,①输入K个普通Q进制数到输入转换逻辑;在输入转换逻辑中,编码或另行转换为负Q进制数;或者,直接输入K或2K个负Q进制数;该负Q进制数编码或另行转换为“编码{0,±1}二进制数”;该编码{0,±1}二进制数经输入逻辑至CPU中央处理器;②在CPU中央处理器之中,进行编码{0,±1}二进制“对冲”、“划Q”、“累加”运算;③在输出转换逻辑之中,将运算结果“编码{0,±1}二进制数”译码或另行转换为负Q进制数;然后,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑输出计算结果负Q进制数,或普通Q进制数,或直接为普十进制数。

二、三种具体运算步骤

“负Q进制、进位行数字工程方法”的,上述每一种计算机总体设计方案,均进一步包括以下三种具体运算步骤之一。该数字工程步骤,用操作条件、步骤或流程技术特征,来描述如下:

第一种步骤:

第1步,输入K个普Q进制数参予加减运算,K为≥2的整数,Q为正整数;将这些数转换成K或2K个负Q进制数;当直接输入K或2K个负Q进制数时,则本步可跳越过去;

第2步,对第1步转换成的K或2K个负Q进制数中的二个数,进行负Q进制的求和运算;从最低位开始或各位同时按位相加,即在某一位上,取这二个数按位相加;采用“对冲”、“划Q”、累加,得到这二个数该位“按位加”和数;将此和数记入下一运算层,作为“部份和”数;同时所得“进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;

第3步,在上述某位的相邻高位上,重复第2步的运算;如此反复,直至二数最高位也已运算为止;当采用并行运算时,二数各位同时进行第2步及第3步运算,则本步可跳越过去;

第4步,取上述K或2K个数中的另二个数,进行第2步及第3步运算;如此反复,直至上述K或2K个数或该运算层中全部数均取完为止;当仅剩下一个数时,则直接移至下一运算层作为“部份和”数;

第5步,在下一个运算层中,将上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后未产生任何“进位”为止;则最后所得负Q进制数,即为所求K个普Q进制数加减运算结果;当需要以普Q进制数来表示结果时,将此结果负Q进制数转换成普Q进制数或直接为普十进制数;

或者,采用以下第二种步骤:

第1步,输入K个普Q进制数参予加减运算,K为≥2的整数,Q为正整数;将这些数转换成K或2K个负Q进制数;当直接输入K或2K个负Q进制数时,则本步可跳越过去;

第2步,对第1步的K或2K个负Q进制数,从最低位开始,即在某一位上,分别取二数至K或2K个数同时相加;采用“对冲”、“划Q”;这时在同一位上,对n个和为0的数先进行“对冲”;然后,对n个和为mQ的数进行“划Q”;n为≥2的整数,m为整数;所得“进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;

第3步,在上述某位上,余下各数进行“累加”;当参与累加的数的个数>2时,累加可采用“多数累加”;当仅仅顺序串行二数累加时,累加采用普通二数“累加”;即在二数时,得到二个数该位“按位加”和数;将此和数记入下一运算层,作为“部份和”数;同时所得“进位”,则存放到下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;如此反复,直至上述K或2K个数或该运算层中全部数均取完为止;当仅剩下一个数时,则直接移至下一运算层作为“部份和”数;

第4步,在上述某位的相邻高位上,重复第2步及第3步的运算;如此反复,直至K或2K个数的最高位也已运算为止;

第5步,在下一个运算层中,对上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后未产生任何“进位”为止;则 最后所得负Q进制数,即为所求K个普Q进制数加减运算结果;当需要以普Q进制数来表示结果时,将此结果负Q进制数转换成普Q进制数或直接为普十进制数;

或者,采用以下第三种具体运算步骤:

第1步,输入K个普Q进制数参予加减运算,K为≥2的整数,Q为正整数;将这些数转换成K或2K个负Q进制数;当直接输入K或2K个负Q进制数时,则本步可跳越过去;

第2步,采用所谓“二维运算”;即,在K或2K个数的各位上,同时进行运算;对每一位上,n个和为0的数进行“对冲”;n为≥2的整数;

第3步,采用所谓“二维运算”;即,在K或2K个数的各位上,同时进行运算;对每一位上,n个和为mQ的数进行“划Q”;n为≥2的整数,m为整数;所得“进位”,则存放到下一运算层的,任一数据行相邻高位的空位或0位处;

第4步,采用所谓“二维运算”;即,在K或2K个数的各位上,同时进行运算;对每一位上,余下各数进行“累加”;当参与累加的数的个数>2时,累加可采用“多数累加”;当仅仅顺序串行二数累加时,累加采用普通二数“累加”;当仅剩下一个数时,则直接移至下一运算层作为“部份和”数;

第5步,在下一个运算层中,将上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后未产生任何“进位”为止;则最后所得负Q进制数,即为所求K个普Q进制数加减运算结果;当需要以普Q进制数来表示结果时,将此结果负Q进制数转换成普Q进制数或直接为普十进制数。

综上,“负Q进制、进位行数字工程方法”的计算机总体设计方案,设计为上述四种方案之一;进一步,每一种方案,均包括上述三种具体运算步骤之一。该数字工程方法,用操作条件、步骤或流程技术特征来描述。因此,合计共有4×3=12种模式。

本发明计算机总体设计方法方案,采用上述方案一、二、三、四之一,并进一步采用第一、二、三种具体运算步骤之一来实施。其中,输入K个普Q进制数,将这些数“转换成K或2K个负Q进制数”,是指:转换成K个普Q进制数;或转换成K个混Q进制数;或转换成2K个增Q进制数;或转换成2K个偏Q进制数;或转换成2K个称Q进制数。(转换方法见具体实施方式之中,负Q进制、进位行数学方法。)

三、1.《进位行方法》

本发明计算机具有”进位行结构”,运算采用《进位行方法》。在运算过程中,将产生的进位存放在与“按位和”数同等的参予运算位置上;即将产生的进位存放在相邻高位“进位行”中,与一般运算数同等对待,然后与“按位和”一起进行运算。通常又进一步采用“变形进位行”,将进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;同一运算层空位或0位中,同一位上需要处理的进位及和数可以任意不重复地占位。

2.网络化结构

本发明计算机具有网络化结构。“K或2K重运算器”由累加器∑和寄存器网、对冲网、划Q网组成;图3为K或2K重运算器第I(或小写i)位逻辑框图。I(或小写i)为序数。这种网络化结构给网络化运算提供了支持。

3.“对冲”及“划Q”结构

本发明计算机具有“对冲”及“划Q”结构,采用“对冲”及“划Q”技术。图4为对冲逻辑(对冲器)逻辑框图。图5为划Q逻辑(划Q器)逻辑框图。

“对冲”技术。这是指n个数的同一位上求和时,若和数为零,则这同一位上n个数可以消去。在算式中,该位上的这n个数,可以斜线划去,不再参加以后的运算。

“划Q”技术。对Q进制的n个数进行求和运算时,如果在某一位上,其“按位和”为零;但该位上产生进位m,其符号与n个数的该位上和数同符号;n为≥2的整数,m为整数;则进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位上的空位或0位处;同时,将该n个数的该位均置“0”;在算式中,可以斜线划去,不再参加以后的运算;这称为“划Q”;在十进制时Q=10,划Q即为“划十”;“划Q”中m=0时,即为“对冲”。

在实际运算中,常采用先“对冲”、后“划Q”、再“累加”来获得加减的结果。

4.称全一编码

本发明计算机中负Q进制数可不编码;可以负Q进制等等进制数(例如,{0,±1}进制数)编码;也可以称全一码来编码,即将各个负Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0或空位;总位数则为Q或(Q-1)或Q/2或(Q+1)/2位;同时,将S的数符,即表示该位的数为正或负,作为相应称全一码中每一位上的数符。这种以1和-1联合来编码的“联合全一编码”,称为“称全一编码”。

当采用称全一码来编码负Q进制数时,n个数加法仅为n个数中1或的不重复排列,称为“排1”;以称全一码来编码,称为“全一编码”。全一编码可为定码长或变码长。本发明中,采用变码长来展示。

这时,如采用上述“二维运算”,则进一步称为“三维运算”。相应的运算器,则称为“三维运算器”。

本发明计算机中所采用的元器件为二值元器件;或者三值元器件;或者P值元器件;P是数元集的基数,P为正整数;这里,取P为>3的整数;或者以二值编码的元器件;或者以称全一码编码。

当以称全一码编码时,在运算及其控制中,采用三态进行。故本发明计算机中元器件,应采用三值元器件;如果采用二值元器件时,其中1的正负号以一位{二}数表示,其权为0。即,以二位{二}数编码三态。

另一个方面,提供一种负Q进制、进位行计算机

根据本发明的另一个方面,提供一种负Q进制、进位行计算机,以“负Q进制、进位行数字工程方法”来进行总体设计。本发明计算机具有“负Q进制结构”和“进位行结构”。

本发明计算机,采用上述方案一、二、三、四之一,并进一步采用第一、二、三种具体运算步骤之一来实施。其中,输入K个普Q进制数,将这些数“转换成K或2K个负Q进制数”,是指:转换成K个普Q进制数;转换成K个混Q进制数;或转换成2K个增Q进制数;或转换成2K个偏Q进制数;或转换成2K个称Q进制数。(转换方法见具体实施方式之中,负Q进制、进位行数学方法。)

本发明“负Q进制、进位行计算机”,其总体设计方案的具体实施方式,设计优选上述方案二;进一步,优选上述第三种具体运算步骤来实施。(详见,下述具体实施方式)

一、四个层次

本发明计算机总体逻辑关系的展示,分四个层次进行。首先,是计算机总的逻辑框图及其各框设备相互连接关系;然后,是设备中各组件及其相互连接关系;再后,是组件中各部件及其相互连接关系;最后,是部件之中各逻辑构件、器件及其相互连接关系。这样,就形成了全面的、系统的总体逻辑关系。

由于是新一代计算机的总体设计,这里,原则上不涉及零件、元件及其相互连接关系。

展示之所以分层次进行,是因为计算机确实比较复杂。其总体设计在本文中,不如此表述,会困难重重。本发明新一代计算机,主要部分就是CPU中央处理器,特别是其中的运算器。故本发明以运算器为中心,来具体描述:

图1为负Q进制、进位行计算机总逻辑框图。包括输入逻辑、CPU中央处理器、外存、输出逻辑、控制台、输出转换逻辑、输入转换逻辑。其中,CPU中央处理器由内存、运算控制逻辑组成;这些部件的连接关系是本领域公知的。这里,采用上述方案二之中的,第三种具体运算步骤来展示。计算机中所采用的元器件为二值元器件。

设定串行输入K个普通Q进制数到输入转换逻辑,参予加减运算,K为≥2的整数,Q为正整数;在输入转换逻辑之中,将这些数编码转换成K或2K个负Q进制数;该负Q进制数编码为“称全一码”;该称全一码经输入逻辑至CPU中央处理器;在CPU中央处理器之中,进行称全一码“对冲”、“划Q”、“累加”运算;在输出转换逻辑之中,将运算结果“称全一码”译码为负Q进制数;然后,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑输出计算结果负Q进制数,或普通Q进制数,或普通十进制数。

总操作由控制台按既定程序控制,以时钟脉冲来实现。内存及外存与混数运算控制逻辑交换数据,参与执行程序。

图2为负Q进制、进位行计算机(运算控制)逻辑框图。由输入逻辑,K或2K重运算器,输出转换逻辑及控制器组成。其中,控制器和K或2K重运算器组成混数运算控制逻辑。

当采用称全一码编码时,在由译码器构成的输入转换逻辑之中,相应负Q进制数的每一位数,均被编码为“称全一码”;然后,在输入逻辑中,将这些负Q进制数的正负符号,分配到该每一位数所对应称全一码的每一位上去。全一编码的负Q进制数经输入逻辑输出,到K或2K重运算器。输入逻辑可为称全一码移位寄存器。K或2K重运算器中,全一编码负Q进制数经K或2K重运算器,获得全一编码负Q进制数的结果。经由译码器构成的输出转换逻辑,以负Q进制数或普通Q进制数或普通十进制数,通过移位寄存器构成的输出逻辑输出。控制器调控混数运算控制逻辑。

图3为K或2K重运算器第I(或小写i)位逻辑框图。I(或小写i)为序数。

“K或2K重运算器”的第I(或小写i)位由累加器∑i和寄存器网、对冲网、划Q网组成;i为序数;其中,寄存器网由1寄存器1i、2寄存器2i、K或2K寄存器Ki或2Ki组成;各个寄存器二二相连;K或2K个寄存器存放输入的K或2K个负Q进制数;累加器∑i为与K或2K寄存器Ki或2Ki相应的累加器,用来存放累加和数。每个寄存器及累加器∑i的每一位上均设置一个符号位,该符号位为普通二态触发器;符号位也可以放置在专用的符号位寄存器中,在运算时为存放负Q进制数的寄存器或累加器的每一位分配一个符号。

在运算指令的控制下,K或2K重运算器中采用所谓“二维运算”。即,在各个数的同一位上,同时进行运算;并且在各个数的每一位上,亦同时进行运算。这时,“部份和”数送至寄存器网 中,替换已运算过的原存数;进位送至寄存器网中的相邻高位,替换已运算过的原存数。当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后未产生任何“进位”为止;最后,再经累加器∑i输出累加结果;该结果即为上述所设K个普通Q进制数参予加减运算的结果。

上述“K或2K重运算器”当K或2K值较大时,可加以分级、分组处理。

本发明计算机具有”进位行结构”,运算采用《进位行方法》。在运算过程中,将产生的进位存放在与“按位和”数同等的参予运算位置上;即将产生的进位存放在相邻高位“进位行”中,与一般运算数同等对待,然后与“按位和”一起进行运算。通常又进一步采用“变形进位行”,将进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;同一运算层空位或0位中,同一位上需要处理的进位及和数可以任意不重复地占位。

本发明计算机具有网络化结构。“K或2K重运算器”由累加器∑和寄存器网、对冲网、划Q网组成;图3为K或2K重运算器第I(或小写i)位逻辑框图。I(或小写i)为序数。这种网络化结构给网络化运算提供了支撑。

图4为对冲逻辑(对冲器)逻辑框图。图5为划Q逻辑(划Q器)逻辑框图。

本发明相应的计算机运算器中,除采用一般的累加器运算外,为了加速运算,采用“对冲”及“划Q”逻辑。对K或2K个数中的n个数进行求和运算时,如果在某一位上,其中n个运算数的“按位和”为零,但产生进位m(与n个数的和数同符号);n为≥2的整数,m为整数;进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,将n个运算数的某位均以逻辑方式置“0”,不再参加以后的运算;这称为“划Q”;“划Q”中m=0时,称为“对冲”。其中,“对冲”、“划Q”优选采用n=2,m=0或±1时的“对冲”、“划Q”;这里,计算机中元器件采用二值元器件。

“对冲”及“划Q”可采用对冲网和划Q网。对冲网由一个对冲逻辑巡检;或由K(K-1)/2或K(2K-1)个对冲逻辑与寄存器网中各个寄存器二二相连组成。划Q网由一个划Q逻辑巡检;或由K(K-1)/2或K(2K-1)个划Q逻辑与寄存器网中各个寄存器二二相连组成。对冲、划Q逻辑可根据电路需要来分级、分组。

采用“对冲”及“划Q”时,由控制器发出的指令,对各个运算数的每一位实施先“对冲”、后“划Q”运算。划Q产生的“进位”(与n个数的该位上和数同符号),送至下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处。即,在K或2K重运算器中,“进位”送至下一运算层或本运算层尚未运算过的,任一寄存器的相邻高位的空位或0位处的置“1”端。然后,进行累加运算。当参与累加的数的个数>2时,累加可采用“多数累加器”;当仅仅顺序串行二数累加时,累加采用普通二数“累加器”。

在实际运算中,常采用先“对冲”、后“划Q”、再“累加”来获得混数加减的结果。

混数运算时,运算器的输入需要将{Q}数转换为混数。另一方面,运算器的输出在一般中间过程,不必要将混数转换为{Q}数。只有在需要输出最终结果时,才将混数转换为{Q}数或者转换成{十}数输出。这时,本发明相应的计算机,在“运算”数字的输出界面上,只需加上混数转换到{Q}数的译码器即可。

二、称全一编码和“三维运算”

负Q进制、进位行计算机,其中所述运算数是负Q进制数,Q为>1的正整数。采用称全一 编码;或者,以混数进制数编码;或者,不编码;以称全一码来编码时,即将各个负Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0,总位数则为Q或(Q-1)或Q/2或(Q+1)/2位;同时,将S的数符,即表示该位的数为正或负,作为相应称全一码中每一位上的数符;当采用称全一码来编码负Q进制数时,n个数加法仅为n个数中1或的不重复排列;其称全一码编译可以定码长或变码长;本发明计算机中,采用定码长来展示。

这时,如采用上述“二维运算”,则进一步称为“三维运算”。相应的运算器,则称为“三维运算器”。

计算机中所采用的元器件为二值元器件;或者三值元器件;或者P值元器件;P是数元集的基数,P为正整数;这里,取P为>3的整数;或者以二值编码的元器件;或者以称全一码编码。

当以称全一码编码时,混数运算在运算及其控制中,采用三态进行。故本发明计算机中元器件,应采用三值元器件;如果采用二值元器件时,其中1的正负号以一位{二}数表示,其权为0。即,以二位{二}数编码三态。

有益效果

依据“负Q进制、进位行数字工程方法”,来进行总体设计的负Q进制、进位行计算机,简称为“负Q进制计算机”,也属于“三Q计算机”。其中,“负Q进制”包括普Q进制和混数Q进制。混数Q进制包括混Q进制/增Q进制/偏Q进制及称Q进制。

“三Q计算机”从“数制”这一根本性能上加以“革命”,从而取得了全面凌驾于现代及未来各种处理器,特别是计算机之上的态势。它已经大大超越了现有的计算机,登上了计算机(包括处理器)领域的顶峰。表现在以下三方面:

I、计算机性能显著提高——见上述一.I.数字工程的性能显著提高。

据一般情况下粗略估计,新一代计算机的运算速度,当采用三维并取多重系数K=8时,提高五倍左右。当K增加时,则运算速度还将进一步提高。

II、计算机结构的特征——显著简化功能架构和物理实体结构

HJF结构/称全一码结构/多重运算”及“三维运算”结构/“对冲”、“划Q”逻辑结构及网络结构。

III、与普通十进制转换十分方便。

原计算机技术采用普通二进制,不便与普通十进制转换,需要8421编码等中转。现计算机技术当采用Q进制中的普/混/增/偏2进制时,其与普二进制虽有不同,但仍然同属二进制类型;当采用Q进制中的普/混/增/偏10进制时,其与普十进制虽有不同,但仍然同属十进制类型。因此,十分方便。

进一步,还需要特别指出的是:

(1)负Q进制、进位行计算机中的,“混/增2进制计算机”,已经超越了现有的计算机,登上了计算机(包括处理器)领域的顶峰。

此外,“混/增2进制计算机”原则上兼容“普通二进制计算机”。这是因为,“混/增2进制”包含了“普通二进制”。也就是说,包括其内外存、输出入设备、控制台及相应的程序在内,原来在“普通二进制计算机”上使用的,原则上都可以在“混/增2进制计算机”上使用。

(2)当考虑到与普十进制转换时,负Q进制、进位行计算机中的“普/混/增/偏10进制计 算机”比现有的计算机更加优越。原计算机技术不便与普十进制转换,需要8421编码等中转;现计算机技术当采用Q进制中的普/混/增/偏10进制时,其与普十进制虽有不同,但仍然同属十进制类型。因此,十分方便。

(3)当考虑到今后可能出现实用的、稳定的、超高速的三值元器件时(如,量子计算机中),负Q进制、进位行计算机比现有的计算机更加优越。

(4)当考虑到“多值逻辑”领域,特别是“值元集”Z={-1,0,1}的“称三逻辑”,今后可能取得重大突破时,负Q进制、进位行计算机比现有的计算机更加优越。

另一方面,我们在先已经获得的上述发明专利,加上本发明进一步的研究还表明,在计算机(包括处理器)领域,在数制层面的成果,已经被我们一网打尽,今后不大可能再出现类似的飞跃。

“三Q计算机”是“计算机”(包括处理器)史上一项划时代的重大的革命。

附图说明

图1负Q进制、进位行计算机总逻辑框图

包括输入逻辑101、CPU中央处理器102、外存103、输出逻辑104、控制台105、输出转换逻辑108、输入转换逻辑109。其中,CPU中央处理器102由内存106、混数运算控制逻辑107组成。

图2负Q进制、进位行计算机(运算控制)逻辑框图

由输入逻辑101,K或2K重运算器202,输出转换逻辑108及控制器201组成。其中,控制器201和K或2K重运算器202组成混数运算控制逻辑107。

图3K或2K重运算器第I(或小写i)位逻辑框图I(或小写i)为序数。

图4对冲逻辑(对冲器)逻辑框图

由1ij 401,2ij 402,同1逻辑403,异逻辑404及与1门405组成。

图5划Q逻辑(划Q器)逻辑框图

由1ij 401,2ij 402,Q值判定逻辑501,同2逻辑502及与2门503组成。

具体实施方式

首先,本发明基于一系列本质上全新的概念,并且要求部分改变或者完全改变早先的观念。本发明的数学基础是“负Q进制、进位行数学方法”。

然后,具体实施方式,第一部分负Q进制、进位行数字工程方法;和具体实施方式,第二部分负Q进制、进位行计算机。

最后,举例说明增10进制计算机。分述如下:

负Q进制、进位行数学方法

【1.《进位行方法》;1.1进位与“进位行”;1.2《进位行方法》分析;

1.3三数及三数以上求和分析。

2.负Q进制;2.1《数制理论SZLL》;2.2混数及对称;2.3基数P与底数Q的关系,关系函数P=f(q);2.4进制的符号名称/进制表达式/普Q进制/普Q进制;

2.5本文研究的几类混数Q进制;2.6负Q进制编码;2.7普Q进制数转换混数进制数。

3.负Q进制四则运算;3.0{}加减法运算;3.1{*}加减法运算;3.2{}加减法运算;3.3{’}加减法运算;3.4{”}加减法运算;3.5四则运算的特点。

4.普进制{}/混进制{*}/增进制{}/偏进制{’}/称进制{”},与普十进制{十}转换。】

1.《进位行方法》

1.1进位与“进位行”

在电子计算机等数字工程的数值运算中,运算速度提高的关键之一,就在于“进位”。进位的获得,进位的存贮以及进位的参予运算都是至关重要的。“进位”就是争“速度”。在笔算工程中,还直接影响到“出错率”。

为了简明起见,下面以“笔算工程”来分析如下:

所谓“进位行”就是,在运算过程中,将产生的进位存放在与“按位和”数同等的参予运算位置上,然后与“按位和”一起进行运算。二数相加时,在同一运算层中,通常将各位上的进位排列成一行,称为“进位行”。(“行”,行列的概念。)举例如下,设二个普通十进制数求和,算式如式一123456+345678=469134。个位运算(6+8)=14,其进位1写于下一行的高一位上。依此类推。式中二数相加时,各位上不计进位的求和,称为“按位加”。其和称为“按位和”。按位和的数据行,称为“行”。行与进位行组成“运算层”。

1.2《进位行方法》分析

1.2.1二数求和的分析

采用《进位行方法》的加法运算,由上节可知:

①二数相加时,每一位上只有二个数相加;在进位行中直接标示进位,不存在任何困难;

②验算十分方便。

[引理一]二数相加时,任意位上要么有进位记为1,要么无进位记为0;

[引理二]二数相加时,任意位上的和可为0~9之一。但是,当该位上有向高位进位时,该位上的和只能为0~8之一,而不能为9。

由[引理一]和[引理二]可得:

[定理一]二数相加时,当且仅当某位上没有向高位进位时,该位上的和才可能出现9。

1.2.2层次概念及运算层

设二数求和为式二5843029+4746979=10590008。由式二的具体运算可见,运算是分层次进行的。运算层将一个运算解剖成一些子运算。每一运算层中,又将子运算解剖成微运算。微运算仅完成一项简单运算。这就是运算的“层次”概念。

“层次”概念是数学中的基本概念,《进位行方法》正是建立在此基础上。以往的加法运算方法,本质上也隐含“层次”概念。因此,《进位行方法》中的“层次”,从总体上看并未增加运算的复杂性。反之,以往的方法由于隐含了“层次”,反而进一步增加了运算的复杂性。这一点,也进一步造成运算速度被降低。

1.2.3唯一的运算层

二数相加时,特别情况下会出现多层运算层。各层有如下关系成立。

[引理三]二数相加时,当前一运算层某位上有进位时,其后各运算层该位上均不可能出现进位。(由引理一、二得)

[引理四]二数相加时,当后一运算层某位上有进位时,其前各运算层该位上必无进位。(由 引理一、二得)

[定理二]二数相加时,各运算层同一位上,要么都无进位,要么只能有一个进位。(由引理三、四得)

[推论]二数相加时,可将全部各运算层进位行合并为一个进位行;除第0运算层(初始运算式)外,可以将各运算层合并为一个运算层。

因此,以后为使用方便,二数相加时,除初始运算式外,视为仅有唯一运算层。该唯一运算层的和,即为所求该二数相加和数。

1.2.4“变形进位行”

为了减少运算层数,一个运算层中某位上的进位,可以放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;同一运算层空位或0位中,同一位上须处理的进位及和数可以任意不重复地占位。这就是说,上述“进位行”这时,已经变为相应的“变形进位行”。

因此,所谓《进位行方法》就是,在二数加减运算过程中,进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位上的空位或0位处;与一般运算数同等对待;然后,与“按位和”一起进行运算。

1.3三数及三数以上求和分析

设三数求和,算式为231+786+989=2006(式三)。又,设六数求和。算式为786+666+575+321+699+999=4046(式四)。操作要点:

①多个数相加,常出现二个及二个以上的运算层。为了尽量减少运算层常采用以下方式:a、较小的数,直接合并算;b、尽量在“配对”中进位;c、尽量减少在第一运算层上相加数的个数;d.尽量使第二及二以上运算层不出现。②“相同数”、“连续数”等,可直接得“部分和”。

③同一位上各数也可进行“累加”。累加采用≥2的“多数累加”;当采用普通二数“累加”时,则顺序串行累加。④或者,直接移至下一运算层。

2.负Q进制

2.1《数制理论SZLL》

2.1.1“数制”问题

数学科学,就是其基础首先为数和形的科学。一切数字计算的表达,都取决于所采用的数制,而且被这个数制所决定。“数制”问题,或者说“进制”问题,是凌驾于一切数字计算(包括笔算工程、数字计算机及算盘)之上的,最根本性的、实质性的问题。(“笔算工程”的概念,见下述)

在一个数字系统中,按同一种符号规则记录数,以此来进行运算。这种数的记录制度,称为“数字系统的记数制度”。简称为“数制SZ”。“数制”是“数”符号化、形式化表示的制度。

2.1.2位值制数制

设,构造一个数系统,其中的数以各不相同位置上的“数字”来表示。对于数中每个数位上的数字,均给定一个单位值,称为“权”或者“权值”。相应数位上的数字,所表示的数值,又称“该位上的值”,简称为“位值”。数位通常从右向左水平排列,其单位值由低(小)到高(大)。以此规则来表示整个数系统中,每一个数的数制,称为“位值制数制”。

本“三Q”讨论的数制,均为“位值制数制”。在不致误解时,也直接简称为“数制”。

2.1.3数制的三大要素:数位I(或i),数元集Zi和权Li。

a、数位I(或i,下同)表示数制中数的各位数字的位置。I(或i)为序数,各位从右至左来表示。即,i=1,2,3,…表示该数的第1,2,3,…位。

b、数元集Zi,表示第I位上的“数元”组成的集合。同一数制系统中,各个数同一位上不同符号的全体,组成一个该位上的数符集。该数符集中的元素,称为“数的元素”。简称为“数元”。因此,该数符集称为“数元集Z”。

数元集Zi中的数元,可为复数或其他多种多样符号。在《数制理论SZLL》中,以aj来表示数元(a1,a2,a3,…),j为正整数。以iaj表示第i位上数元aj。约定,aj=-A(A为复数)时,可表示为(或者A)。为便于计算,通常取数元aj为整数,以阿拉伯数字来表示。

数元集Z以集合{a1,…,aj,…}来表示,即Z={a1,…,aj,…};或者,Z以文字表明其特征。

数元集Z的基数P(P为正整数),表示了集的元素总数。P的取值不同,标记了数元集Z的变化。各位上的Pi为相同的P,则称为“单一基数”;否则,称为“联合基数”。

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进制”或“进制”。“进制”的底数Q,又称为“进制的基本进位值”,简称为“基本进位值”。又称为“进位值”或“基值”。当各位上的数制幂权底数Qi不全相同时,相应的数制称为“联合Q进制”。另一种常用的权Li采用“等权”,即各位上的权L相同。

为了简明起见,对于一般计算而言,本文以下只讨论数制中的“进制”。

2.1.4负Q进制

在Q进制数中,各位上均为幂权,其底数均为相同的Q。Q为实数。为便于计算,通常取Q为整数,特别是正整数。约定,Q的相反数(-Q),表示为Q加下划线的Q。即Q=-Q,称为“负Q”。

当Q为正数时,相应的Q进制称为“正Q进制”;

当Q为正数时,相应的“Q进制”则称为“负Q进制”。

(这样的约定,目的是为了行文方便,而且,进制之间的对应、对称有利于比较、分析。)

普通Q进制,简称“普Q进制”,这就是现有技术之中,称谓的进制。其中,设定Q为>1的正整数。

设,一个进制的数的各位上数字,可以为正数字,也可以为负数字,也可以为0。则,称这种进制为“混数进制”;这种进制数称为“混数”。(“混”字,是混合的概念。)“混数进制”之中的Q进制,称为“混数Q进制”。对于“混数Q进制”,其中,设定Q为>1的正整数。

“正Q进制”包括普通Q进制和混数Q进制。设定Q为>1的正整数。其中,混数Q进制包括称/偏/增/混Q进制;即,称Q进制、偏Q进制、增Q进制、混Q进制。正Q进制是一族进制。

“负Q进制”包括普通Q进制和混数Q进制。设定Q为>1的正整数。其中,混数Q进制包括称/偏/增/混Q进制;即,称Q进制、偏Q进制、增Q进制、混Q进制。负Q进制是另一族 进制。

2.2混数及对称

2.2.1混数、混数进制及混数Q进制

当数元集Zi中含数元0时,该相应进制被称为“含0进制”;当数元集Zi中不含数元0时,该相应进制被称为“不含0进制”。通常情况下,所谓进制均指“含0进制”;因此,当不致误解时,“进制”专指“含0进制”。

当数元集Zi中,全部数元为连续整数成为“整数段”时,该相应进制被称为“整数段进制”。对于Q进制,则称为“整数段Q进制”。恩格斯指出:“零比其他一切数都有更丰富的内容。”鉴于“0”的这种特殊重要性,在《数制理论SZLL》中,含0整数段去掉0时,仍作为一种特殊的整数段。

当数元集Zi中的数元,可为正数元、负数元或中性数元0时,相应进制被称为“混数进制”。混数进制中的数,称为“混数”。“混数”中既有正数元又有负数元的数,称“纯混数”。

混数进制之中的Q进制,称为“混数Q进制”。Q为实数。为便于计算,通常取Q为整数。

2.2.2对称

在《数制理论SZLL》中,当数元集Zi中的正负数元全部是相反数时,相应进制称为“对称进制”。对于Q进制,则称为“对称Q进制”。简称为“称Q进制”。当数元集的正负数元全部不是相反数时,相应进制称为“不对称进制”。对于Q进制,则称为“不对称Q进制”;当数元集的正负数元有的是相反数,有的不是相反数时,相应进制称为“偏对称进制”。对于Q进制,则称为“偏对称Q进制”。简称为“偏Q进制”。这种分类,称为“小三Q”分类。

2.3基数P与底数Q的关系,关系函数P=f(q)

设,在任一个具有整数段数元集的Q进制中,P为数元集基数;Q为数制幂权的“底数”。P、Q为>1的正整数。当P=Q时,正整数在该进制中可以连续唯一的形态表达,称为“连续进制”,又称“普通进制”;对于Q进制,则称为“普通Q进制”。简称为“普Q进制”;当P>Q时,正整数在该进制中可以连续,但有时同一个数以多种(甚至无限多种)形态表达,称为“重复进制”,或“增强进制”。对于Q进制,又称为“增强Q进制”,简称为“增Q进制”;当P<Q时,正整数在该进制中只能断续的形态表达,称为“断续进制”,或“减弱进制”。对于Q进制,又称为“减弱Q进制”,简称为“减Q进制”。这种分类,称为“大三Q”分类。

显然,当P=Q时,对于Q进制,则称为“普通Q进制”。简称为“普Q进制”;当P>Q时,对于Q进制,又称为“增强Q进制”,简称为“增Q进制”;当P<Q时,对于Q进制,又称为“减弱Q进制”,简称为“减Q进制”。

2.4进制的符号名称/进制表达式/普Q进制/普Q进制

在本“三Q”之中,一个进制的名称采用“ZL”。其中,数元集Z、权L。“ZL”称为该进制的“进制表达式”。联合集进制中的联合Q进制时,则为ZiQi。i表示第i位,i为正整数。其中,进制底数Qi。单一集进制中的联合Q进制时,则为ZQi。联合集进制中的单一Q进制时,则为ZiQ。通常所谓进制,即指单一集进制中的单一Q进制,称为ZQ。这里“基本进位值”Q的具体数值,以中文小写数来表示。本文以下只讨论单一集进制中,单一Q进制的情况。

Q为实数;常取整数,特别是±1~±100。其中,Q=1~10时,亦可以中文小写数(一~十)来表示。例如:ZQ={0,~,9}十进制,或ZQ={0,~,9}10进制;即,表示一个普通十进制,其数元集的数元为0~9。

设,进制Z1Q1和Z2Q2;当Q1=Q2=Q时,称这二个进制均为“Q进制”;当Z1=Z2=Z时,称这二个进制均为“Z数元集进制”。

特别地,一些典型的进制,如“普Q进制”,以符号表示为{Q}。其中,“普二进制”,以符号表示为{二};混10进制{10*};等等。

在“普Q进制”中,需要特别指出的是:

对于含0的普Q进制,Z={0,1,…,(Q-1)}。故ZQ={0,1,…,(Q-1)}Q,Q为>1的整数,称为“含0普Q进制”。符号表示为{含0,Q};对于不含0的ZQ={1,2,…,Q}Q,Q为正整数,称为“不含0普Q进制”。符号表示为{不含0,Q}。含0和不含0的普Q进制,合起来统称为“普Q进制”,Q为正整数。符号表示为{Q}。当不致误解时,“含0普Q进制”亦可称为“普Q进制”,亦以符号{Q}来表示。故可以符号{}及{}(或者{2}及{10}),来表示普进制及普进制。

2.5本文研究的几类混数Q进制

本文仅研究如下的几种混数Q进制。它们是混Q进制、增Q进制、偏Q进制及称Q进制。简写为“混/增/偏/称Q进制”。Q为>1的整数。

2.5.1混Q进制

【本文作者,在先已经获得“混数进制、进位行数字工程方法和混数进制、进位行计算机”,中国、美国和日本的发明专利证书。该专利之中,已经给出了相应的混Q进制内容。】

ZQ={0,±1,…,±(Q-1)}Q进制,Q为>1的整数,称为“含0混Q进制”。符号表示为{含0,Q*};对于不含0的ZQ={±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.5.2增Q进制

【本文作者,在先已经获得“混数进制、进位行数字工程方法和混数进制、进位行计算机”,中国、美国和日本的发明专利证书。该专利之中,已经给出了相应的增Q进制内容。】

在上述2.3节“增Q进制”中,本文只讨论如下这种类型:

增Q进制中,特别重要的一种是P=Q+1>Q,Q为正整数。对于含0的ZQ={0,±1,…,±Q/2}Q进制,Q为正偶数,称为“含0增Q进制”。符号表示为{含0,Q};对于不含0的ZQ={±1,±2,…,±(Q+1)/2}Q进制,Q为正奇数,称为“不含0增Q进制”。符号表示为{不含0,Q}。含0和不含0的增Q进制,合起来统称为“增Q进制”,Q为正整数。符号表示为{Q}。当不致误解时,“含0增Q进制”亦可称为“增Q进制”,亦以符号{Q}来表示。

在《数制理论SZLL》中,{}的名称是:“单一基数P=11,含0,整数段,对称的进制”。可写为{十一,含0,整数段,对称}进制,或者写为{0,±1,±2,…,±5}进制。一般情况下,进一步符号表示为{},称为“增进制”;{}的名称是:“单一基数P=3,含0,整数段,对称的进制”。可写为{三,含0,整数段,对称}进制,或者写为{0,±1}进制。一般情况下,进一步符号表示为{},称为“增进制”。

2.5.3偏Q进制

【本文作者,在先已经获得“混数进制、进位行数字工程方法和混数进制、进位行计算机”,中国、美国和日本的发明专利证书。该专利之中,已经给出了相应的偏Q进制内容。】

在上述2.2.2节“偏Q进制”中,本文只讨论如下这种类型:

在P=Q的偏Q进制中,特别重要的是在其“数元集”中,仅有一个绝对值最大的正数元没有相应的负数元,其余均为0或对称数元的一种。Q为正整数。本文中,偏Q进制仅指这一种。对于含0的ZQ={0,±1,…,±(Q/2-1),Q/2}Q进制,Q为正偶数,称为“含0偏Q进制”。符号表示为{含0,Q’};对于不含0的ZQ={±1,±2,…,±(Q-1)/2,(Q+1)/2}Q,Q为正奇数,称为“不含0偏Q进制”。符号表示为{不含0,Q’}。含0和不含0的偏Q进制,合起来统称为“偏Q进制”,Q为正整数。符号表示为{Q’}。当不致误解时,“含0偏Q进制”亦可称为“偏Q进制”,亦以符号{Q’}来表示。

故可以符号{’}及{’}来表示“偏进制”及“偏进制”。在《数制理论SZLL》中,{’}的名称是:“单一基数P=10,含0,整数段,偏对称的进制”。可写为{十,含0,整数段,偏对称}进制,或者写为{0,±1,±2,…,±4,5}进制。一般情况下,进一步符号表示为{’},称为“偏进制”;{’}的名称是:“单一基数P=2,含0,整数段,偏对称的进制”。可写为{二,含0,整数段,偏对称}进制,或者写为{0,1}进制。一般情况下,进一步符号表示为{’},称为“偏进制”。

2.5.4称Q进制

【本文作者,在先已经获得“混数进制、进位行数字工程方法和混数进制、进位行计算机”,中国、美国和日本的发明专利证书。该专利之中,已经给出了相应的称Q进制内容。】

在上述2.2.2节“称Q进制”中,本文只讨论如下这种类型:

在“普Q进制”的称Q进制中,对于普通对称含0的ZQ={0,±1,…,±(Q-1)/2}Q进制,Q为>1的奇数,称为“含0普通对称Q进制”。符号表示为{含0,Q”};对不含0的ZQ={±1,…,±Q/2}Q进制,Q为正偶数,称为“不含0普通对称Q进制”。符号表示为{不含0,Q”}。含0和不含0的普通对称Q进制,合起来统称为“普通对称Q进制”,当不致误解时,简称为“称Q进制”。Q为>1的整数。符号表示为{Q”}。当不致误解时,“含0普通对称Q进制”,亦可称为“称Q进制”,亦以符号{Q”}来表示。

在《数制理论SZLL》中,{”}的名称是:“单一基数P=3,含0,整数段,对称的进制”。可写为{三,含0,整数段,对称}进制,或者写为{0,±1}进制。一般情况下,进一步符号表示为{”},称为“称进制”。

2.6负Q进制编码

以负Q进制数来编码的方法,称为“负Q进制编码”。以混数进制数来编码的方法,称为“混数编码”。当不至于误解时,“负Q进制编码”也称为“混数编码”。

当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进制数(例如,{0,±1}进制数)编码;也可以称全一码来编码,即将各个负Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0或空位;总位数则为Q或(Q-1)或Q/2或(Q+1)/2位;同时,将S的数符,即表示该位的数为正或负,作为相应称全一码中每一位上的数符。

当采用称全一码来编码负Q进制数时,n个数加法仅为n个数中1或的不重复排列,称为“排1”;以称全一码来编码,称为“全一编码”。称全一码编码可为定码长或变码长。

2.7普Q进制数转换混数进制数

设定一个普Q进制数,总可以转换成相应的一或二个混数进制数的证明。

(1)关于混Q进制数:将这个普Q进制{Q}数的正负符号,分配到相应这个数的每一位上去,即成为相应的一个混Q进制数;

(2)关于增Q进制数:1)以含0的{Q}→{Q}数转换为例:

{Q}={0,1,…,(Q-1)}Q,Q为>1的整数……①

{Q}={0,±1,…,±Q/2}Q。Q为正偶数……②

由①及②可知,Q为≥2的偶数。

∵Q≥2,2Q≥2+Q,Q≥Q/2+1,∴(Q-1)≥Q/2

当Q=2时,(Q-1)=Q/2。即以绝对值而言,{}最大数元所表示的{}数,等于{}最大数元所表示的{}数;当Q为>2的偶数时,(Q-1)>Q/2。即以绝对值而言,{Q}最大数元所表示的{Q}数,总是大于{Q}最大数元所表示的{Q}数。这时,{Q}数元(Q-1)={Q}数元11。即,{Q}数元(Q-1)转换成相应的{Q}数,为两位数11。其中,高位实质是“进位”。由此可知,一个{Q}数转换成相应的{Q}数,当Q=2时,仍为一个{Q}数;当Q为>2的偶数时,可统一成为二个{Q}数之和。其中一个{Q}数,即为“进位行”数。

2)对于不含0的情况,Q为正奇数。同理可证,有类似的结论。

由此可知,一个普Q进制数,总可以转换成相应的二个增Q进制数。其一,是由普Q进制数的各位单个数字,分别转换时产生的增Q进制数各位上的“个位”值;其二,是由这一转换时产生的各个进位,所组成的“进位行”。

(3)关于偏Q进制数:同理可证,与增Q进制一样有类似的结论。

(4)关于称Q进制数:同理可证,与增Q进制一样有类似的结论。

3.负Q进制四则运算

负Q进制包括“普/混/增/偏/称Q进制”;即,普Q进制、混Q进制、增Q进制、偏Q进制及称Q进制。负Q进制四则运算之中,特别例举Q=10或3的情况,即,关于普进制{}、混进制{*}、增十进制{}、偏进制{’}及称进制{”}。分述如下。

3.1加减法运算

3.1.0{}加减法运算

{}的加减法例15027+13735=28742式中求得和为28742。当转化为普十进制{十}数时,和为12662。一般来说,所求和不必转化(特别是,作为计算过程中间结果时)。确需转化时,方法见下述4.1转换法则。

这里,注意二点:a.运算进位要变号;b.运算过程之中,如出现负数元,可按照下列对照表操作。

{}运算中出现的混数,转换{}数对照表:

{}混数9,…,21,0,1,2,…,9

{}数11,…,18,19,0,1918,…,11

3.1.1{*}加减法运算

{*}的加减法 4987+7675=12662

式中求得和为12662。当转化为普十进制{十}数时,和为12662。一般来说,所求和不必转化(特别是作为计算过程中间结果时)。确需转化时,方法见4.1转换法则。

3.1.2{}加减法运算

{}的加减法 5013+12335=13342

式中求得和为13342。当转化为普十进制{十}数时,和为12662。一般来说,所求和不必转化(特别是作为计算过程中间结果时)。确需转化时,方法见4.1转换法则。

3.1.3{’}加减法运算

{’}的加减法15013+12335=27342

式中求得和为27342。当转化为普十进制{十}数时,和为12662。一般来说,所求和不必转化(特别是作为计算过程中间结果时)。确需转化时,方法见4.1转换法则。

3.1.4{”}加减法运算

{”}的加减法 111+111=110

求得和为110。当转化为普十进制{十}数时,和为12。一般来说,所求和不必转化(特别是作为计算过程中间结果时)。确需转化时,方法见4.1转换法则。

3.2四则运算的特点

①加减法合并为加法,减法化为加法来运算。这一来实际计算中,就消除了通常连加减的困难。这是由于混数的特性所决定。

②“对冲”技术。这是指n个数的同一位上求和时,若和数为零,则这同一位上n个数可以消去。在算式中,该位上的这n个数,可以斜线划去,不再参加以后的运算。

“划Q”技术。对Q进制的n个数进行求和运算时,如果在某一位上,其“按位加”和为零,但该位上产生进位m(与n个数该位上和数的符号一致);n为≥2的整数,m为整数;则进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位上的空位或0位处;同时,将这n个数的该位均置“0”,不再参加以后的运算。在算式中,这 n个数的该位,可以斜线划去;这称为“划Q”;在十进制时Q=10,划Q即为“划十”;“划Q”中m=0时,即为“对冲”。

在实际运算中,常采用先“对冲”、后“划Q”、再“累加”来获得混数加减的结果。

③乘除方法简单。由于采用混数可使除法中的“减”过程变为“加”过程。为了去掉“减”过程的思路,进一步还可以令被除数变号。然后,整个“减”过程完全变成“加”过程。这可使整个运算的复杂性进一步降低。应该注意,此时若出现余数,则要将该余数变号后,才是最终运算结果的余数。

同时,除法中的试商过程,可变为“混试商”过程。“混试商”是指负Q进制除法运算时,试商获得的数。负Q进制除法运算,除法速度不仅获得大大提高,而且以灵活的近似商过程,代替了复杂的普通“试商”过程。

④四则运算加减乘除,均可全面地显著提高运算速度。

⑤加强了运算正确性的保障,在“笔算工程”中,还大大降低了笔算的出错率。

4.普进制{}与普十进制{十}转换

4.1{}数转换成{十}数

这里指整数的情况,{}28742={十}12662。

{}数转换成{十}数。首先,将{}数转换成相应混数。方法是,①“奇不变,偶变”。即,奇数位的数字不变。②将偶数位的数字绝对值,对10取“补”数;③同时,在相邻的高位减1(其中1的数符,同偶数位原数符)。④进一步,各位上按位加求和,进位不变号。

{}数转换相应混数的对照表:

{}数9,…,21,0,1,2,…,9

相应混数11,…,18,19,0,19,18,…,11

4.2{十}数转换成{}数

这里指正整数的情况,例如{十}12662={}28742。

{十}数转换成{}数。首先,将{十}数转换成相应混数。方法是,①“奇不变,偶变”。即,奇数位的数字不变;②将偶数位的数字绝对值,对10取“补”数;③同时,在相邻的高位加1(其中1的数符,同偶数位原数符);④进一步,各位上按位加求和,进位不变号。

当{十}数为负数时,①对该数的相反数,“奇变,偶不变”。即,偶数位的数字不变;②奇数位的数字不变号;但是,将奇数位的数字绝对值,对10取“补”数;③同时,在相邻的高位加1(其中1的数符,同奇数位原数符)。④进一步,各位上按位加求和,进位不变号。

{十}数转换混数的对照表:

{十}数9,…,21,0,1,2,…,9

相应混数11,…,18,19,0,19,18,…,11

【以下4.至4.2节为混Q进制的情况】

4.混进制{*}与普十进制{十}转换

4.1{*}数转换成{十}数

这里指整数的情况,例如{*}12662={十}12662。

①{*}12662“奇不变,偶变”。即,奇数位的数字不变。②偶数位的数字变号。

4.2{十}数转换成{*}数

①{十}12662“奇不变,偶变”。即,奇数位的数字不变。②偶数位的数字变号。

当{十}数为负数时,则①将该数的相反数,“奇变,偶不变”。即,偶数位的数字不变;②奇数位的数字不变号;但是,将奇数位的数字绝对值,对10取“补”数;③同时,在相邻的高位加1(其中1的数符,同奇数位原数符)。④进一步,各位上按位加求和,进位不变号。

【以下4.至4.2节为增Q进制的情况】

4.增进制{}与普十进制{十}转换

4.1{}数转换成{十}数

这里指整数的情况,例如{}13342={十}12662。

①{}13342“奇不变,偶变”。即,奇数位的数字不变。②偶数位的数字变号。

③然后,{十}数转换成{十}数。方法有几种:一种是在该数的各位上,使正数不变;负数变为其绝对值对10取“补”数,同时在相邻的高位减1(即加1)。另一种方法是:在该数的各位上,连续正数字(或0)的数字段照写不变。但,当其不在{十}数末尾(个位)时,则最低位加1;连续负数字的数字段,则使负数字变为其绝对值对9取“补”数。然后,在其最低位加1。这样,求得结果即为相应{十}数。

当需转换的{}数首位为负,即该数为负数时,则将该数的相反数转换成{十}数,然后取此{十}数的符号为负,即可。

4.2{十}数转换成{}数

①“奇不变,偶变”。即,奇数位的数字不变。②然后,将偶数位的数字绝对值,对10取“补”数;同时,在相邻的高位加1(其中1的数符,同偶数位原数符);③进一步,各位上按位加求和,进位不变号。④对于所得数之中的±6~±9,对10取“补”数;并且变号;⑤同时,在相邻的高位减1(其中1的数符,同偶数位原数符);⑥进一步,各位上按位加求和,进位不变号。

当{十}数为负数时,则①将该数的相反数,“奇变,偶不变”。即,偶数位的数字不变;②奇数位的数字不变号;但是,将奇数位的数字绝对值,对10取“补”数;③同时,在相邻的高位加1(其中1的数符,同奇数位原数符)。④进一步,各位上按位加求和,进位不变号。⑤对于所得数之中的±6~±9,对10取“补”数;并且变号;⑥同时,在相邻的高位减1(其中1的数符,同偶数位原数符);⑦进一步,各位上按位加求和,进位不变号。

【以下4.至4.2节为偏Q进制的情况】

4.偏进制{’}与普十进制{十}转换

4.1{’}数转换成{十}数

这里指整数的情况,例如{’}13342={十}12662。

①{’}13342“奇不变,偶变”。即,奇数位的数字不变。②偶数位的数字变号。

③然后,{十’}数转换成{十}数。方法有几种:一种是在该数的各位上,使正数不 变;负数变为其绝对值对10取“补”数,同时在相邻的高位减1(即加1)。另一种方法是:在该数的各位上,连续正数字(或0)的数字段照写不变。但,当其不在{十’}数末尾(个位)时,则最低位加1;连续负数字的数字段,则使负数字变为其绝对值对9取“补”数。然后,在其最低位加1。这样,求得结果即为相应{十}数。

当需转换的{’}数首位为负,即该数为负数时,则将该数的相反数转换成{十}数,然后取此{十}数的符号为负,即可。

4.2{十}数转换成{’}数

①“奇不变,偶变”。即,奇数位的数字不变。②然后,将偶数位的数字绝对值,对10取“补”数;同时,在相邻的高位加1(其中1的数符,同偶数位原数符);③进一步,各位上按位加求和,进位不变号。④对于所得数之中的(5,±6,~,±9),对10取“补”数;并且变号;⑤同时,在相邻的高位减1(其中1的数符,同偶数位原数符);⑥进一步,各位上按位加求和,进位不变号。

当{十}数为负数时,则①将该数的相反数,“奇变,偶不变”。即,偶数位的数字不变;②奇数位的数字不变号;但是,将奇数位的数字绝对值,对10取“补”数;③同时,在相邻的高位加1(其中1的数符,同奇数位原数符)。④进一步,各位上按位加求和,进位不变号。⑤对于所得数之中的(5,±6,~,±9),对10取“补”数;并且变号;⑥同时,在相邻的高位减1(其中1的数符,同偶数位原数符);⑦进一步,各位上按位加求和,进位不变号。

【以下4.至4.2节为称Q进制的情况】

4.称进制{”}与普十进制{十}转换

4.1{”}数转换成{十}数

这里指整数的情况,例如{”}110={十}12。

首先,{”}110按各位的权值以{十}数展开;然后,以{十}数相加,获得{十}12。

当需转换的{三”}数首位为负,即该数为负数时,则将该数的相反数转换成{十}数,然后取此{十}数的符号为负,即可。

4.2{十}数转换成{”}数

首先,{十}数转换成{Q}数。转换方法是:将{十}数连续除以Q,直至商为0时停止。这样,每次均出现一位余数。从最后一位余数起,依式中位置从低到高,列出各位余数。则所获数即为需转换结果{Q}数。然后,将{Q}数转换成{Q”}数。

当Q=3时,{十}数转换成{三}数,然后,将{三}数编码转换成{三”}数。例{十}12={三”}110。进一步,再将{三”}数110,转换成{”}数110。

【以上各段4.至4.2节,分别为混/增/偏/称Q进制的情况】

第一部分 负Q进制、进位行数字工程方法

根据本发明的一个方面,提供一种负Q进制、进位行数字工程方法,来进行计算机的总体设计。图1为负Q进制、进位行计算机总逻辑框图。包括输入逻辑101、CPU中央处理器102、外存103、输出逻辑104、控制台105、输出转换逻辑108、输入转换逻辑109。图2负Q进制、进 位行计算机(运算控制)逻辑框图。由输入逻辑101,K或2K重运算器202,输出转换逻辑108及控制器201组成。其中,控制器201和K或2K重运算器202组成混数运算控制逻辑107。

本发明中,“负Q进制、进位行数字工程方法”的计算机总体设计方案,设计优选上述方案二;该数字化工程用操作条件、步骤或流程技术特征来描述如下:①设定串行输入K个普通Q进制数到输入转换逻辑109,在输入转换逻辑109中,编码或另行转换为负Q进制数;或者,直接输入K或2K个负Q进制数;该负Q进制数编码为负Q进制“称全一码”;该负Q进制称全一码经输入逻辑101至CPU中央处理器102;②在CPU中央处理器102之中,进行负Q进制称全一码“对冲”、“划Q”、“累加”运算;③在输出转换逻辑108之中,将运算结果负Q进制“称全一码”译码为负Q进制数;然后,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑104输出计算结果负Q进制数,或普通Q进制数,或直接为普十进制数。

优选以下第三种具体运算步骤;该数字化工程用操作条件、步骤或流程技术特征来描述如下:

第1步,输入K个普Q进制数参予加减运算,K为≥2的整数,Q为正整数;将这些数转换成K或2K个负Q进制数;当直接输入K或2K个负Q进制数时,则本步可跳越过去;

第2步,采用所谓“二维运算”;即,在K或2K个数的各位上,同时进行运算;对每一位上,n个和为0的数进行“对冲”;n为≥2的整数;

第3步,采用所谓“二维运算”;即,在K或2K个数的各位上,同时进行运算;对每一位上,n个和为mQ的数进行“划Q”;n为≥2的整数,m为整数;所得“混数进位”,则存放到下一运算层的,任一数据行相邻高位的空位或0位处;

第4步,采用所谓“二维运算”;即,在K或2K个数的各位上,同时进行运算;对每一位上,余下各数进行“累加”;当参与累加的数的个数>2时,累加可采用“多数累加”;当仅仅顺序串行二数累加时,累加采用普通二数“累加”;当仅剩下一个数时,则直接移至下一运算层作为“部份和”数;

第5步,在下一个运算层中,将上述“按位和”数及“进位”数进行前述第2步、第3步、第4步求和运算;如此反复,直至运算层中,运算后未产生任何“进位”为止;则最后所得负Q进制数,即为所求K个普Q进制数加减运算结果;当需要以普Q进制数来表示结果时,将此结果负Q进制数转换成普Q进制数或直接为普十进制数。

上述输入K个普Q进制数,将这些数“转换成K或2K个负Q进制数”,是指:转换成K个普Q进制数;或转换成K个混Q进制数;或转换成2K个增Q进制数;或转换成2K个偏Q进制数;或转换成2K个称Q进制数。

本发明计算机具有”进位行结构”,运算采用《进位行方法》。在运算过程中,将产生的进位存放在与“按位和”数同等的参予运算位置上;即将产生的进位存放在相邻高位“进位行”中,与一般运算数同等对待,然后与“按位和”一起进行运算。通常又进一步采用“变形进位行”,将进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;同一运算层空位或0位中,同一位上需要处理的进位及和数可以任意不重复地占位。因此,本发明计算机必须具有相应的“进位行结构”。

本发明计算机具有网络化结构。“K或2K重运算器”由累加器∑i304和寄存器网311、对冲 网312、划Q网313组成;图3为K或2K重运算器第I(或小写i)位逻辑框图。I(或小写i)为序数。这种网络化结构给网络化运算提供了支撑。

本发明计算机具有“对冲器”及“划Q器”结构,采用“对冲”及“划Q”技术。

“对冲”技术。这是指n个数的同一位上求和时,若和数为零,则这同一位上n个数可以消去,不再参加以后的运算。

“划Q”技术。对Q进制的n个数进行求和运算时,如果在某一位上,其“按位加”和为零;但该位上产生进位m,其符号与n个数的该位上和数同符号;n为≥2的整数,m为整数;则进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位上的空位或0位处;同时,将该n个数的该位均置“0”,不再参加以后的运算;这称为“划Q”;在十进制时Q=10,划Q即为“划十”;“划Q”中m=0时,即为“对冲”。

在实际运算中,常采用先“对冲”、后“划Q”、再“累加”来获得混数加减的结果。

本发明中负Q进制数优选以称全一码来编码,即将各个负Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0或空位;总位数则为Q或(Q-1)或Q/2或(Q+1)/2位;同时,将S的数符,即表示该位的数为正或负,作为相应称全一码中每一位上的数符。当采用称全一码来编码负Q进制数时,称全一码编码可为定码长。这时,如采用上述“二维运算”,则称为“三维运算”。相应的运算器,则称为“三维运算器”。

计算机中所采用的元器件为二值元器件。

第二部分 负Q进制、进位行计算机

本发明计算机总体逻辑关系的展示,是分四个层次进行的。首先,是计算机总的逻辑框图及其各框设备相互连接关系;然后,是设备中各组件及其相互连接关系;再后,是组件中各部件及其相互连接关系;最后,是部件之中各逻辑构件、器件及其相互连接关系。由于是计算机的总体设计,这里,原则上不涉及零件、元件及其相互连接关系。这样,就形成了全面的、系统的总体逻辑关系。展示之所以分层次进行,是因为计算机确实比较复杂,其总体设计不如此表述会困难重重。

本发明优选采用上述方案二之中的第三种具体运算步骤来展示。计算机中所采用的元器件为二值元器件。本发明计算机主要部分就是CPU中央处理器,特别是其中的运算器。故本发明以运算器为中心来具体描述如下:

图1为负Q进制、进位行计算机总逻辑框图。包括输入逻辑101、CPU中央处理器102、外存103、输出逻辑104、控制台105、输出转换逻辑108、输入转换逻辑109。其中,CPU中央处理器102由内存106、混数运算控制逻辑107组成;这些部件的连接关系是本领域公知的。

设定串行输入K个普通Q进制数到输入转换逻辑109,参予加减运算,K为≥2的整数,Q为正整数;在输入转换逻辑109之中,将这些数编码转换成K或2K个负Q进制数;该负Q进制数编码为“称全一码”;该称全一码经输入逻辑101至CPU中央处理器102;在CPU中央处理器102之中,进行称全一码“对冲”、“划Q”、“累加”运算;在输出转换逻辑108之中,将运算结果“称全一码”译码为负Q进制数;然后,负Q进制数译码或另行转换为普通Q进制数;最后,在输出逻辑104输出计算结果负Q进制数,或普通Q进制数,或普通十进制数。

总操作由控制台105按既定程序控制,以时钟脉冲来实现。内存106及外存103与混数运算 控制逻辑107交换数据,参与执行程序。

图2为负Q进制、进位行计算机(运算控制)逻辑框图。由输入逻辑101,K或2K重运算器202,输出转换逻辑108及控制器201组成。其中,控制器201和K或2K重运算器202组成混数运算控制逻辑107。

当采用称全一码编码时,在由译码器构成的输入转换逻辑109之中,相应负Q进制数的每一位数,均被编码为“称全一码”;然后,在输入逻辑101中,将这些负Q进制数的正负符号,分配到该每一位数所对应称全一码的每一位上去。全一编码的负Q进制数经输入逻辑101输出,到K或2K重运算器202。输入逻辑101为称全一码移位寄存器。K或2K重运算器202中,全一编码负Q进制数经K或2K重运算器202,获得全一编码负Q进制数的结果。经由译码器构成的输出转换逻辑108,以负Q进制数或普通Q进制数或普通十进制数,通过移位寄存器构成的输出逻辑104输出。控制器201协调控制混数运算控制逻辑107。

图3为K或2K重运算器第I(或小写i)位逻辑框图。I(或小写i)为序数。

本发明计算机具有网络化结构。“K或2K重运算器”由累加器∑i304和寄存器网311、对冲网312、划Q网313组成;这种网络化结构给网络化运算提供了支撑。

“K或2K重运算器”202的第I(或小写i)位由累加器∑i 304和寄存器网311、对冲网312、划Q网313组成;i为序数;其中,寄存器网311由1寄存器1i301、2寄存器2i 302、K或2K寄存器Ki或2Ki 303组成;各个寄存器二二相连;K或2K个寄存器存放输入的K或2K个负Q进制数;累加器∑i 304为与K或2K寄存器Ki或2Ki 303相应的累加器,用来存放累加和数。每个寄存器及累加器∑i 304的每一位上均设置一个符号位,该符号位为二态触发器。

在运算指令的控制下,K或2K重运算器202中采用所谓“二维运算”。即,在各个数的同一位上,同时进行运算;并且在各个数的每一位上,亦同时进行运算。这时,“部份和”数送至寄存器网311中,替换已运算过的原存数;进位送至寄存器网311中的相邻高位,替换已运算过的原存数。当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后未产生任何“进位”为止;最后,再经累加器∑i 304输出累加结果;该结果即为上述所设K个普通Q进制数参予加减运算的结果。

本发明相应的计算机运算器中,除采用一般的累加器运算外,为了加速运算,采用“对冲”及“划Q”逻辑。对K或2K个数中的n个数进行求和运算时,如果在某一位上,其中n个运算数的“按位和”为零,但产生进位m(与n个数的和数同符号);n为≥2的整数,m为整数;进位放入下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处;然后,将n个运算数的某位均以逻辑方式置“0”,不再参加以后的运算;这称为“划Q”;“划Q”中m=0时,称为“对冲”。其中,“对冲”、“划Q”优选采用n=2,m=0或±1时的“对冲”、“划Q”;这里,计算机中元器件采用二值元器件。

“对冲”及“划Q”可采用对冲网312和划Q网313。对冲网312由K(K-1)/2或K(2K-1)个对冲逻辑305、对冲逻辑306、对冲逻辑307与寄存器网311中各个寄存器二二相连组成。划Q网313由K(K-1)/2或K(2K-1)个划Q逻辑308、划Q逻辑309、划Q逻辑310与寄存器网311中各个寄存器二二相连组成。对冲、划Q逻辑可根据电路需要来分级、分组。

采用“对冲”及“划Q”时,由控制器发出的指令,对各个运算数的每一位实施先“对冲”、后“划Q”运算。划Q产生的“进位”(与n个数的该位上和数同符号),送至下一运算层或本运 算层尚未运算过的,任一数据行相邻高位的空位或0位处。即,在K或2K重运算器202中,“进位”送至下一运算层或本运算层尚未运算过的,任一寄存器的相邻高位的空位或0位处的置“1”端。然后,进行累加运算。当参与累加的数的个数>2时,累加可采用“多数累加器”;当仅仅顺序串行二数累加时,累加采用普通二数“累加器”。

上述“K或2K重运算器”当K或2K值较大时,可加以分级、分组处理。

图4为对冲逻辑(对冲器)逻辑框图。由1ij 401,2ij 402,同1逻辑403,异逻辑404及与1门405组成。1寄存器1i 301,全一编码为1ij 401;(j为相应称全一码上各位的序数,下同;)2寄存器2i 302,全一编码为2ij 402;K或2K寄存器Ki或2Ki 303,全一编码为Kij或2Kij;从1ij及2ij直至Kij或2Kij,称全一码编码的全体中,任取二个形成组合;取其中一个组合如下述:1寄存器1i 301的1ij 401,其“1”端连接同1逻辑403的输入,1ij符的“1”端连接异逻辑404输入;2寄存器2i 302的1ij 402,其“1”端连接同1逻辑403的输入,2ij符的“1”端连接异逻辑404的输入;同1逻辑403的输出连接与1门405输入;异逻辑404的输出连接与1门405输入;与1门405的输出,连接1寄存器1i 301的1ij 401和2寄存器2i 302的1ij 402的置“0”端;

图5为划Q逻辑(划Q器)逻辑框图。由1ij 401,2ij 402,Q值判定逻辑501,同2逻辑502及与2门503组成。1寄存器1i 301,全一编码为1ij 401;2寄存器2i 302,全一编码为2ij 402;K或2K寄存器Ki或2Ki 303,全一编码为Kij或2Kij;从1ij及2ij直至Kij或2Kij,称全一码编码的全体中,任取Q个形成组合;取其中一个组合如下述:1ij 401的“1”端连接Q值判定逻辑501的输入,1ij符的“1”端连接同2逻辑502的输入;2ij 402的“1”端连接Q值判定逻辑501的输入;2ij符的“1”端连接同2逻辑502的输入;如此连接共Q个;Q值判定逻辑501接受共Q个输入;Q值判定逻辑501的输出连接与门503的输入;同2逻辑502接受共Q个输入;同2逻辑502的输出连接与门503输入;与门503输出进位(同符号),连接K或2K重运算器202中任一寄存器的相邻高位置“1”端;同时,与门503输出进位,连接1寄存器1i301的1ij 401和2寄存器2i 302的2ij 402及组合内共Q个置“0”端。

混数运算时,运算器的输入需要将{Q}数转换为混数。另一方面,运算器的输出在一般中间过程,不必要将混数转换为{Q}数。只有在需要输出最终结果时,才将混数转换为{Q}数或者转换成{十}数输出。这时,本发明相应的计算机,在“运算”数字的输出界面上,只需加上混数转换到{Q}数的译码器即可。

负Q进制、进位行计算机,其中所述运算数是负Q进制数,Q>1的整数。以称全一码来编码时,即将各个负Q进制数的每一位数S,都以|S|个1从最低位顺序至高位排列来对应,其余高位均为0,总位数则为Q或(Q-1)或Q/2或(Q+1)/2位;同时,将S的数符,即表示该位的数为正或负,作为相应称全一码中每一位上的数符;当采用称全一码来编码负Q进制数时,n个数加法仅为n个数中1或的不重复排列;其称全一码编译可以定码长或变码长;本发明计算机中,采用定码长来展示。这时,如采用上述“二维运算”,则称为“三维运算”。相应的运算器,则称为“三维运算器”。

本具体实施方式之中,计算机中所采用的元器件为二值元器件。

举例说明

10进制计算机

负Q进制、进位行计算机,包括普/混/增/偏/称Q进制计算机。其中,增Q进制中Q=10时,相应增Q进制、进位行计算机,称为“增进制计算机”。“增进制计算机”可为上述方案一、二、三、四之一;本发明计算机中,采用方案二来展示。数字工程方法可采用第一种步骤、或第二种步骤、或第三种具体运算步骤。这里,采用第三种具体运算步骤来展示。

设定串行输入K个普通十进制数到输入转换逻辑109,参予加减运算,K为≥2的整数;在输入转换逻辑109之中,将这些数编码转换成2K个增进制数;或者,直接输入2K个增进制数;该增进制数编码为“称全一码”;该增进制称全一码经输入逻辑101至CPU中央处理器102;在CPU中央处理器102之中,进行增进制称全一码“对冲”、“划Q”、“累加”运算;在输出转换逻辑108之中,将运算结果增进制“称全一码”译码为增进制数;然后,增进制数译码或另行转换为普通十进制数;最后,在输出逻辑104输出计算结果增进制数,或直接为普通十进制数。总操作由控制台105按既定程序控制,以时钟脉冲来实现。内存106及外存103与混数运算控制逻辑107交换数据,参与执行程序。

“2K重运算器”202由累加器∑i 304和寄存器网311、对冲网312、划Q网313组成;i为序数;“2K重运算器”202中,寄存器网311由1寄存器1i 301、2寄存器2i 302、2K寄存器2Ki 303组成;各个寄存器二二相连;2K个寄存器存放输入的2K个增进制数;累加器∑i 304为与2K寄存器2Ki 303相应的累加器,用来存放累加和数。每个寄存器及累加器∑i 304的每一位分配一个符号位,该符号位为普通二态触发器。

在运算指令的控制下,2K重运算器202中采用所谓“二维运算”。即,在各个数的同一位上,同时进行运算;并且在各个数的每一位上,亦同时进行运算。这时,“部份和”数送至寄存器网311中,替换已运算过的原存数;进位送至寄存器网311中的相邻高位,替换已运算过的原存数。当下一个运算层指令到达时,将进位数与“按位和”数再进行相加;如此重复,直至运算层中,运算后未产生任何“进位”为止;最后,再经累加器∑i 304输出累加结果;该结果即为上述所设K个普通十进制数参予加减运算的结果。

本发明相应的计算机运算器中,除采用一般的累加器运算外,为了加速运算,采用“对冲”及“划Q”逻辑。“对冲”及“划Q”可采用对冲网312和划Q网313。对冲网312由K(2K-1)个对冲逻辑305、对冲逻辑306、对冲逻辑307与寄存器网311中各个寄存器二二相连组成。划Q网313由K(2K-1)个划Q逻辑308、划Q逻辑309、划Q逻辑310与寄存器网311中各个寄存器二二相连组成。

采用“对冲”及“划Q”时,由控制器发出的指令,对各个运算数的每一位实施先“对冲”、后“划Q”运算。划Q产生的“进位”(与n个数的该位上和数同符号),送至下一运算层或本运算层尚未运算过的,任一数据行相邻高位的空位或0位处。即,“进位”送至2K重运算器202中任一寄存器的相邻高位的空位或0位处置“1”端。然后,进行累加运算。当仅仅顺序串行二数累加时,累加采用普通二数“累加器”。这时,如采用上述“二维运算”,则称为“三维运算”。相应的运算器,则称为“三维运算器”。

进制、进位行计算机,其中所述运算数是增进制数。增进制数可以称全一码编码;或者,以负Q进制数编码;或者,不编码;当对增进制数采用称全一码编码时,只要将这些增进制数的每一位,全一编码为5位称全一码;然后,将这些增进制数每一位的正负符号,分 配到其每一位相应的5位称全一码上去。

本发明计算机中采用二值元器件,其中1的正负号以一位{二}数表示,其权为0。即,以二位{二}数编码三态。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1