stringtranslate.com

Exceso-3

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] (en honor a George Stibitz , [10] quien construyó una máquina sumadora basada en relés en 1937 [11] [12] ) es un código binario autocomplementario Código decimal codificado (BCD) y sistema de numeración . Es una representación sesgada . El código Excess-3 se utilizó en algunas computadoras más antiguas, así como en cajas registradoras y calculadoras electrónicas portátiles de la década de 1970, entre otros usos.

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 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 mediante cuatro bits como el valor del dígito más 3 (la cantidad "exceso"):

Para codificar un número como 127, simplemente se codifica cada uno de los dígitos decimales como se indica arriba, dando (0100, 0101, 1010).

La aritmética de exceso de 3 utiliza algoritmos diferentes a los números normales del sistema posicional binario o BCD no sesgado . Después de sumar dos dígitos en exceso de 3, la suma bruta es exceso de 6. Por ejemplo, después de sumar 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 el binario 0011 (3 decimal en binario imparcial) si el dígito resultante es menor que el decimal 10, o restando el binario 1101 (13 decimal en binario imparcial). si se ha producido un desbordamiento (acarreo). (En binario de 4 bits, restar 1101 binario equivale a sumar 0011 y viceversa) .

Motivación

La principal ventaja de la codificación en exceso de 3 sobre la codificación no sesgada es que un número decimal puede complementarse con nueves [1] (para resta) 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 sobrantes de 3 es mayor que 9, el bit de acarreo de un sumador de 4 bits se establecerá en alto. Esto funciona porque, después de sumar dos dígitos, un valor "excedente" de 6 da como resultado la suma. Debido a que un entero de 4 bits sólo puede contener valores de 0 a 15, un exceso de 6 significa que cualquier suma superior a 9 se desbordará (producirá un acarreo).

Otra ventaja es que los códigos 0000 y 1111 no se utilizan para ningún dígito. Una falla en una memoria o en una 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] [15] [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 : salida std_logic ; x : salida std_logic ; y : salida std_logic ; z : salida std_logic ); entidad final bcd8421xs3 ;                  El flujo de datos de arquitectura de bcd8421xs3 es comenzar un <= not a ; bn <= no b ; cn <= no c ; dn <= no d ;                     w < = ( an y byd ) o ( a y bn y cn ) o ( an y byc 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 <= ( an y cn y dn ) o ( an y c y d ) o ( a y bn y cn y dn ); z <= ( an y dn ) o ( a y bn y cn y dn );                                                                                        finalizar el flujo de datos de la arquitectura ; -- de bcd8421xs3   

Extensiones

Ver también

Referencias

  1. ^ abcdefghijklmnopqrstu vwxyz 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 / Gotinga / Nueva York: Springer-Verlag OHG . págs. 71–73, 1081–1082. LCCN  62-14511.
  2. ^ ab Steinbuch, Karl W .; Weber, Wolfgang; Heinemann, Traute, eds. (1974) [1967]. Taschenbuch der Informatik - Band II - Struktur und Programmierung von EDV-Systemen (en alemán). vol. 2 (3 ed.). Berlín, Alemania: Springer Verlag . págs. 98-100. ISBN 3-540-06241-6. LCCN  73-80607. {{cite book}}: |work=ignorado ( ayuda )
  3. ^ Richards, Richard Kohler (1955). Operaciones aritméticas en computadoras digitales . Nueva York, Estados Unidos: van Nostrand . pag. 182.
  4. ^ Kautz, William H. (junio de 1954). "Codificación de datos optimizada para computadoras digitales". Registro de la Convención Nacional IRE de 1954, Parte 4: Computadoras electrónicas y tecnología de la información . Instituto de Investigación de Stanford, Stanford, California, EE.UU.: The Institute of Radio Engineers, 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)
  5. ^ Schmid, Hermann (1974). Cálculo decimal (1 ed.). Binghamton, Nueva York, Estados Unidos: John Wiley & Sons, Inc. p. 11.ISBN _ 0-471-76180-X. Consultado el 3 de enero de 2016 .
  6. ^ Schmid, Hermann (1983) [1974]. Computación decimal (1 (reimpresión) ed.). Malabar, Florida, Estados Unidos: 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 eran errores de impresión con páginas 115 a 146 defectuosas).
  7. ^ Stibitz, George Robert; Larrivee, Jules A. (1957). Written at Underhill, Vermont, USA. Mathematics and Computers (1 ed.). New York, USA / Toronto, Canada / London, UK: McGraw-Hill Book Company, Inc. p. 105. LCCN 56-10331. (10+228 pages)
  8. ^ Dokter, Folkert; Steinhauer, Jürgen (1973-06-18). Digital Electronics. Philips Technical Library (PTL) / Macmillan Education (Reprint of 1st English ed.). Eindhoven, Netherlands: The Macmillan Press Ltd. / N. V. Philips' Gloeilampenfabrieken. pp. 42, 44. doi:10.1007/978-1-349-01417-0. ISBN 978-1-349-01419-4. SBN 333-13360-9. Retrieved 2018-07-01. (270 pages) (NB. This is based on a translation of volume I of the two-volume German edition.)
  9. ^ Dokter, Folkert; Steinhauer, Jürgen (1975) [1969]. Digitale Elektronik in der Meßtechnik und Datenverarbeitung: Theoretische Grundlagen und Schaltungstechnik. Philips Fachbücher (in German). Vol. I (improved and extended 5th ed.). Hamburg, Germany: Deutsche Philips GmbH. pp. 48, 51, 53, 58, 61, 73. ISBN 3-87145-272-6. (xii+327+3 pages) (NB. The German edition of volume I was published in 1969, 1971, two editions in 1972, and 1975. Volume II was published in 1970, 1972, 1973, and 1975.)
  10. ^ Stibitz, George Robert (1954-02-09) [1941-04-19]. "Complex Computer". Patent US2668661A. Retrieved 2020-05-24. [1] (102 pages)
  11. ^ a b Mietke, Detlef (2017) [2015]. "Binäre Codices". Informations- und Kommunikationstechnik (in German). Berlin, Germany. Exzeß-3-Code mit Additions- und Subtraktionsverfahren. Archived from the original on 2017-04-25. Retrieved 2017-04-25.
  12. ^ Ritchie, David (1986). The Computer Pioneers. New York, USA: Simon and Schuster. p. 35. ISBN 067152397X.
  13. ^ a b Comité Consultatif International Téléphonique et Télégraphique (CCITT), Groupe de Travail 43 (1959-06-03). Contribution No. 1. CCITT, GT 43 No. 1.{{cite book}}: Mantenimiento CS1: nombres numéricos: lista de autores ( enlace )
  14. ^ Hayes, John P. (1978). Computer Architecture and Organization. McGraw-Hill International Book Company. p. 156. ISBN 0-07-027363-4.
  15. ^ Bashe, Charles J.; Jackson, Peter Ward; Mussell, Howard A.; Extremo, Wayne David (enero de 1956). "El diseño del sistema IBM tipo 702". Transacciones del Instituto Americano de Ingenieros Eléctricos, Parte I: Comunicaciones y Electrónica . 74 (6): 695–704. doi :10.1109/TCE.1956.6372444. S2CID  51666209. Documento nº 55-719.
  16. ^ IBM (julio de 1957). 65 Transceptor de datos/66 Receptor de datos de impresión .