Exceso-3 , 3-exceso [1] [2] [3] o 10-exceso-3 código binario (a menudo abreviado como XS-3 , [4] 3XS [1] o X3 [5] [6] ), desplazado binario [7] o código Stibitz [1] [2] [8] [9] (después de George Stibitz , [10] quien construyó una máquina de sumar basada en relés en 1937 [11] [12] ) es un binario autocomplementario -Código decimal codificado (BCD) y sistema numérico . Es unrepresentación sesgada . El código Excess-3 se usó en algunas computadoras más antiguas, así como en cajas registradoras y calculadoras electrónicas portátiles de mano de la década de 1970, entre otros usos.
Código Stibitz | |
---|---|
Dígitos | 4 [1] |
Pistas | 4 [1] |
Valores de dígitos | 8 4 −2 −1 |
Peso (s) | 1..3 [1] |
Continuidad | No [1] |
Cíclico | No [1] |
Distancia minima | 1 [1] |
Distancia máxima | 4 |
Redundancia | 0,7 |
Lexicografía | 1 [1] |
Complemento | 9 [1] |
Representación
Los códigos sesgados son una forma de representar valores con un número equilibrado de números positivos y negativos utilizando un número N preespecificado como valor de sesgo. Los códigos sesgados (y los códigos Gray ) son códigos no ponderados. En el código de exceso de 3, los números se representan como dígitos decimales, y cada dígito se representa con cuatro bits como el valor del dígito más 3 (la cantidad "excedente"):
- El número binario más pequeño representa el valor más pequeño ( 0 - exceso ).
- El mayor número binario representa el mayor valor ( 2 N +1 - exceso - 1 ).
Decimal | Exceso-3 | Stibitz | BCD 8-4-2-1 | Binario | Extensión del CCITT 3 de 6 [13] [1] | Extensión de Hamming 4 de 8 [1] |
---|---|---|---|---|---|---|
−3 | 0000 | pseudo-tétrada | N / A | N / A | N / A | N / A |
−2 | 0001 | pseudo-tétrada | ||||
−1 | 0010 | pseudo-tétrada | ||||
0 | 0011 | 0011 | 0000 | 0000 | … 10 | … 0011 |
1 | 0100 | 0100 | 0001 | 0001 | … 11 | … 1011 |
2 | 0101 | 0101 | 0010 | 0010 | … 10 | … 0101 |
3 | 0110 | 0110 | 0011 | 0011 | … 10 | … 0110 |
4 | 0111 | 0111 | 0100 | 0100 | … 00 | … 1000 |
5 | 1000 | 1000 | 0101 | 0101 | … 11 | … 0111 |
6 | 1001 | 1001 | 0110 | 0110 | … 10 | … 1001 |
7 | 1010 | 1010 | 0111 | 0111 | … 10 | … 1010 |
8 | 1011 | 1011 | 1000 | 1000 | … 00 | … 0100 |
9 | 1100 | 1100 | 1001 | 1001 | … 10 | … 1100 |
10 | 1101 | pseudo-tétrada | pseudo-tétrada | 1010 | N / A | N / A |
11 | 1110 | pseudo-tétrada | pseudo-tétrada | 1011 | ||
12 | 1111 | pseudo-tétrada | pseudo-tétrada | 1100 | ||
13 | N / A | N / A | pseudo-tétrada | 1101 | ||
14 | pseudo-tétrada | 1110 | ||||
15 | pseudo-tétrada | 1111 |
Para codificar un número como 127, uno simplemente codifica cada uno de los dígitos decimales como se indicó anteriormente, dando (0100, 0101, 1010).
La aritmética Excess-3 usa algoritmos diferentes a los números normales del sistema posicional binario o BCD no sesgado . Después de agregar dos dígitos de exceso de 3, la suma bruta es de exceso de 6. Por ejemplo, después de agregar 1 (0100 en exceso-3) y 2 (0101 en exceso-3), la suma parece 6 (1001 en exceso-3) en lugar de 3 (0110 en exceso-3). Para corregir este problema, después de sumar dos dígitos, es necesario eliminar el sesgo adicional restando 0011 binario (decimal 3 en binario insesgado) si el dígito resultante es menor que 10 decimal, o restando 1101 binario (decimal 13 en binario insesgado) binario) si se ha producido un desbordamiento (acarreo). (En binario de 4 bits, restar 1101 binario es equivalente a sumar 0011 y viceversa).
Motivación
La principal ventaja de la codificación con exceso de 3 sobre la codificación no sesgada es que un número decimal puede complementarse con nueves [1] (para restar) tan fácilmente como un número binario puede complementarse con unidades: simplemente invirtiendo todos los bits. [1] Además, cuando la suma de dos dígitos en exceso de 3 es mayor que 9, el bit de acarreo de un sumador de 4 bits se establecerá alto. Esto funciona porque, después de agregar dos dígitos, un valor "en exceso" de 6 da como resultado la suma. Debido a que un entero de 4 bits solo puede contener valores de 0 a 15, un exceso de 6 significa que cualquier suma superior a 9 se desbordará (producirá una ejecución).
Otra ventaja es que los códigos 0000 y 1111 no se utilizan para ningún dígito. Una falla en la memoria o en la línea de transmisión básica puede resultar en estos códigos. También es más difícil escribir el patrón cero en medios magnéticos. [1] [14] [11]
Ejemplo
Ejemplo de convertidor BCD 8-4-2-1 a exceso-3 en VHDL :
la entidad bcd8421xs3 es el puerto ( a : en std_logic ; b : en std_logic ; c : en std_logic ; d : en std_logic ; an : buffer std_logic ; bn : búfer std_logic ; cn : búfer std_logic ; dn : búfer std_logic ; w : fuera std_logic ; x : fuera std_logic ; y : fuera std_logic ; z : fuera std_logic ); entidad final bcd8421xs3 ; el flujo de datos de la arquitectura de bcd8421xs3 es begin an <= not a ; bn <= no b ; cn <= no c ; dn <= no d ; w <= ( un y b y d ) o ( una y bn y cn ) o ( un y b y c y dn ); x <= ( an y bn y d ) o ( an y bn y c y dn ) o ( an y b y cn y dn ) o ( a y bn y cn y d ); y <= ( una y cn y dn ) o ( una y c y d ) o ( una y bn y cn y dn ); z <= ( an y dn ) o ( a y bn y cn y dn ); flujo de datos de arquitectura final ; - de bcd8421xs3
Extensiones
Extensión 3 de 6 | |
---|---|
Dígitos | 6 [1] |
Pistas | 6 [1] |
Peso (s) | 3 [1] |
Continuidad | No [1] |
Cíclico | No [1] |
Distancia minima | 2 [1] |
Distancia máxima | 6 |
Lexicografía | 1 [1] |
Complemento | (9) [1] |
Extensión 4 de 8 | |
---|---|
Dígitos | 8 [1] |
Pistas | 8 [1] |
Peso (s) | 4 [1] |
Continuidad | No [1] |
Cíclico | No [1] |
Distancia minima | 4 [1] |
Distancia máxima | 8 |
Lexicografía | 1 [1] |
Complemento | 9 [1] |
- Extensión de código de 3 de 6: el código de exceso de 3 a veces también se usa para la transferencia de datos, luego a menudo se expande a un código de 6 bits según CCITT GT 43 No. 1, donde se establecen 3 de 6 bits. [13] [1]
- Extensión de código 4 de 8: como alternativa al código del transceptor IBM [15] (que es un código 4 de 8 con una distancia de Hamming de 2), [1] también es posible definir un código de 4 de 8 Extensión de código -8 en exceso-3 que alcanza una distancia de Hamming de 4, si solo se van a transferir dígitos denarios. [1]
Ver también
- Desplazamiento binario , exceso de N , representación sesgada
- Exceso-128
- Exceso de código Gray
- Código gris desplazado
- Código gris
- código m-de-n
- Código Aiken
Referencias
- ^ a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai Steinbuch, Karl W. , ed. (1962). Escrito en Karlsruhe, Alemania. Taschenbuch der Nachrichtenverarbeitung (en alemán) (1 ed.). Berlín / Göttingen / Nueva York: Springer-Verlag OHG . págs. 71–73, 1081–1082. LCCN 62-14511 .
- ^ a b Steinbuch, Karl W .; Weber, Wolfgang; Heinemann, Traute, eds. (1974) [1967]. Taschenbuch der Informatik - Band II - Struktur und Programmierung von EDV-Systemen . Taschenbuch der Nachrichtenverarbeitung (en alemán). 2 (3 ed.). Berlín, Alemania: Springer Verlag . págs. 98-100. ISBN 3-540-06241-6. LCCN 73-80607 .
- ^ Richards, Richard Kohler (1955). Operaciones aritméticas en ordenadores digitales . Nueva York, Estados Unidos: van Nostrand . pag. 182.
- ^ Kautz, William H. (junio de 1954). "Codificación de datos optimizada para computadoras digitales" . Registro de la Convención de la Convención Nacional IRE 1954, Parte 4: Computadoras electrónicas y tecnología de la información . Instituto de Investigación de Stanford, Stanford, California, EE. UU.: Instituto de Ingenieros de Radio, Inc. 2 : 47–57. Sesión 19: Teoría de la información III - Velocidad y Computación . Consultado el 22 de mayo de 2020 . (11 páginas)
- ^ Schmid, Hermann (1974). Computación decimal (1 ed.). Binghamton, Nueva York, EE.UU .: John Wiley & Sons, Inc. p. 11 . ISBN 0-471-76180-X. Consultado el 3 de enero de 2016 .
- ^ Schmid, Hermann (1983) [1974]. Computación decimal (1 (reimpresión) ed.). Malabar, Florida, EE.UU .: Robert E. Krieger Publishing Company. pag. 11. ISBN 0-89874-318-4. Consultado el 3 de enero de 2016 .(NB. Al menos algunos lotes de esta edición de reimpresión fueron erratas con páginas defectuosas 115-146).
- ^ Stibitz, George Robert ; Larrivee, Jules A. (1957). Escrito en Underhill, Vermont, EE. UU. Matemáticas y Computación (1 ed.). Nueva York, EE. UU. / Toronto, Canadá / Londres, Reino Unido: McGraw-Hill Book Company, Inc. p. 105. LCCN 56-10331 . (10 + 228 páginas)
- ^ Dokter, Folkert; Steinhauer, Jürgen (18 de junio de 1973). Electrónica digital . Biblioteca técnica de Philips (PTL) / Macmillan Education (Reimpresión de la 1ª edición en inglés). Eindhoven, Países Bajos: The Macmillan Press Ltd. / NV Philips 'Gloeilampenfabrieken . págs. 42, 44. doi : 10.1007 / 978-1-349-01417-0 . ISBN 978-1-349-01419-4. SBN 333-13360-9. Consultado el 1 de julio de 2018 . (270 páginas) (NB. Se basa en una traducción del volumen I de la edición alemana en dos volúmenes).
- ^ Dokter, Folkert; Steinhauer, Jürgen (1975) [1969]. Digitale Elektronik in der Meßtechnik und Datenverarbeitung: Theoretische Grundlagen und Schaltungstechnik . Philips Fachbücher (en alemán). I (mejorada y ampliada 5ª ed.). Hamburgo, Alemania: Deutsche Philips GmbH . págs. 48, 51, 53, 58, 61, 73. ISBN 3-87145-272-6. (xii + 327 + 3 páginas) (NB. La edición alemana del volumen I se publicó en 1969, 1971, dos ediciones en 1972 y 1975. El volumen II se publicó en 1970, 1972, 1973 y 1975.)
- ^ Stibitz, George Robert (9 de febrero de 1954) [19 de abril de 1941]. "Computadora compleja" . Patente US2668661A . Consultado el 24 de mayo de 2020 . [1] (102 páginas)
- ^ a b Mietke, Detlef (2017) [2015]. "Códices Binäre" . Informations- und Kommunikationstechnik (en alemán). Berlín, Alemania. Exzeß-3-Code mit Additions- und Subtraktionsverfahren. Archivado desde el original el 25 de abril de 2017 . Consultado el 25 de abril de 2017 .
- ^ Ritchie, David (1986). Los pioneros de la informática . Nueva York, Estados Unidos: Simon and Schuster . pag. 35 . ISBN 067152397X.
- ^ a b Comité Consultatif International Téléphonique et Télégraphique (CCITT), Groupe de Travail 43 (3 de junio de 1959). Contribución No. 1 . CCITT, GT 43 No. 1.
- ^ Bashe, Charles J .; Jackson, Peter Ward; Mussell, Howard A .; Winger, Wayne David (enero de 1956). "El diseño del sistema IBM Type 702". Transacciones del Instituto Americano de Ingenieros Eléctricos, Parte I: Comunicación y Electrónica . 74 (6): 695–704. doi : 10.1109 / TCE.1956.6372444 . S2CID 51666209 . Documento No. 55-719.
- ^ IBM (julio de 1957). 65 Transceptor de datos / 66 Receptor de datos de impresión .