FR2786579A1 - Invention relates to a procedure for determination of the remainder of the division of an 8 bit binary number N by a factor (22-1) corresponding to a whole power of 2 reduced by 1 - Google Patents
Invention relates to a procedure for determination of the remainder of the division of an 8 bit binary number N by a factor (22-1) corresponding to a whole power of 2 reduced by 1 Download PDFInfo
- Publication number
- FR2786579A1 FR2786579A1 FR9815634A FR9815634A FR2786579A1 FR 2786579 A1 FR2786579 A1 FR 2786579A1 FR 9815634 A FR9815634 A FR 9815634A FR 9815634 A FR9815634 A FR 9815634A FR 2786579 A1 FR2786579 A1 FR 2786579A1
- Authority
- FR
- France
- Prior art keywords
- binary
- factor
- remainder
- divisibility
- division
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/727—Modulo N arithmetic, with N being either (2**n)-1,2**n or (2**n)+1, e.g. mod 3, mod 4 or mod 5
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
Description
4 27865794 2786579
Procédé et Dispositif de Calcul binaire de Reste d'une Division par un Facteur Correspondant à (2n - 1) La présente invention concerne le domaine de la division binaire de nombres entiers voire de nombres à virgule. Un problème récurrent dans le domaine du calcul, binaire ou non, est d'obtenir le quotient et le reste d'une division d'un nombre entier par un facteur entier, et plus généralement de connaître la divisibilité d'un nombre entier ou décimal par un facteur entier ou décimal.10 Le calcul numérique du quotient et du reste de la division de deux nombres binaires par un processeur présente des inconvénients notoires de lenteur et de mobilisation des capacités de calcul du processeur, car les algorithmes de division binaire procèdent par15 approximations successives bit par bit et nécessitent une multitude de cycles de multiplications, d'additions The present invention relates to the field of the binary division of whole numbers or even of decimal numbers. A recurring problem in the field of computation, binary or not, is to obtain the quotient and the remainder of a division of an integer by an integer factor, and more generally to know the divisibility of an integer or decimal number by an integer or decimal factor.10 Numerical calculation of the quotient and of the remainder of the division of two binary numbers by a processor has notable drawbacks of slowness and mobilization of the computing capacities of the processor, because the binary division algorithms proceed by 15 successive bit-by-bit approximations and require a multitude of multiplication and addition cycles
et d'incrémentations répétitives. and repetitive increments.
On connaît plus particulièrement, des réalisations d'unités dédiées au calcul du reste de la division d'un nombre binaire par un facteur binaire déterminé, dans lesquelles des circuits combinatoires mettent en oeuvre des équations logiques permettant d'établir l'état de chaque bit du reste en fonction des divers états des bits du nombre à diviser. De telles réalisations ont l'inconvénient d'être particulièrement complexes à concevoir et de nécessiter un nombre élevé de portes logiques, d'autant plus élevé que les nombres à diviser We know more particularly, realizations of units dedicated to the calculation of the remainder of the division of a binary number by a determined binary factor, in which combinatorial circuits implement logical equations making it possible to establish the state of each bit moreover as a function of the various states of the bits of the number to be divided. Such embodiments have the drawback of being particularly complex to design and of requiring a high number of logic gates, all the higher as the numbers to be divided
occupent un format binaire étendu.occupy an extended binary format.
De façon surprenante, l'invention propose en cas de division par un facteur correspondant à 2n-1, de calculer le reste de la division d'un nombre binaire simple par ce facteur 2n-1, en décomposant l'expression binaire du nombre en modules de n bits et en additionnant les modules de n bits entre eux, tout en prévoyant d'ajouter chaque bit de retenue (bit d'un résultat d'addition dépassant le format modulaire de n Surprisingly, the invention proposes, in the event of division by a factor corresponding to 2n-1, to calculate the remainder of the division of a simple binary number by this factor 2n-1, by decomposing the binary expression of the number into n-bit modules and adding the n-bit modules to each other, while planning to add each carry bit (bit of an addition result exceeding the modular format of n
bits) au résultat d'addition, en bit de poids faible. bits) to the addition result, in least significant bit.
L'invention s'applique au calcul de reste d'une division, comme au test de divisibilité, d'un nombre binaire par un facteur 2n-1, c'est-à-dire un facteur correspondant à une puissance entière de deux diminuée The invention applies to the calculation of the remainder of a division, as to the divisibility test, of a binary number by a factor 2n-1, that is to say a factor corresponding to an integer power of two reduced
d'une unité, facteurs tels que trois (22-1), sept (23- of a unit, factors such as three (22-1), seven (23-
1), quinze (24 -1), trente-et-un (25-1) etc. En outre, l'invention s'étend au test de divisibilité d'un nombre par un entier sous-multiple d'un facteur 2n-l, entiers 1), fifteen (24-1), thirty-one (25-1) etc. In addition, the invention extends to the test of divisibility of a number by an integer submultiple of a factor 2n-l, integers
tels que cinq ([24-1]/3), neuf ([26-1]/7), onze ([21 - such as five ([24-1] / 3), nine ([26-1] / 7), eleven ([21 -
1] /31), dix-sept ([28-1] /15) etc. Enfin, l'invention prévoit de combiner de tels tests de divisibilité avec des tests de divisibilité du nombre binaire par un facteur 2P, tels que les facteurs deux (21), quatre (22), huit (23), seize (24)... pour connaître la divisibilité par d'autres entiers, tels que six (trois fois deux), dix (cinq fois deux), douze (trois fois quatre), quatorze (sept fois deux) etc. L'invention est obtenue en mettant en oeuvre un procédé de calcul binaire de reste d'une division d'un nombre exprimé en format binaire simple par un facteur correspondant à une puissance entière de deux diminuée d'une unité, le procédé comportant des étapes consistant à: - démembrer l'expression binaire du nombre en modules binaires, chaque module comportant un nombre de bits égal à ladite puissance entière, - additionner les modules binaires entre eux avec calcul de retenue, et - ajouter chaque retenue à l'addition, pour obtenir un 1] / 31), seventeen ([28-1] / 15) etc. Finally, the invention provides for combining such divisibility tests with tests for divisibility of the binary number by a factor 2P, such as the factors two (21), four (22), eight (23), sixteen (24). .. to know the divisibility by other integers, such as six (three times two), ten (five times two), twelve (three times four), fourteen (seven times two) etc. The invention is obtained by implementing a binary calculation method of the remainder of a division of a number expressed in simple binary format by a factor corresponding to an integer power of two reduced by one, the method comprising steps consisting in: - dismembering the binary expression of the number into binary modules, each module comprising a number of bits equal to said whole power, - adding the binary modules together with calculation of carry, and - adding each carry to the addition, to get a
résultat correspondant au reste.result corresponding to the rest.
Il est prévu d'annuler le reste lorsque le It is planned to cancel the rest when the
résultat de l'addition est égal au facteur. addition result is equal to the factor.
Il est prévu que les modules binaires soient additionnés deux à deux en plusieurs opérations, chaque opération d'addition de deux modules binaires ayant pour résultat un nouveau module binaire à additionner ainsi qu'un bit de retenue à ajouter au bit de poids It is expected that the binary modules are added two by two in several operations, each operation of adding two binary modules resulting in a new binary module to be added as well as a carry bit to be added to the weight bit
faible lors de l'opération suivante. weak during the next operation.
Il est prévu une étape préliminaire consistant à exprimer le nombre dans un format binaire comportant un There is a preliminary step to express the number in a binary format with a
nombre de bits multiple de la puissance entière. number of bits multiple of the whole power.
L'invention prévoit aussi un procédé de test de divisibilité d'un nombre par un facteur correspondant à une puissance entière de deux diminuée d'une unité, qui met en oeuvre le procédé de calcul binaire de reste d'une division et une étape consistant à tester si le The invention also provides a method for testing the divisibility of a number by a factor corresponding to an integer power of two minus a unit, which implements the method of binary calculation of the remainder of a division and a step consisting of to test if the
reste est nul.rest is zero.
L'invention prévoit encore, un procédé de test de divisibilité d'un nombre par un entier sous-multiple d'un facteur correspondant à une puissance entière de deux diminuée d'une unité, qui met en oeuvre le procédé de calcul binaire de reste d'une division du nombre exprimé en format binaire simple par ledit facteur et une étape consistant à tester si le résultat a une valeur nulle ou une valeur multiple dudit entier. L'invention prévoit enfin un procédé de test de divisibilité d'un nombre par un entier, qui met en oeuvre le procédé de test de divisibilité dudit nombre par un facteur correspondant à une puissance entière de The invention also provides a method for testing the divisibility of a number by an integer sub-multiple of a factor corresponding to an integer power of two minus one, which implements the binary remainder calculation method dividing the number expressed in simple binary format by said factor and a step of testing whether the result has a zero value or a multiple value of said integer. The invention finally provides a method for testing the divisibility of a number by an integer, which implements the method for testing the divisibility of said number by a factor corresponding to an integer power of
deux diminuée d'une unité, ou par un entier sous- two minus one, or by a whole integer
multiple d'un tel facteur et une étape de test de divisibilité dudit nombre par un facteur correspondant multiple of such a factor and a step of testing the divisibility of said number by a corresponding factor
simplement à une puissance entière de deux. simply an integer power of two.
L'invention est réalisée d'autre part, avec un dispositif de calcul binaire de reste d'une division d'un nombre exprimé en format binaire simple par un facteur correspondant à une puissance entière de deux diminuée d'une unité, le dispositif comprenant: - des moyens pour additionner des membres de l'expression binaire du nombre, chaque membre comportant un nombre de bits égal à ladite puissance entière, les moyens pour additionner étant aptes à un calcul de retenue, et - des moyens pour ajouter chaque bit de retenue à un bit de poids faible de l'addition, afin d'obtenir un The invention is also carried out with a device for calculating the remainder of a division of a number expressed in simple binary format by a factor corresponding to an integer power of two reduced by one, the device comprising : - means for adding members of the binary expression of the number, each member comprising a number of bits equal to said whole power, the means for adding being suitable for a carry calculation, and - means for adding each bit of retained at a least significant bit of the addition, in order to obtain a
résultat correspondant au reste.result corresponding to the rest.
Selon le mode de réalisation préférée de l'invention, le dispositif comprend plusieurs additionneurs, chaque membre de l'expression binaire du nombre étant appliqué sur un port d'entrée d'un additionneur avec sortie de retenue, ayant un port de sortie appliqué sur un port d'entrée d'un autre additionneur, chaque sortie de retenue d'additionneur étant appliquée en entrée de retenue d'un autre According to the preferred embodiment of the invention, the device comprises several adders, each member of the binary expression of the number being applied to an input port of an adder with carry output, having an output port applied to an input port of another adder, each adder retaining output being applied as a retaining input of another
additionneur.adder.
D'autres caractéristiques et avantages de Other features and benefits of
l'invention appraraîtront dans la description et les the invention will appear in the description and
dessins de modes de réalisation qui vont suivre, donnés uniquement à titre d'exemples non-limitatifs; sur les dessins annexés: - la figure 1 représente un diagramme de principe de calcul binaire de reste de division d'un nombre par un facteur correspondant à une puissance entière de deux diminuée d'une unité (2n-l1), selon l'invention, - les figures 2A et 2B représentent deux variantes de schéma de dispositif de calcul binaire de reste de division d'un nombre par un facteur trois (22- 1), selon l'invention, - la figure 3 représente un schéma de dispositif de calcul binaire de reste de division d'un nombre par un facteur sept (23-1), selon l'invention, - la figure 4A représente un schéma de dispositif de calcul binaire de reste de division d'un nombre par un facteur quinze (24-1), selon l'invention, - la figure 4B schématise un moyen de test qui s'associe au dispositif de la figure 4A pour former un dispositif de test de divisibilité d'un nombre par un facteur quinze (24- 1), selon l'invention, - la figure 5 représente un schéma de dispositif de test de divisibilité d'un nombre par cinq, entier sous- multiple du facteur quinze (24-1), selon l'invention, - les figures 6A à 6I représentent d'après l'invention, des diagrammes de systèmes de divisibilité d'un nombre par les entiers allant de deux à dix respectivement, et - la figure 7 représente un diagramme séquentiel de processus de calcul binaire de reste d'une division drawings of embodiments which will follow, given solely by way of non-limiting examples; in the appended drawings: FIG. 1 represents a diagram of the principle of binary calculation of the remainder of division of a number by a factor corresponding to an integer power of two reduced by one unit (2n-11), according to the invention , - Figures 2A and 2B represent two variants of a diagram of a binary calculation device for the remainder of dividing a number by a factor of three (22-1), according to the invention, - Figure 3 represents a diagram of a device for binary calculation of remainder of division of a number by a factor of seven (23-1), according to the invention, - FIG. 4A represents a diagram of a binary calculation of remainder of division of a number by a factor of fifteen ( 24-1), according to the invention, - Figure 4B shows schematically a test means which is associated with the device of Figure 4A to form a test device for divisibility of a number by a factor of fifteen (24-1) , according to the invention, - Figure 5 shows a diagram of a device for testing the divisibility of a n number by five, integer submultiple of the factor fifteen (24-1), according to the invention, - Figures 6A to 6I represent according to the invention, diagrams of systems of divisibility of a number by integers going from two to ten respectively, and - Figure 7 represents a sequential diagram of binary computation process of remainder of a division
d'un nombre par un facteur (2n-l1), selon l'invention. a number by a factor (2n-11), according to the invention.
Dans la suite de la description, l'utilisation de In the following description, the use of
certains termes est réservée pour éviter des confusions: - " Nombre " désigne le dividende d'un calcul binaire de division ou d'un test de divisibilité en cours, - " Facteur " désigne un diviseur ayant une valeur déterminée parmi l'ensemble des valeurs entières de 2n- l 2 -1, - " Entier " désigne un diviseur dont la valeur ne certain terms are reserved to avoid confusion: - "Number" indicates the dividend of a binary division calculation or a divisibility test in progress, - "Factor" indicates a divider having a determined value among the set of values integers of 2n- l 2 -1, - "Integer" designates a divisor whose value does not
correspond pas à 2n-1.does not correspond to 2n-1.
Le diagramme de la figure 1 schématise la suite d'opérations d'un processus de calcul binaire de reste de la division d'un nombre N par un facteur 2n-1 The diagram of figure 1 schematizes the continuation of operations of a process of binary calculation of remainder of the division of a number N by a factor 2n-1
déterminé, selon l'invention.determined, according to the invention.
Le nombre N à diviser se présente initialement sous forme d'une séquence de bits (N1,N2....Nm) au The number N to be divided is initially presented in the form of a sequence of bits (N1, N2 .... Nm) at the
nombre de m.number of m.
Cette expression binaire du nombre N est d'abord démembrée en modules binaires, ici référencés A, B, E, H. Chaque module est constitué d'une suite de n bits faisant partie de l'expression binaire du nombre N, mais sans avoir isolément une signification particulière. Ainsi, les n bits de poids faible N1,N2,....,Nn du nombre binaire N constituent le premier module A1,A2,...,An. Les n bits de poids immédiatement supérieur Nn+1...,N2n du nombre N consituent le module suivant B1,B2,.... Bn. Par suite, le dernier module H comporte les bits de poids forts...,Nm du nombre N. Lorsque le format binaire m du nombre N n'est pas multiple du format binaire n des modules, les bits de poids fort...,Nm seront complétés par des bits nuls This binary expression of the number N is first broken down into binary modules, here referenced A, B, E, H. Each module consists of a series of n bits forming part of the binary expression of the number N, but without having in isolation a particular meaning. Thus, the n least significant bits N1, N2, ...., Nn of the binary number N constitute the first module A1, A2, ..., An. The n bits of immediately greater weight Nn + 1 ..., N2n of the number N constitute the following module B1, B2, .... Bn. Consequently, the last module H comprises the most significant bits ..., Nm of the number N. When the binary format m of the number N is not a multiple of the binary format n of the modules, the most significant bits ... , Nm will be completed with null bits
afin de constituer un module de n bits H1,H2,...,Hn. in order to constitute a module of n bits H1, H2, ..., Hn.
Après démembrement, l'invention prévoit d'additionner les modules binaires A, B, E, H entre eux. Un tel calcul est de préférence effectué par étapes d'addition élémentaires de deux modules. Ainsi sur l'exemple de la figure 1, la première opération consiste à additionner les deux modules binaires de poids faibles A et B pour obtenir un nouveau module binaire C. Il faut remarquer que l'opération d'addition est After dismemberment, the invention provides for adding the binary modules A, B, E, H to each other. Such a calculation is preferably carried out by elementary addition steps of two modules. Thus in the example of FIG. 1, the first operation consists in adding the two least significant binary modules A and B to obtain a new binary module C. It should be noted that the addition operation is
effectuée dans le format binaire de n bits, c'est-à- performed in the binary format of n bits, i.e.
dire que le résultat se présente sous forme d'un module say that the result is in the form of a module
de n bits Cl,C2,..., Cn et d'un bit C' de retenue. n bits Cl, C2, ..., Cn and a bit C 'of carry.
Curieusement, l'invention prévoit lors de l'opération d'addition suivante, d'ajouter la retenue C' au bit de poids faible Cl/El d'un module. Lors de la première opération par contre, il n'y a généralement Curiously, the invention provides during the following addition operation, to add the carry C 'to the least significant bit Cl / El of a module. During the first operation, however, there is generally
pas de retenue 0 à incorporer à l'addition. no deduction 0 to be incorporated in the addition.
La deuxième opération consiste donc à additionner la retenue C', le nouveau module C1,C2,...,Cn résultant de la première opération et le module suivant E1,E2,...,En du nombre binaire N. Le résultat de la deuxième opération d'addition fournit encore un nouveau module de n bits F1,F2,...,Fn et une retenue F'. Notons que la retenue F' devrait comporter un seul bit à condition qu'il n'ait pas été ajouté de retenue 0 lors de la première opération si bien que le module Cl,C2,.. .,Cn est strictement inférieur à la valeur binaire 1,1,... 1,l qui correspond justement à la valeur The second operation therefore consists in adding the carry C ', the new module C1, C2, ..., Cn resulting from the first operation and the next module E1, E2, ..., En of the binary number N. The result of the second addition operation still provides a new module of n bits F1, F2, ..., Fn and a carry F '. Note that the retainer F 'should have a single bit provided that no retainer 0 was added during the first operation, so that the module Cl, C2, ..., Cn is strictly less than the value binary 1,1, ... 1, l which corresponds precisely to the value
du facteur 2n-1.factor 2n-1.
Pour incorporer tous les modules binaires A, B, E et H issus du démembrement du nombre N, il est prévu d'effectuer, de façon récurrente identique à la deuxième opération, d'autres opérations d'addition de modules F1,F2,..., Fn et H1,H2,...Hn avec ajout de bit de retenue F, jusqu'à obtenir un dernier module de n To incorporate all the binary modules A, B, E and H resulting from the dismemberment of the number N, it is planned to carry out, in a recurrent manner identical to the second operation, other operations of addition of modules F1, F2 ,. .., Fn and H1, H2, ... Hn with addition of carry bit F, until a last module of n is obtained
bits I1,I2,,.,In et un bit de retenue I'. bits I1, I2 ,,., In and a carry bit I '.
Enfin, il est prévu d'ajouter ce bit de retenue I' au bit de poids faible Il du dernier module I1,I2,-..,In lors d'une dernière opération d'addition. On notera que cette dernière petite addition ne devrait pas fournir de retenue X puisque le dernier module IlI2....In est normalement strictement inférieur à la Finally, it is planned to add this holding bit I 'to the least significant bit Il of the last module I1, I2, - .., In during a last addition operation. It will be noted that this last small addition should not provide restraint X since the last module IlI2 .... In is normally strictly less than the
valeur binaire 1,1,....,1 du facteur. binary value 1.1, ...., 1 of the factor.
Le résultat de l'addition L1,L2,....,Ln se présente The result of the addition L1, L2, ...., Ln is presented
donc bien dans le format modulaire de n bits. so fine in the modular format of n bits.
De façon surprenante et avantageuse, selon l'invention, le module L1,L2,...,Ln résultant de Surprisingly and advantageously, according to the invention, the module L1, L2, ..., Ln resulting from
l'addition correspond au reste recherché. the addition corresponds to the remainder sought.
Cependant, il reste à mettre en forme ce résultat, pour exprimer correctement le reste de la division. En effet, si le résultat L1,L2,... ,Ln atteint la valeur However, it remains to format this result, to properly express the rest of the division. Indeed, if the result L1, L2, ..., Ln reaches the value
1,1....1, il est égal au facteur de division 2n-1 lui- 1.1 .... 1, it is equal to the division factor 2n-1 itself
même. Dans ce cas, il faut considérer que le reste est nul. De préférence, donc, le procédé selon l'invention met en oeuvre une étape de test complémentaire, dans laquelle: * si le résultat d'addition est égal au facteur 2n-1 c'est-à-dire si le module de n bits L1,L2,...,Ln ne comporte pas de bit nul, on impose une valeur nulle even. In this case, consider that the remainder is zero. Preferably, therefore, the method according to the invention implements a complementary test step, in which: * if the addition result is equal to the factor 2n-1, that is to say if the module of n bits L1, L2, ..., Ln does not have a zero bit, we impose a zero value
0,0,...,0 au reste Z1,Z2,...,Zn.0,0, ..., 0 to the rest Z1, Z2, ..., Zn.
* lorsque le module de n bits L1,L2,..., Ln comporte au moins un bit nul, c'est-à-dire lorsque le * when the module of n bits L1, L2, ..., Ln comprises at least one zero bit, that is to say when the
résultat d'addition L est inférieur au facteur 2n- addition result L is less than the factor 2n-
1, la valeur du reste Z recherchée est égale à la valeur du résultat d'addition L. On transcrit alors, le module de n bits L1,L2,... Ln de résultat d'addition dans le module Z1,Z2.... Zn représentant le reste du calcul binaire de la division 1, the value of the remainder Z sought is equal to the value of the addition result L. We then transcribe the module of n bits L1, L2, ... Ln of addition result in the module Z1, Z2 .. .. Zn representing the remainder of the binary calculation of the division
effectuée.performed.
Les tableaux des pages suivantes donnent des exemples numériques d'élaboration de calculs binaires de reste de division de divers nombres par quelques facteurs 2n-1 correspondant à une puissance entière de deux diminuée d'une unité selon l'invention. Chaque tableau donne, pour un facteur n déterminé et pour les nombres entiers compris entre zéro et seize, la présentation et le résultat des opérations d'addition, The tables on the following pages give numerical examples of the preparation of binary calculations of the remainder of division of various numbers by some factors 2n-1 corresponding to an integer power of two reduced by one unit according to the invention. Each table gives, for a determined factor n and for whole numbers between zero and sixteen, the presentation and the result of the operations of addition,
de test, ainsi que le reste obtenu.test, as well as the rest obtained.
Le tableau I concerne la division binaire par le facteur trois (22-1) correspondant au format binaire n=2. Le tableau II concerne la division binaire par le facteur sept (23-l) correspondant au format binaire Table I concerns the binary division by the factor three (22-1) corresponding to the binary format n = 2. Table II concerns the binary division by the factor seven (23-l) corresponding to the binary format
n=3.n = 3.
Le tableau III concerne la division binaire par le facteur quinze (24-1) correspondant au format Table III concerns the binary division by the factor fifteen (24-1) corresponding to the format
binaire n=4.binary n = 4.
En outre, le tableau IV donne des exemples numériques d'opérations et de résultats de test de divisibilité des nombres entiers compris entre zéro et seize par l'entier cinq sous-multiple du facteur quinze (24-1), obtenus par un procédé selon l'invention, procédé de test de divisibilité qui sera détaillé par In addition, Table IV gives numerical examples of operations and test results for the divisibility of whole numbers between zero and sixteen by the integer five sub-multiple of the factor fifteen (24-1), obtained by a method according to the invention, divisibility test method which will be detailed by
la suite.the following.
On vérifie aisément à la lecture de ces tableaux, que le procédé de calcul binaire de reste d'une division selon l'invention fournit des restes binaires conformes à ce qui est attendu selon les connaissances It is easy to verify on reading these tables, that the binary calculation method of the remainder of a division according to the invention provides binary remains in accordance with what is expected according to knowledge
courantes de calcul.calculation currents.
La démonstration théorique d'une telle propriété n'est pas l'objet de la présente. Elle pourra être vérifiée par récurrence ou tout autre méthode mathématique. The theoretical demonstration of such a property is not the subject of this. It can be checked by recurrence or any other mathematical method.
TABLEAU ITABLE I
Calcul binaire de reste de division d'un nombre par trois (Facteur 22-1) Binary calculation of the remainder of dividing a number by three (Factor 22-1)
Reste de Expression numérique Addition Résultat Test la division Nombre par trois déci- hexa. binaire n = 2 bits Retenue Module Ajout (22-1) male ' I 1+1' Zéro O 00 00000000 00+00+00+00 O 00 00 - 00 (nul) Un 1 01 00000001 00+ 00+00+01 O 01 01 - 01 (un) Deux 2 02 00000010 00+00+00+10 O 10 10 - 10 (deux) Trois 3 03 00000011 00+00+00+11 O il 11l + 00 (nul) Quatre 4 04 00000100 00+00+01+00 O OI O 01 (un) Cinq 5 05 00000101 00+00+01+01 O 10 10 I - 10 (deux) Six 6 06 00000110 00+00+01+10 O il Il + 00 (nul) Sept 7 07 00000111 00+ 00+01+11 I 00 - 01 (un) Huit 8 08 00001000 00+00+10+00 O 10 10 - 10 (deux) Neuf 9 09 00001001 00+00+10+01 O il Il + 00 (nul) Dix 10 OA 00001010 00+00+10+10 1 00 01 - 01 (un) Onze il OB 00001011 00+00+10+11 1 01 10 - 10(deux) Douze 12 OC 00001100 00+00+11+00 O il Il + 00 (nul) Treize 13 OD 00001101 00+00+11+01 1 00 01 - 0 1 (un) Quatorze 14 0E 00001110 00+00+11+10 1 01 10 - 10(deux) Quinze 15 OF 00001111 00+00+11+11 I 10 Il + 00 (nul) Seize 16 10 00010000 00+01+00+00 O 01 01 01 (un) Rest of Numeric Expression Addition Result Test division Number by three deci- hexa. binary n = 2 bits Retention Module Addition (22-1) male 'I 1 + 1' Zero O 00 00000000 00 + 00 + 00 + 00 O 00 00 - 00 (null) Un 1 01 00000001 00+ 00 + 00 + 01 O 01 01 - 01 (one) Two 2 02 00000010 00 + 00 + 00 + 10 O 10 10 - 10 (two) Three 3 03 00000011 00 + 00 + 00 + 11 O il 11l + 00 (null) Four 4 04 00000 100 00 + 00 + 01 + 00 O OI O 01 (one) Five 5 05 00000101 00 + 00 + 01 + 01 O 10 10 I - 10 (two) Six 6 06 00000 110 00 + 00 + 01 + 10 O il Il + 00 (null) Sept 7 07 00000111 00+ 00 + 01 + 11 I 00 - 01 (one) Eight 8 08 00001000 00 + 00 + 10 + 00 O 10 10 - 10 (two) New 9 09 00001001 00 + 00 + 10 + 01 O il Il + 00 (null) Ten 10 OA 00001010 00 + 00 + 10 + 10 1 00 01 - 01 (one) Eleven il OB 00001011 00 + 00 + 10 + 11 1 01 10 - 10 (two) Twelve 12 OC 00001100 00 + 00 + 11 + 00 O il Il + 00 (null) Thirteen 13 OD 00001101 00 + 00 + 11 + 01 1 00 01 - 0 1 (one) Fourteen 14 0E 00001110 00 + 00 + 11 + 10 1 01 10 - 10 (two) Fifteen 15 OF 00001111 00 + 00 + 11 + 11 I 10 Il + 00 (null) Sixteen 16 10 000 100 000 00 + 01 + 00 + 00 O 01 01 01 (one)
Etc........................................... .......... Etc ........................................... ...... ....
TABLEAU IITABLE II
Calcul binaire de reste de division d'un nombre par sept (Facteur 23-1) Binary calculation of the remainder of dividing a number by seven (Factor 23-1)
Reste de la Expression numérique Addition Résultat division Nombre Test par sept déci- hexa. binaire n = 3 bits Retenue Module Ajout (23-1) maie _ _ _ _ _ ___F F F+F' Zéro O 00 00000000 00+000+000 O 000 000 000 (nul) Un 1 l01 00000001 00+ 000+001 O 001 001 001 (un) Deux 2 02 00000010 00+000+010 O 010 010 010 (deux) Trois 3 03 00000011 00+000+011 O 011 011 - 01 1 (trois) Quatre 4 04 00000100 00+000+100 O 100 100 - 100 (quatre) Cinq 5 05 00000101 00+000+101 0 101 101 - 101 (cinq) Six 6 06 00000110 00+ 000+110 0 110 110 - 110 (six) Sept 7 07 00000111 00+000+111 0 111 111 + 000 (nul) Huit 8 08 00001000 00+001+000 O 001 001 - 001 (un) Neuf 9 09 00001001 00+001+001 O 010 010 - 010 (deux) Dix 10 OA 00001010 00+001+010 0 011 011 - 011(trois) Onze 11 OB 00001011 00+001+011 O 100 100 - 100 (quatre) Douze 12 OC 00001100 00+001+100 O 101 101 - 101 (cinq) Treize 13 OD 00001101 00+001+101 0 110 110 - l10(six) Quatorze 14 0E 00001110 00+001+110 O 111 111 + 000 (nul) Quinze 15 OF 00001111 00+001+111 000 001 - 001(un) Seize 16 10 00010000 00+010+000 O 010 010 - 010 (deux) Etc......................................... Rest of Numeric Expression Addition Division Result Number Test by seven deci- hexa. binary n = 3 bits Retention Module Addition (23-1) maie _ _ _ _ _ ___F F F + F 'Zero O 00 00000000 00 + 000 + 000 O 000 000 000 (null) Un 1 l01 00000001 00+ 000 + 001 O 001 001 001 (one) Two 2 02 00000010 00 + 000 + 010 O 010 010 010 (two) Three 3 03 00000011 00 + 000 + 011 O 011 011 - 01 1 (three) Four 4 04 00000100 00 + 000 + 100 O 100 100 - 100 (four) Five 5 05 00000101 00 + 000 + 101 0 101 101 - 101 (five) Six 6 06 00000110 00+ 000 + 110 0 110 110 - 110 (six) Seven 7 07 00000111 00 + 000 + 111 0 111 111 + 000 (null) Eight 8 08 00 001000 00 + 001 + 000 O 001 001 - 001 (one) New 9 09 00001001 00 + 001 + 001 O 010 010 - 010 (two) Ten 10 OA 00001010 00 + 001 +010 0 011 011 - 011 (three) Eleven 11 OB 00001011 00 + 001 + 011 O 100 100 - 100 (four) Twelve 12 OC 00001100 00 + 001 + 100 O 101 101 - 101 (five) Thirteen 13 OD 00001101 00+ 001 + 101 0 110 110 - l10 (six) Fourteen 14 0E 00001110 00 + 001 + 110 O 111 111 + 000 (null) Fifteen 15 OF 00001111 00 + 001 + 111 000 001 - 001 (one) Sixteen 16 10 000 10000 00+ 010 + 000 O 010 010 - 010 (two) Etc ................. ........................
.......DTD: TABLEAU III....... DTD: TABLE III
Calcul binaire de reste de division d'un nombre par quinze (Facteur 24- 1) Reste de Expression numérique Addition Résultat Test la division Nombre par sept déci- hexa. binaire n = 4 bits Retenue Module Ajout (24-1) male C' C C+C' Zéro O 00 00000000 0000+0000 0 0000 0000 0000 (nul) Un 1 01 00000001 0000+0001 0O 0001 0001 0001 (un) Deux 2 02 00000010 0000+0010 O 0010 0010 0010 (deux) Trois 3 03 00000011 0000+0011 0O 0011 0011 0011 (trois) Quatre 4 04 00000100 0000+0100 O 0100 0100 0100 (quatre) Cinq 5 05 00000101 0000+0101 O 0101 0101 0101 (cinq) Six 6 06 00000110 0000+0110 0 0110 0110 - 0110(six) Sept 7 07 00000111 0000+0111 0O 0111 0111 0111(sept) Huit 8 08 00001000 0000+1000 0 1000 1000 - 1000 (huit) Neuf 9 09 00001001 0000+1001 0 1001 1001 - 1001 ____ __________ _______ ___(neuf) Dix 10 OA 00001010 0000+ 1010 O 1010 1010 - 1010(dix) Onze 11 OB 00001011 0000+1011 0O 1011 1011 - 1011 (onze) Douze 12 oC 00001100 0000+1100 0 1100 1100 - 1100 (douze) Treize 13 OD 00001101 0000+1101 0 1101 1101 - 1101 _______ ____________________ ________ (treize) Quatorze 14 0E 00001110 0000+1110 lOO 0 1110 - 1110 ________ ___ __ __(quatorze) Quinze 15 OF 00001111 0000+1111 0 1111 1111 + 0000 (nul) Seize 16 10 00010000 0001+0000 O 0001 0001 - 0001 (un) Binary calculation of the remainder of dividing a number by fifteen (Factor 24-1) Rest of Numeric Expression Addition Result Test the division Number by seven deci- hexa. binary n = 4 bits Hold Module Add (24-1) male C 'C C + C' Zero O 00 00000000 0000 + 0000 0 0000 0000 0000 (null) One 1 01 00000001 0000 + 0001 0O 0001 0001 0001 (one) Two 2 02 00000010 0000 + 0010 O 0010 0010 0010 (two) Three 3 03 00000011 0000 + 0011 0O 0011 0011 0011 (three) Four 4 04 00000100 0000 + 0100 O 0100 0100 0100 (four) Five 5 05 00000101 0000 + 0101 O 0101 0101 0101 (five) Six 6 06 00000110 0000 + 0110 0 0110 0110 - 0110 (six) Seven 7 07 00000111 0000 + 0111 0O 0111 0111 0111 (seven) Eight 8 08 00001000 0000 + 1000 0 1000 1000 - 1000 (eight) New 9 09 00001001 0000 + 1001 0 1001 1001 - 1001 ____ __________ _______ ___ (new) Ten 10 OA 00001010 0000+ 1010 O 1010 1010 - 1010 (ten) Eleven 11 OB 00001011 0000 + 1011 0O 1011 1011 - 1011 (eleven) Twelve 12 oC 00001100 0000 + 1100 0 1100 1100 - 1100 (twelve) Thirteen 13 OD 00001101 0000 + 1101 0 1101 1101 - 1101 _______ ____________________ ________ (thirteen) Fourteen 14 0E 00001110 0000 + 1110 lOO 0 1110 - 1110 ________ ___ __ __ (fourteen) Fifteen 15 OF 00001111 0000 +1111 0 1111 1111 + 0000 (null) Sixteen 16 10 000 100 000 0001 + 0000 O 0001 0001 - 0001 (one)
E tc. ............................................ E tc. ............................................
TABLEAU IVTABLE IV
Test de divisibilité d'un nombre par cinq, entier sous-multiple de quinze (tiers du Facteur 24-1) Expression numérique Addition Résultat Test de Nombre d'addition divisibilité déci- hexa. binaire n = 4 bits Retenue Module Ajout male C' C C+C' Zéro O 00 00000000 0000+0000 O 0000 0000 positif Un I 01 00000001 0000+0001 O 0001 0001 négatif Deux 2 02 00000010 0000+0010 O 0010 0010 négatif Trois 3 03 00000011 0000+0011 O 0011 0011 négatif Quatre 4 04 00000100 0000+ 0100 O 0100 0100 négatif Cinq 5 05 00000101 0000+0101 0 0101 0101 positif Six 6 06 00000110 0000+0110 O 0110 0110 négatif Sept 7 07 00000111 0000+0111 O 0111 0111 négatif Huit 8 08 00001000 0000+1000 O 1000 1000 négatif Neuf 9 09 00001001 0000+1001 O 1001 1001 négatif Dix 10 OA 00001010 0000+1010 O 1010 1010 positif Onze 1il OB 00001011 0000+1011 O 1011 1011 négatif Douze 12 OC 00001100 0000+ 1100 O 1100 1100 négatif Treize 13 OD 00001101 0000+1101 O 1101 1101 négatif Quatorze 14 0E 00001110 0000+1110 O 1110 1110 négatif Quinze 15 OF 00001111 0000+1 0 111I1 1111 positif Seize 16 10 00010000 0001+0000 0 0001 0001 négatif Divisibility test of a number by five, integer sub-multiple of fifteen (third of Factor 24-1) Numerical expression Addition Result Test of Addition number divisibility deci- hexa. binary n = 4 bits Hold Module Add male C 'C C + C' Zero O 00 00000000 0000 + 0000 O 0000 0000 positive One I 01 00000001 0000 + 0001 O 0001 0001 negative Two 2 02 00000010 0000 + 0010 O 0010 0010 negative Three 3 03 00000011 0000 + 0011 O 0011 0011 negative Four 4 04 00000100 0000+ 0100 O 0100 0100 negative Five 5 05 00000101 0000 + 0101 0 0101 0101 positive Six 6 06 00000110 0000 + 0110 O 0110 0110 negative Sept 7 07 00000111 0000 + 0111 O 0111 0111 negative Eight 8 08 00001000 0000 + 1000 O 1000 1000 negative New 9 09 00001001 0000 + 1001 O 1001 1001 negative Ten 10 OA 00001010 0000 + 1010 O 1010 1010 positive Eleven 1il OB 00001011 0000 + 1011 O 1011 1011 negative Twelve 12 OC 00001100 0000+ 1100 O 1100 1100 negative Thirteen 13 OD 00001101 0000 + 1101 O 1101 1101 negative Fourteen 14 0E 00001110 0000 + 1110 O 1110 1110 negative Fifteen 15 OF 00001111 0000 + 1 0 111I1 1111 positive Sixteen 16 10 000 10000 0001 + 0000 0 0001 0001 negative
E tc............................................... E tc ...............................................
Maintenant, des exemples de réalisation de dispositifs de calcul binaire mettant en oeuvre un tel processus de calcul de reste d'une division vont être exposés. La figure 2A montre un schéma fonctionnel de dispositif de calcul binaire de reste d'une division Now, exemplary embodiments of binary calculation devices implementing such a process for calculating the remainder of a division will be described. FIG. 2A shows a functional diagram of a device for the binary calculation of the remainder of a division
d'un nombre par un facteur trois, soit n=2. a number by a factor of three, i.e. n = 2.
Dans cet exemple de réalisation, les nombres sont exprimés dans un format binaire limité à huit bits In this exemplary embodiment, the numbers are expressed in a binary format limited to eight bits
N1 à N8.N1 to N8.
Le dispositif comprend une série d'additionneurs 21 à 24 de format deux bits puisque n vaut 2, bien The device includes a series of adders 21 to 24 of two-bit format since n is 2, well
qu'un format binaire supérieur puisse être utilisé. that a higher binary format can be used.
Les additionneurs 21, 22 et 23 sont, de préférence, des additionneurs à deux ports d'entrée 2 Adders 21, 22 and 23 are preferably adders with two input ports 2
bits, avec entrée et sortie de retenue. bits, with carry input and output.
La première paire de bits N1, N2 et la deuxième paire de bits N3, N4, les moins significatifs de la série de bits du nombre N à diviser sont appliqués respectivement sur le premier port d'entrée A1,A2 et le second port d'entrée B1,B2 d'un premier additionneur 21. L'entrée de retenue A du premier additionneur est The first pair of bits N1, N2 and the second pair of bits N3, N4, the least significant of the series of bits of the number N to be divided are applied respectively to the first input port A1, A2 and the second port of input B1, B2 of a first adder 21. The retaining input A of the first adder is
mise à l'état logique nul 0.set to logic zero 0.
Les deux bits C1 et C2 du port de sortie de l'additionneur 21 sont reliés directement et respectivement à deux bits D1 et D2 de port d'entrée d'un deuxième additionneur 22. La sortie de bit de retenue C' du premier additionneur est avantageusement reliée à l'entrée de bit de retenue D du deuxième The two bits C1 and C2 of the output port of the adder 21 are connected directly and respectively to two bits D1 and D2 of the input port of a second adder 22. The holding bit output C 'of the first adder is advantageously connected to the carry bit input D of the second
additionneur 22.adder 22.
Conformément à la deuxième opération schématisée sur la figure 1, une troisième paire de bits N5,N6 du nombre N à diviser est appliquée sur l'autre port In accordance with the second operation shown diagrammatically in FIG. 1, a third pair of bits N5, N6 of the number N to be divided is applied to the other port
d'entrée El, E2 du deuxième additionneur 22. input El, E2 of the second adder 22.
Par suite, le port de sortie Fi, F2 et la sortie de retenue F' du deuxième additionneur 22 sont reliés au port d'entrée Gl, G2 et à l'entrée de retenue G d'un troisième additionneur 23. L'autre port d'entrée H1, H2 du troisième additionneur reçoit la dernière paire de Consequently, the output port Fi, F2 and the holding output F 'of the second adder 22 are connected to the input port Gl, G2 and to the holding input G of a third adder 23. The other port input H1, H2 of the third adder receives the last pair of
bits N7, N8 du nombre N à diviser.bits N7, N8 of the number N to be divided.
Un quatrième et dernier additionneur 24 reçoit simplement, les deux bits Il, I2 du port de sortie et A fourth and last adder 24 simply receives, the two bits Il, I2 of the output port and
le bit de retenue I'du troisième additionneur 23. the holding bit I'd of the third adder 23.
De préférence, comme schématisé en traits pleins sur la figure 2A, le dernier additionneur 24 est Preferably, as shown in solid lines in FIG. 2A, the last adder 24 is
constitué d'un demi-circuit d'addition. consisting of an addition half-circuit.
Cependant, comme schématisé en traits pleins sur la figure 2B, si le circuit d'additionneur 25 présente un second port d'entrée K1, K2, il peut être mis à 0 However, as shown in solid lines in FIG. 2B, if the adder circuit 25 has a second input port K1, K2, it can be set to 0
et/ou recevoir la retenue I' en bit de poids faible Kl. and / or receive the carry I 'in least significant bit Kl.
Les deux bits L1 et L2 du port de sortie du demi- The two bits L1 and L2 of the output port of the half
additionneur 24 fournissent ainsi le résultat binaire d'addition de tous les modules deux bits du nombre N adder 24 thus provide the binary addition result of all the two-bit modules of the number N
augmenté des retenues intermédiaires. plus intermediate deductions.
Ensuite, le dispositif selon l'invention comporte de préférence, des moyens de décodage 26 ou de test, pour détecter si le résultat d'addition est égal au Then, the device according to the invention preferably comprises decoding or test means 26, for detecting whether the addition result is equal to the
facteur trois (22-1) de la division. factor three (22-1) of the division.
Le décodeur 26 à deux bits U1,U2 du dispositif de division par trois de la figure 2 détecte donc si les deux bits L1,L2 de résultat des additionneurs 21 à 24 atteignent le code binaire 11, correspondant à la valeur trois. La sortie V du décodeur est appliquée sur une borne W d'initialisation d'un étage-tampon 27 de The two-bit decoder 26 U1, U2 of the division by three device of FIG. 2 therefore detects whether the two result bits L1, L2 of the adders 21 to 24 reach the binary code 11, corresponding to the value three. The output V of the decoder is applied to a terminal W for initialization of a buffer stage 27 of
format deux bits.two-bit format.
L'étage de sortie 27 doit effectuer une fonction de transfert du résultat d'addition en sortie, et dans certaines éventualités, une fonction de remise à zéro The output stage 27 must perform a function of transferring the result of addition to the output, and in certain cases, a reset function.
de la sortie. L'étage 27 est constitué d'un étage- of the exit. Floor 27 consists of a floor-
tampon (en anglais " buffer ") de préférence à un registre. De façon avantageuse, le dispositif selon l'invention, ne comporte ainsi aucun élément de mémorisation. L'étage-tampon 27 recopie normalement le résultat d'addition L1,L2 reçu par son port d'entrée W1, W2 sur un port de sortie X1,X2, sauf en cas d'initialisation par le signal V du décodeur 26 auquel cas le port de sortie X1,X2 est remis à zéro 00. La sortie X1,X2 de l'étage-tampon 27 fournit ainsi le reste Z1,Z2 recherché, de la division binaire du nombre par le buffer (in English "buffer") preferably to a register. Advantageously, the device according to the invention thus does not include any storage element. The buffer stage 27 normally copies the addition result L1, L2 received by its input port W1, W2 to an output port X1, X2, except in the event of initialization by the signal V of the decoder 26 in which case the output port X1, X2 is reset to zero 00. The output X1, X2 of the buffer stage 27 thus provides the remainder Z1, Z2 sought, of the binary division of the number by the
facteur trois (22-1).factor three (22-1).
Ainsi, les moyens de décodage et de transfert, selon l'invention, permettent avantageusement d'annuler le reste Z1,Z2 lorsque le résultat d'addition est égal au facteur 2 n-1 de division et sinon, d'identifier le Thus, the decoding and transfer means according to the invention advantageously make it possible to cancel the remainder Z1, Z2 when the addition result is equal to the factor 2 n-1 of division and if not, to identify the
reste Z1,Z2 au résultat L1,L2 d'addition. remains Z1, Z2 to the result L1, L2 of addition.
Un avantage du dispositif selon l'invention est qu'il comprend un faible nombre de composants de An advantage of the device according to the invention is that it comprises a small number of components of
circuit électronique.electric circuit.
On note que le nombre d'additionneurs 21 à 24 du circuit s'identifie au nombre de modules A, B, E, H issus de l'expression binaire du nombre N à diviser, qui est sensiblement égal au rapport du nombre de bits du nombre N par le format binaire n correspondant au It is noted that the number of adders 21 to 24 of the circuit is identified with the number of modules A, B, E, H resulting from the binary expression of the number N to be divided, which is substantially equal to the ratio of the number of bits of the number N by binary format n corresponding to
facteur (2n-l1) de division.division factor (2n-l1).
Toutefois, cette représentation d'une réalisation de dispositif selon l'invention à partir de composants discrets (additionneurs, décodeur et étage-tampon), est essentiellement schématique. Le dispositif de calcul binaire de reste de division est de préférence réalisé sous forme de circuit à portes logiques, ou encore plus techniquement, sous forme de circuit à transistors, prévus pour effectuer les fonctions d'additions, d'ajout, de transfert et de décodage ou de test exposés précédement. Il faut noter d'ailleurs, qu'il existe de multiples variantes de dispositif selon l'invention à la portée de l'homme du métier. La figure 2B schématise par exemple, un dispositif de calcul binaire de reste de division par un facteur trois (n=2), semblable à celui de la figure 2A, à la différence que les additionneurs 21, 22, 23 et 25, au lieu d'être connectés en série, sont reliés de façon arborescente. Le deuxième additionneur 22, disposé en parallèle du premier additionneur 21, reçoit, à l'instar de celui-ci, deux paires de bits N5,N6 et N7,N8 du nombre à diviser, sur deux ports d'entrée D1,D2 et E1,E2. Les ports de sortie C1,C2 et F1,F2 des deux premiers additionneurs 21 et 22 sont ensuite appliqués respectivement sur les ports d'entrée G1,G2 However, this representation of an embodiment of a device according to the invention from discrete components (adders, decoder and buffer stage) is essentially schematic. The binary division remainder calculation device is preferably produced in the form of a logic gate circuit, or even more technically, in the form of a transistor circuit, intended to perform the functions of addition, addition, transfer and decoding or test previously exposed. It should also be noted that there are multiple variants of the device according to the invention within the reach of those skilled in the art. FIG. 2B schematizes for example, a binary calculating device of remainder of division by a factor three (n = 2), similar to that of FIG. 2A, with the difference that the adders 21, 22, 23 and 25, instead to be connected in series, are connected in a tree-like fashion. The second adder 22, arranged in parallel with the first adder 21, receives, like the latter, two pairs of bits N5, N6 and N7, N8 of the number to be divided, on two input ports D1, D2 and E1, E2. The output ports C1, C2 and F1, F2 of the first two adders 21 and 22 are then applied respectively to the input ports G1, G2
et H1,H2 du troisième additionneur 23. and H1, H2 of the third adder 23.
Dans la disposition de la figure 2B, un bit de retenue, C' par exemple, d'un des deux premiers additionneurs 21, 22 peut être appliqué en entrée de retenue D de l'autre des deux additionneurs 22, 21, tandis que l'autre bit de retenue, F' par exemple, est transmis en entrée de retenue G de l'additionneur 23 de In the arrangement of FIG. 2B, a carry bit, C 'for example, from one of the first two adders 21, 22 can be applied to the carry input D of the other of the two adders 22, 21, while the 'other carry bit, F' for example, is transmitted at the carry input G of the adder 23 of
niveau suivant.next level.
On peut remarquer qu'un bit de retenue peut être ajouté à un niveau d'addition quelconque, sauf à un It can be noted that a carry bit can be added at any addition level, except at a
niveau d'addition précédent (risque d'état métastable). previous addition level (risk of metastable state).
Un avantage d'une telle variante de réalisation est la rapidité de calcul puisque certaines additions sont effectuées en parallèle et que la chaîne de calcul An advantage of such an alternative embodiment is the speed of calculation since certain additions are carried out in parallel and the calculation chain
est raccourcie.is shortened.
On vérifiera aisément que les réalisations illustrées en figures 2A, 2B, de dispositif de calcul binaire de reste d'une division par trois, permettent d'effectuer des opérations et d'obtenir des résultats conformes au tableau I et à la mise en oeuvre du processus exposé précédement dans le cas o le format n It will easily be verified that the embodiments illustrated in FIGS. 2A, 2B, of a binary calculation device for the remainder of a division by three, make it possible to carry out operations and to obtain results in accordance with table I and with the implementation of the process described above in the case where the format n
prend la valeur deux.takes the value two.
La figure 3 montre une réalisation de dispositif de calcul binaire de reste d'une division d'un nombre par un facteur sept (23-1) correspondant à un format n de trois bits, selon l'invention. Le dispositif comprend alors deux additionneurs 31 et 32 de format FIG. 3 shows an embodiment of a binary calculation device for the remainder of a division of a number by a factor of seven (23-1) corresponding to a format n of three bits, according to the invention. The device then includes two format adders 31 and 32
trois bits reliés en série ainsi qu'un demi- three bits connected in series as well as a half
additionneur 33 trois bits.three-bit adder 33.
Comme le nombre N à diviser est encore dans cet exemple de réalisation, exprimé sur huit bits Ni à N8, format binaire non-multiple de trois, il convient d'ajouter un bit nul 0 au bit de poids fort N8 pour former trois modules de trois bits N1,N2,N3, N4,N5,N6 et N7,N8,0 appliqués sur les ports d'entrée A1,A2,A3, As the number N to be divided is again in this embodiment, expressed on eight bits Ni to N8, binary format not multiple of three, it is necessary to add a zero bit 0 to the most significant bit N8 to form three modules of three bits N1, N2, N3, N4, N5, N6 and N7, N8,0 applied to the input ports A1, A2, A3,
Bl,B2,B3 et E1,E2,E3 des additionneurs 31 et 32. Bl, B2, B3 and E1, E2, E3 of the adders 31 and 32.
Par suite, le décodeur 36 à trois bits U1,U2,U3 du dispositif de division par sept détecte si les bits Il, I2, I3 de résultat de la série d'additionneurs 31, 32 et 33 atteignent le code binaire 111, correspond à la valeur sept du facteur de division (23-1). Dans ce cas, le signal V du décodeur 36 force à zéro l'état des trois bits de l'étage-tampon 37. En dehors de ce cas de remise à zéro 000, l'étage-tampon 37 transfère le résultat d'addition Il,I2,I3 vers la sortie de reste Zl,Z2,Z3. On vérifiera aisément que la réalisation illustrée figure 3, de dispositif de calcul binaire de reste d'une division par sept, permet d'effectuer des opérations et d'obtenir des résultats conformes au tableau II et à la mise en oeuvre du processus précédent dans le cas d'un format binaire n de valeur Consequently, the three-bit decoder 36 U1, U2, U3 of the divider by seven device detects whether the result bits Il, I2, I3 of the series of adders 31, 32 and 33 reach the binary code 111, corresponds to the value seven of the division factor (23-1). In this case, the signal V of the decoder 36 forces the state of the three bits of the buffer stage 37 to zero. Apart from this reset case 000, the buffer stage 37 transfers the addition result Il, I2, I3 towards the rest output Zl, Z2, Z3. It will easily be verified that the embodiment illustrated in FIG. 3, of a binary calculation device for the remainder of a division by seven, makes it possible to carry out operations and to obtain results in accordance with table II and with the implementation of the preceding process in the case of a binary format n of value
trois. La figure 4a montre une autre réalisation de dispositif de calcul binairethree. FIG. 4a shows another embodiment of a binary calculation device
de reste d'une division d'un nombre N par un facteur quinze (24-1) correspondant à un format n de quatre bits, selon l'invention. Comme le nombre à diviser comporte toujours, dans cet exemple de réalisation, huit bits N1 à N8, le dispositif comprend simplement deux additionneurs 41 et 42 de format quatre bits. Plus précisément, le dispositif comprend un additionneur 41 recevant les deux modules de quatre bits N1-N4 et N5-N8 sur les ports d'entrée A1-A4 et B1-B4, l'additionneur ayant des sorties C1-C4 et C' reliées en entrées D1-D4 et D d'un remainder of a division of a number N by a factor fifteen (24-1) corresponding to a four-bit format n, according to the invention. As the number to be divided always comprises, in this embodiment, eight bits N1 to N8, the device simply comprises two adders 41 and 42 of four-bit format. More specifically, the device comprises an adder 41 receiving the two four-bit modules N1-N4 and N5-N8 on the input ports A1-A4 and B1-B4, the adder having outputs C1-C4 and C 'connected in inputs D1-D4 and D of a
demi-additionneur 42.half adder 42.
Le décodeur 46 quatre bits du dispositif remet à zéro le reste Z1-Z4 retranscrit en sortie X1-X4 de l'étage-tampon 47 lorsque le résultat d'addition F1-F4 atteint le code 1111 correspondant à la valeur quinze The four-bit decoder 46 of the device resets the remainder Z1-Z4 transcribed at the output X1-X4 of the buffer stage 47 when the addition result F1-F4 reaches the code 1111 corresponding to the value fifteen
du facteur (24-1) de division.of the factor (24-1) of division.
On vérifiera encore que la réalisation illustrée figure 4A de dispositif de calcul binaire de reste d'une division par quinze permet d'effectuer des opérations et d'obtenir des résultats conformes au tableau III et à la mise en oeuvre du processus selon l'invention, dans le cas d'un format binaire n de It will also be verified that the embodiment illustrated in FIG. 4A of a binary calculation device for the remainder of a division by fifteen makes it possible to carry out operations and to obtain results in accordance with table III and with the implementation of the process according to the invention , in the case of a binary format n of
valeur quatre.worth four.
Dans les exemples de réalisation exposés dans la présente, on considère que le nombre N à diviser a un format binaire de huit bits. Cependant, il est clair que l'invention s'applique au calcul binaire de reste de division des nombres d'expression binaire N1-Nm, In the exemplary embodiments presented herein, it is considered that the number N to be divided has a binary format of eight bits. However, it is clear that the invention applies to the binary calculation of the remainder of division of the numbers of binary expression N1-Nm,
quel que soit leur format binaire m. whatever their binary format m.
De plus, il a été envisagé jusqu'ici de diviser des nombres entiers positifs. Cependant, un nombre entier négatif pourra être divisé en modifiant, de façon préliminaire son expression binaire pour obtenir l'expression du nombre opposé. Une telle modification consiste par exemple, à inverser l'état de chaque bit de l'expression binaire, puis à ajouter une unité (opération dite de " complément à deux "). Après le calcul du reste, une modification complémentaire Furthermore, it has so far been envisaged to divide positive integers. However, a negative whole number can be divided by modifying, in a preliminary way, its binary expression to obtain the expression of the opposite number. Such a modification consists, for example, in reversing the state of each bit of the binary expression, then in adding a unit (operation called "complement to two"). After calculating the rest, a further modification
rétablira le signe négatif du reste. will restore the negative sign from the rest.
Il peut même être envisagé de diviser un nombre à It can even be considered to divide a number to
virgule dans le domaine binaire, selon l'invention. comma in the binary domain, according to the invention.
De façon générale, le calcul binaire de reste de division, selon l'invention, peut être appliqué à tout In general, the binary division remainder calculation according to the invention can be applied to any
nombre exprimé en format binaire simple. number expressed in simple binary format.
L'invention prévoit en outre de réaliser un dispositif de test de divisibilité d'un nombre par un facteur (2n-l) correspondant à une puissance entière de The invention further provides for making a device for testing the divisibility of a number by a factor (2n-l) corresponding to an integer power of
deux diminuée d'une unité.two decreased by one.
La figure 4B associée à la figure 4A montre ainsi, qu'en associant des moyens de test ou de décodage 48 du reste X4-X1 obtenu avec le dispositif de calcul binaire de reste d'une division d'un nombre par un facteur quinze (24-1), on réalise un dispositif de test de FIG. 4B associated with FIG. 4A thus shows that, by combining means of testing or decoding 48 of the remainder X4-X1 obtained with the device for binary calculation of the remainder of a division of a number by a factor of fifteen ( 24-1), a test device is produced.
divisibilité du nombre par le facteur quinze. divisibility of the number by the factor fifteen.
Le décodeur 48 à quatre bits Y1-Y4 illustré figure 4B permet en effet de détecter si le reste X1-X4 obtenu précédement est nul, ce qui permet de savoir si le nombre binaire N est un multiple entier de quinze, qui est la valeur (2n-l) du facteur de la division de la The four-bit decoder 48 Y1-Y4 illustrated in FIG. 4B indeed makes it possible to detect whether the remainder X1-X4 obtained previously is zero, which makes it possible to know whether the binary number N is an integer multiple of fifteen, which is the value ( 2n-l) of the factor of the division of the
figure 4.figure 4.
De façon équivalente des moyens de test ou de décodage (non illustrés) peuvent être disposés directement en sortie F1-F4 de résultat d'addition pour détecter si le résultat est nul ou égal à quinze, la valeur du facteur 24-1, ce qui revient à savoir si le nombre binaire N est un multiple entier du facteur de Equivalently, test or decoding means (not illustrated) can be arranged directly at output F1-F4 of addition result to detect if the result is zero or equal to fifteen, the value of the factor 24-1, which comes down to knowing if the binary number N is an integer multiple of the factor of
division (24-).division (24-).
En somme, l'invention permet de calculer le reste d'une division ou de tester la divisibilité d'un nombre binaire N par les facteurs suivants: éventuellement l'unité (cas élémentaire n=l), - trois (cas n=2, exposé précédement), - sept (cas n=3, exposé précédement), - quinze (cas n=4, exposé précédement), - trente et un (cas n=5), - soixante-trois (cas n=6), - cent vingt-sept (cas n=7), - deux cent cinquante-cinq (cas n=8), - cinq cent onze (cas n=9), - mille vingt-trois (cas n=10), et - tout facteur correspondant à 2n-1, avec n entier In sum, the invention makes it possible to calculate the remainder of a division or to test the divisibility of a binary number N by the following factors: possibly the unit (elementary case n = l), - three (case n = 2 , previously exposed), - seven (case n = 3, previously exposed), - fifteen (case n = 4, previously exposed), - thirty-one (case n = 5), - sixty-three (case n = 6) , - one hundred and twenty-seven (case n = 7), - two hundred and fifty-five (case n = 8), - five hundred and eleven (case n = 9), - one thousand twenty-three (case n = 10), and - any factor corresponding to 2n-1, with n integer
strictement positif.strictly positive.
Toutefois, l'invention a une portée beaucoup plus étendue que la divisibilité par l'ensemble des facteurs n 2n-1 correspondant à une puissance entière de deux However, the invention has a much wider scope than the divisibility by the set of factors n 2n-1 corresponding to an integer power of two
diminuée d'une unité.decreased by one.
De façon surprenante encore, l'invention permet de tester la divisibilité d'un nombre binaire par tout entier sous-multiple d'un des facteurs 2 -1 de cet ensemble. Ainsi, par exemple, le facteur quinze correspondant à 2 -1, n'est pas premier. Il se décompose sous la forme trois fois cinq. Un test de divisibilité par cinq peut alors être effectué en mettant en oeuvre le procédé ou le dispositif de calcul binaire de reste de division par quinze selon Still surprisingly, the invention makes it possible to test the divisibility of a binary number by an integer submultiple of one of the factors 2 -1 of this set. Thus, for example, the factor fifteen corresponding to 2 -1, is not prime. It breaks down into the form three times five. A test of divisibility by five can then be carried out by implementing the method or the device of binary calculation of remainder of division by fifteen according to
l'invention.the invention.
La figure 5 illustre ainsi une réalisation de dispositif de test de divisibilité d'un nombre N par cinq, entier sous-multiple du facteur quinze (24-1). En premier lieu, le dispositif intègre un circuit d'additionneurs 51, 52 de format quatre bits, semblable à celui de la figure 4, qui effectuent un calcul binaire de reste de division d'un nombre binaire N par FIG. 5 thus illustrates an embodiment of a device for testing the divisibility of a number N by five, an integer sub-multiple of the factor fifteen (24-1). First, the device integrates a circuit of adders 51, 52 of four-bit format, similar to that of FIG. 4, which perform a binary calculation of the remainder of division of a binary number N by
le facteur quinze (24 -1).factor fifteen (24 -1).
Des moyens de test ou de décodage 53 à 56 reçoivent le résultat F1-F4 fourni par les additionneurs 51, 52. On considère que chaque décodeur 53, 54, 55, 56 détecte dans le résultat F1- F4 d'addition, respectivement l'un des codes suivants: - code 0000 correspondant à un résultat nul, - code 0101 correspondant à un résultat de valeur cinq, - code 1010 correspondant à un résultat de valeur dix, et - code 1111 correspondant à un résultat de valeur quinze. Tous les cas de divisibilité de nombre N par l'entier Test or decoding means 53 to 56 receive the result F1-F4 supplied by the adders 51, 52. It is considered that each decoder 53, 54, 55, 56 detects in the result F1-F4 of addition, respectively the one of the following codes: - code 0000 corresponding to a zero result, - code 0101 corresponding to a result of value five, - code 1010 corresponding to a result of value ten, and - code 1111 corresponding to a result of value fifteen. All cases of divisibility of number N by the integer
cinq sont alors détectés.five are then detected.
Le tableau IV qui précède indique ainsi des résultats partiels, pour les nombres allant de zéro à seize, de test de divisibilité par cinq, obtenus par un Table IV above thus indicates partial results, for the numbers going from zero to sixteen, of test of divisibility by five, obtained by a
procédé ou un dispositif, selon l'invention. method or device according to the invention.
La réalisation de dispositif de test de divisibilité par cinq représentée figure 5 comporte donc quatre décodeurs 53, 54, 55 et 56 ayant des ports d'entrée quatre bits 01-04, Q1-Q4, S1-S4, et U1-U4 reliés au port de sortie F1-F4 de résultat d'addition par le facteur quinze, selon l'invention. Suivant l'exemple de réalisation de la figure 5, les décodeurs 53 à 56 peuvent être constitués d'éléments de portes combinatoires, tel qu'une porte 53 effectuant une opération logique de type NON OU (" NOR ", selon l'acronyme anglais) ou encore une porte 56 effectuant une opération logique de type ET (type " AND "). Les quatre décodeurs 53, 54, 55 et 56 ont respectivement des sorties P, R, T et V appliquées en entrées Y1',Y2',Y3',Y4' d'un autre élément combinatoire 59, par exemple une porte effectuant une opération logique de type OU, pour fournir un signal Z' de résultat de test The embodiment of a test device for divisibility by five shown in FIG. 5 therefore comprises four decoders 53, 54, 55 and 56 having four-bit input ports 01-04, Q1-Q4, S1-S4, and U1-U4 connected to the output port F1-F4 of addition result by factor fifteen, according to the invention. According to the exemplary embodiment of FIG. 5, the decoders 53 to 56 can be made up of elements of combinatorial doors, such as a door 53 performing a logical operation of the NOR type ("NOR", according to the English acronym). ) or a gate 56 performing an AND type logical operation ("AND" type). The four decoders 53, 54, 55 and 56 respectively have outputs P, R, T and V applied as inputs Y1 ', Y2', Y3 ', Y4' of another combinational element 59, for example a door performing an operation OR type logic, to provide a test result signal Z '
de divisibilité sur un seul bit.single-bit divisibility.
Il apparaît donc que la division binaire par quinze selon l'invention permet de tester la divisibilité par cinq et permettrait aussi de tester la divisibilité par trois, si le recours au calcul direct de reste de division par 2 -1, selon l'invention It therefore appears that the binary division by fifteen according to the invention makes it possible to test the divisibility by five and would also make it possible to test the divisibility by three, if the recourse to the direct calculation of remainder of division by 2 -1, according to the invention
n'existait pas.did not exist.
En énumérant les facteurs 2 n-1 de division prévus par l'invention, il apparaît avantageusement des possibilités illimitées de test de divisibilité par By enumerating the 2 n-1 division factors provided by the invention, it appears advantageously unlimited possibilities of test for divisibility by
d'autres entiers.other integers.
Voici quelques exemples: - le facteur de division soixante-trois (26-1) permet de tester la divisibilité par neuf (et éventuellement par sept), Here are some examples: - the factor of division sixty-three (26-1) allows to test the divisibility by nine (and possibly by seven),
- le facteur de division deux cent cinquante-cinq (28- - the division factor two hundred and fifty-five (28-
1) permet de tester la divisibilité par dix-sept (voire par quinze), - le facteur de division mille vingt-trois (21 -1) permet de tester la divisibilité par onze (voire par 1) makes it possible to test the divisibility by seventeen (even by fifteen), - the factor of division thousand twenty-three (21 -1) makes it possible to test the divisibility by eleven (even by
trente-et-un et par trois).thirty-one and three).
- d'autres facteurs 2n-1 (non premiers) permettent d'envisager des test de divisibilité par d'autres entiers, chaque entier étant sous- multiple d'un des - other factors 2n-1 (not prime) make it possible to envisage tests of divisibility by other integers, each integer being submultiple of one of
facteurs (2n-l).factors (2n-l).
Pour récapituler, l'invention permet de tester directement la divisibilité par trois (22-1), par cinq ([24-1]/3), par sept (23-1), par neuf ([26-1]/7) par To summarize, the invention makes it possible to directly test divisibility by three (22-1), by five ([24-1] / 3), by seven (23-1), by nine ([26-1] / 7 ) through
d'autres facteurs (2n-l1) et par d'autres entiers ([2n- other factors (2n-l1) and by other integers ([2n-
1]/X) sous-multiples de facteur (2n-l). 1] / X) submultiples of factor (2n-1).
Mais, l'invention permet encore de tester indirectement la divisibilité par des entiers qui sont However, the invention also makes it possible to indirectly test the divisibility by integers which are
multiples de 2n-1 ou multiples de diviseurs de 2n-1. multiples of 2n-1 or multiples of divisors of 2n-1.
Dans ce but, il est prévu, selon l'invention de combiner un test de divisibilité d'un nombre binaire par un facteur correspondant à 2n-l, tel qu'exposé précédement, avec un test de divisibilité dudit nombre binaire par un autre facteur correspondant To this end, provision is made, according to the invention, for combining a test for the divisibility of a binary number by a factor corresponding to 2n-1, as explained above, with a test for the divisibility of said binary number by another factor. corresponding
simplement à 2P.just 2P.
On peut ainsi connaître la divisibilité d'un nombre binaire par les entiers suivants: - six, en combinant les tests de divisibilité par deux (21) et par trois (22-1), selon l'invention, - dix, en combinant les tests de divisibilité par deux (21) et par cinq ([24-1]/3), selon l'invention, douze, en combinant les tests de divisibilité par quatre (22) et par trois (22-1), selon l'invention, - quatorze, en combinant les tests de divisibilité par deux (21) et par sept (23-1), selon l'invention, We can thus know the divisibility of a binary number by the following integers: - six, by combining the divisibility tests by two (21) and by three (22-1), according to the invention, - ten, by combining the divisibility tests by two (21) and by five ([24-1] / 3), according to the invention, twelve, by combining the divisibility tests by four (22) and by three (22-1), according to l invention, - fourteen, by combining the divisibility tests by two (21) and by seven (23-1), according to the invention,
- d'autres entiers pairs.- other integers even.
En effet, il est aisé de tester la divisibilité d'un nombre binaire N par un facteur 2P correspondant simplement à une puissance entière m de deux. Il suffit de décoder ou de tester si les p bits de poids faible du nombre binaire N sont tous nuls. A titre d'illustration numérique, en décodant le bit de poids faible ou les deux, trois, quatre... bits de poids faible de l'expression binaire du nombre N, on teste ainsi respectivement la divisibilité par deux (2'), ou par quatre (22), par huit (23), par seize (2) etc. Les moyens de test de divisibilité par un facteur correspondant simplement à 2p, sont constitués généralement par des éléments combinatoires effectuant une opération logique de type NON OU (type " NOR " en anglais) entre les p bits de poids faible; un tel élément combinatoire se réduit à un inverseur de bit de poids faible dans le cas du test de divisibilité par Indeed, it is easy to test the divisibility of a binary number N by a factor 2P corresponding simply to an integer power m of two. It suffices to decode or test whether the p least significant bits of the binary number N are all zero. By way of digital illustration, by decoding the least significant bit or the two, three, four ... least significant bits of the binary expression of the number N, we thus test the divisibility by two respectively (2 '), or by four (22), by eight (23), by sixteen (2) etc. The means of test of divisibility by a factor corresponding simply to 2p, are generally constituted by combinatory elements performing a logical operation of the NOR type ("NOR" type in English) between the p least significant bits; such a combinatorial element is reduced to a least significant bit inverter in the case of the divisibility test by
deux (21).two (21).
Les figures 6A à 6I montrent de façon synthétique comment tester la divisibilité de nombres par une série d'entiers, selon l'invention et avec les moyens exposés précédement. La figure 6A schématise un moyen de test de FIGS. 6A to 6I show in a synthetic way how to test the divisibility of numbers by a series of integers, according to the invention and with the means exposed previously. FIG. 6A shows diagrammatically a means of testing
divisibilité par deux, constitué d'un inverseur. divisible by two, consisting of an inverter.
La figure 6B schématise un système de test de divisibilité par trois, comprenant un dispositif tel qu'illustré figure 2, et un décodeur, selon FIG. 6B schematizes a divisibility test by three system, comprising a device as illustrated in FIG. 2, and a decoder, according to
l'invention.the invention.
La figure 6C schématise un moyen de test de divisibilité par quatre, constitué d'une porte NOR à FIG. 6C schematically shows a means of divisibility by four, consisting of a NOR gate with
deux entrées.two entrances.
La figure 6D schématise un système de test de divisibilité par cinq, comprenant un dispositif tel qu'illustré figure 4 ou 5, avec des décodeurs, selon l'invention. La figure 6E schématise un système de test de divisibilité par six, combinant un test de divisibilité par deux et un test de divisibilité par trois selon l'invention. La figure 6F schématise un système de test de divisibilité par sept, comprenant un dispositif tel FIG. 6D shows diagrammatically a test system for divisibility by five, comprising a device as illustrated in FIG. 4 or 5, with decoders, according to the invention. FIG. 6E schematizes a divisibility test by six system, combining a divisibility test by two and a divisibility test by three according to the invention. FIG. 6F schematizes a divisibility test system by seven, comprising a device such
qu'illustré figure 3 et un décodeur, selon l'invention. as illustrated in FIG. 3 and a decoder, according to the invention.
La figure 6G schématise un moyen de test de divisibilité par huit, constitué d'une porte logique de FIG. 6G schematizes a means of test of divisibility by eight, consisting of a logic gate of
type NOR à trois entrées.NOR type with three inputs.
La figure 6H schématise un système de test de divisibilité par neuf, comprenant un dispositif de calcul de reste de division par soixantetrois (26- 1) FIG. 6H schematizes a divisibility test by nine system, comprising a device for calculating the remainder of division by sixty-three (26-1)
et des décodeurs, selon l'invention. and decoders, according to the invention.
La figure 6I schématise un système de test de divisibilité par dix, combinant un test de divisibilité par deux et un test de divisibilité par cinq, selon Figure 6I schematically shows a divisibility test by ten, combining a divisibility test by two and a divisibility test by five, according to
l'invention.the invention.
Il apparaît finalement que l'on peut effectuer des tests de divisibilité par 2p, par 2n-l et des combinaisons de test par 2p et par 2 -l,1 selon l'invention, si bien que l'on peut avantageusement tester la divisibilité de nombres binaires par tous les entiers compris entre deux et dix, cette série n'étant It finally appears that it is possible to carry out divisibility tests by 2p, by 2n-1 and test combinations by 2p and by 2 -l, 1 according to the invention, so that one can advantageously test divisibility of binary numbers by all the integers between two and ten, this series not being
pas limitative.not limiting.
Enfin, il peut être prévu de combiner deux tests m n de divisibilité par deux facteurs 2m-l et 2n-l correspondant à deux puissances distinctes de deux chacune diminuée d'une unité, afin de connaître la divisibilité d'un nombre par le produit de ces deux facteurs. Par exemple pour tester la divisibilité par vingt et un, on peut combiner un test de divisibilité par trois (22-1) et un test de divisibilité par sept (23-l) Les applications dans le champ du calcul numérique du procédé et du dispositif selon l'invention sont Finally, provision may be made to combine two mn tests of divisibility by two factors 2m-l and 2n-l corresponding to two distinct powers of two each reduced by one, in order to know the divisibility of a number by the product of these two factors. For example, to test divisibility by twenty-one, we can combine a divisibility test by three (22-1) and a divisibility test by seven (23-l) Applications in the field of numerical calculation of the process and the device according to the invention are
multiples et ne peuvent être énumérés dans la présente. multiple and cannot be listed herein.
Une application particulière des tests de divisibilité selon l'invention consiste à détecter dans une zone mémoire l'emplacement d'un bloc d'instruction de programmes. Il existe en effet, des programmes dont les instructions sont codées sur un nombre d'adresses A particular application of the divisibility tests according to the invention consists in detecting in a memory area the location of a program instruction block. There are indeed programs whose instructions are coded on a number of addresses
mémoires ne correspondant pas à une puissance de deux. memories not corresponding to a power of two.
Un bloc d'instruction peut être constitué par exemple d'un code d'instruction (" code programme ") suivi de six codes de données ou d'adressage (" codes objets "); si bien que les blocs d'instructions du programme occupent sept espaces de codage. Un compteur d'adresse An instruction block can consist for example of an instruction code ("program code") followed by six data or address codes ("object codes"); so that the program instruction blocks occupy seven coding spaces. An address counter
pointe l'adresse de chaque code en cours de lecture. points to the address of each code being read.
De façon avantageuse, un test de divisibilité de l'adresse par le facteur sept (23-1) selon l'invention, permet à la gestion d'adresse de connaître immédiatement si le code en cours de lecture est ou Advantageously, a test of divisibility of the address by the factor seven (23-1) according to the invention allows the address management to know immediately if the code being read is or
n'est pas un code d'instruction.is not an instruction code.
Une alternative, illustrée sur l'organigramme de la figure 7 prévoit d'ailleurs que le procédé selon l'invention peut être mis en oeuvre par un microprocesseur à partir d'une suite d'instructions telles que les instructions O à 99 dont la compréhension est à la portée de l'homme de métier. De multiples applications, variantes et améliorations pourront être mises en oeuvre par l'homme de métier sans sortir du cadre de la présente An alternative, illustrated in the flow diagram of FIG. 7 also provides that the method according to the invention can be implemented by a microprocessor on the basis of a series of instructions such as instructions O to 99, the understanding of which is within the reach of the skilled person. Multiple applications, variants and improvements can be implemented by those skilled in the art without departing from the scope of this document.
invention, l'objet de la protection étant défini par les revendications ci-après. invention, the object of protection being defined by the claims below.
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9815634A FR2786579A1 (en) | 1998-11-30 | 1998-11-30 | Invention relates to a procedure for determination of the remainder of the division of an 8 bit binary number N by a factor (22-1) corresponding to a whole power of 2 reduced by 1 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR9815634A FR2786579A1 (en) | 1998-11-30 | 1998-11-30 | Invention relates to a procedure for determination of the remainder of the division of an 8 bit binary number N by a factor (22-1) corresponding to a whole power of 2 reduced by 1 |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2786579A1 true FR2786579A1 (en) | 2000-06-02 |
Family
ID=9533848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR9815634A Pending FR2786579A1 (en) | 1998-11-30 | 1998-11-30 | Invention relates to a procedure for determination of the remainder of the division of an 8 bit binary number N by a factor (22-1) corresponding to a whole power of 2 reduced by 1 |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR2786579A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1876523A1 (en) * | 2006-07-07 | 2008-01-09 | VIA Telecom Co., Ltd. | Computation of A MOD (2^n - 1) |
EP2196900A1 (en) * | 2008-12-10 | 2010-06-16 | Electronics and Telecommunications Research Institute | Modulo 3 reduction |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4538238A (en) * | 1983-01-18 | 1985-08-27 | Honeywell Information Systems Inc. | Method and apparatus for calculating the residue of a signed binary number |
US5499202A (en) * | 1993-06-02 | 1996-03-12 | Nec Corporation | Residue circuit |
-
1998
- 1998-11-30 FR FR9815634A patent/FR2786579A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4538238A (en) * | 1983-01-18 | 1985-08-27 | Honeywell Information Systems Inc. | Method and apparatus for calculating the residue of a signed binary number |
US5499202A (en) * | 1993-06-02 | 1996-03-12 | Nec Corporation | Residue circuit |
Non-Patent Citations (3)
Title |
---|
R. WARD: "Why do the divisibility 'rules' work? ; Explaining: 10, 2, 4, 8, 2^k, 5, 25", MATH FORUM: EXPLAINING THE DIVISIBILITY RULES, 25 January 1997 (1997-01-25), XP002108617, Retrieved from the Internet <URL:http://forum.swarthmore.edu/k12/mathtips/ward2.html> [retrieved on 19990707] * |
R. WARD: "Why do the divisibility 'rules' work? ; explaining: 3, 9, 11, 7, 13, 17, and larger numbers", MATH FORUM: EXPLAINING THE DIVISIBILITY RULES, 25 January 1997 (1997-01-25), XP002108616, Retrieved from the Internet <URL:http://forum.swarthmore.edu/k12/mathtips/ward2.html> [retrieved on 19990707] * |
SIVAKUMAR R ET AL: "VLSI DESIGN OF A MODULO-EXTRACTOR", PROCEEDINGS OF THE PACIFIC RIM CONFERENCE ON COMMUNICATIONS, COMPUT AND SIGNAL PROCESSING, VICTORIA, CA, MAY 9 - 10, 1991, vol. 1, 9 May 1991 (1991-05-09), INSTITUTE OF ELECTRICAL AND ELECTRONICS ENGINEERS, pages 327 - 330, XP000280315 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1876523A1 (en) * | 2006-07-07 | 2008-01-09 | VIA Telecom Co., Ltd. | Computation of A MOD (2^n - 1) |
WO2008005592A1 (en) * | 2006-07-07 | 2008-01-10 | Via Telecom Co., Ltd. | Computation of a mod (2 n - 1) |
CN101021777B (en) * | 2006-07-07 | 2010-08-25 | 开曼群岛威睿电通股份有限公司 | Efficient mod operation based on divisor (2n-1) |
US7849125B2 (en) | 2006-07-07 | 2010-12-07 | Via Telecom Co., Ltd | Efficient computation of the modulo operation based on divisor (2n-1) |
EP2196900A1 (en) * | 2008-12-10 | 2010-06-16 | Electronics and Telecommunications Research Institute | Modulo 3 reduction |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1414182B1 (en) | Hiding of data decomposed in a residue system | |
EP0712072B1 (en) | Method for the implementation of Montgomery modular reduction | |
EP0282123B1 (en) | System and method for cryptography, including application | |
EP0322966B1 (en) | Neural network circuit and structure | |
EP0712071B1 (en) | Process for implementing modular multiplication according to the Montgomery method | |
EP0692762B1 (en) | Parallel multiplication logical circuit | |
EP1368747B1 (en) | Method and device for reducing the time required to perform a product, multiplication and modular exponentiation calculation using the montgomery method | |
EP1291763A1 (en) | Method of scrambling a calculation with a secret number | |
FR2853424A1 (en) | ARCHITECTURE OF COMBINED POLYNOMIAL AND NATURAL MULTIPLIERS | |
EP0568146B1 (en) | Neural processor with data normalising means | |
FR2786579A1 (en) | Invention relates to a procedure for determination of the remainder of the division of an 8 bit binary number N by a factor (22-1) corresponding to a whole power of 2 reduced by 1 | |
EP0022513B1 (en) | Device for calculating a bidimensional discrete fourier transform | |
EP4109451B1 (en) | Circuit for storing parsimonious data | |
CA2257907A1 (en) | Public key cryptography method | |
FR2593948A1 (en) | DEVICE FOR COSINUS TRANSFORMATION OF A SAMPLE DIGITAL SIGNAL | |
EP1125205B1 (en) | Memory with vectorial access | |
EP0476592A2 (en) | Address generator for the data storage of a processor | |
EP0142412A1 (en) | Device for the transformation of the appearance probability of logic vectors and for the generation of time-variable probability vector sequences | |
EP0732809B1 (en) | Digital filter device | |
Riasat | Powers and anti-powers in binary words | |
EP0329572B1 (en) | Multiplier of binary numbers having a very large number of bits | |
FR2741973A1 (en) | PROCEDURE FOR PRODUCING A JO PARAMETER ASSOCIATED WITH THE IMPLEMENTATION OF A MODULAR OPERATION ACCORDING TO THE MONTGOMERY METHOD | |
EP0902359B1 (en) | Method and apparatus for performing integer division on a modulo arithmetic coprocessor | |
FR2811168A1 (en) | METHOD FOR CONVERTING THE BINARY REPRESENTATION OF A NUMBER IN A SIGNED BINARY REPRESENTATION | |
EP0718755A1 (en) | Electronic component, more particularly capable of performing a radix 4 division of two numbers |