En el que computa y sistemas electrónicos, el decimal codificado en binario (BCD del ) es una codificación para los números decimales en los cuales cada dígito es representado por su propia secuencia binaria. Su virtud principal es que permite la conversión fácil a los dígitos decimales para la impresión o exhibición y cálculos decimales más rápidos. Sus desventajas son la complejidad creciente de los circuitos necesarios para ejecutar operaciones matemáticas y un &ndash relativamente ineficaz de la codificación; ocupa más espacio que una representación binaria pura. Aunque la importancia del BCD ha disminuido, es todavía ampliamente utilizada en usos financieros, comerciales, e industriales.

En el BCD, un dígito es representado generalmente por cuatro pedacitos que, representen generalmente los valores/los dígitos/los carácteres 0-9. Otras combinaciones de pedacito se utilizan a veces para la muestra u otras indicaciones.

Fundamentos

Para BCD-codificar un número decimal usar la codificación común, cada dígito decimal se almacena en un mordisco four-bit .

Decimal: 0 1 2 3 4 5 6 7 8 9 BCD: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Así, la codificación del BCD para el número 127 sería:

0001 0010 0111

Puesto que la mayoría de los datos del almacenaje informático en los octetos de ocho bites allí son dos maneras comunes de almacenar dígitos four-bit del BCD en esos octetos:
cada dígito se almacena en un octeto, y los otros cuatro pedacitos entonces se fijan a todos los ceros, todos los (como en el código del EBCDIC ), o a 0011 (como en el código ASCII )
dos dígitos se almacenan en cada octeto.

Desemejante de números codificados binarios, el BCD los números codificados puede ser exhibido fácilmente trazando cada uno de los mordiscos a un diverso carácter. Convertir un número codificado binario al decimal para la exhibición es operaciones de participación mucho más duras de la multiplicación o de la divisoria del número entero.

BCD en electrónica

El BCD es muy común en sistemas electrónicos donde está ser exhibida un valor numérico, especialmente en los sistemas que consisten solamente en la lógica de Digitaces, y no conteniendo un microprocesador . Utilizando el BCD, la manipulación de los datos numéricos para la exhibición puede ser simplificada grandemente tratando cada dígito como solo secundario-circuito separado. Esto empareja la realidad física del diseñador del hardware-uno de la exhibición pudo elegir mucho más de cerca utilizar una serie de las exhibiciones de segmento idénticas separadas 7 para construir un circuito medidor, por ejemplo. Si la cantidad numérica fuera almacenada y manipulara como binario puro, la interconexión a tal exhibición requeriría el trazado de circuito complejo. Por lo tanto, en caso de que los cálculos sean relativamente simples el funcionamiento con el BCD puede llevar en todas partes a un sistema total más simple que convirtiendo al binario “puro”.

La misma discusión se aplica cuando el hardware de este tipo utiliza el microcontrolador encajado o el otro pequeño procesador. A menudo, un código más pequeño resulta al representar números interno en formato del BCD, puesto que una conversión o a la representación binaria puede ser costosa en tales procesadores limitados. Para estos usos, algunos pequeños procesadores ofrecen los modos aritméticos del BCD, que asisten al escribir las rutinas que manipulan cantidades del BCD.

BCD lleno

Una variación ampliamente utilizada de la codificación del dos-dígito-por-octeto se llama BCD lleno (o simplemente el decimal comprimido ), donde un número entero decimal se almacena con el " de dos dígitos decimales; packed" en cada octeto, y el dígito pasado (o el mordisco ) se utiliza como indicador de la muestra.

Los valores preferred de la muestra son 1100 (el maleficio C) para el positivo (+) y 1101 (el maleficio D) para la negativa (el −); otras muestras permitidas son 1010 (a) y (b) 1110 (e) para el positivo y 1011 para la negativa. Algunas puestas en práctica también proveen de valores sin firmar del BCD un mordisco de la muestra de 1111 (el maleficio F). En el BCD lleno, el número +127 se representa como los octetos 00010010 01111100 (maleficio 12 7C), y − 127 como 00010010 01111101 (maleficio 12 7D).


Decimal comprimido de punto fijo

Los números decimales de punto fijo son apoyados por algunos lenguajes de programación (tales como COBOL y PL/I ), y proporcionan una coma implícita delante de uno de los dígitos. Por ejemplo, un valor del decimal comprimido codificado con los octetos 12 34 56 7C representa el valor de punto fijo +1.567 cuando la coma implicada está situada entre los 4tos y 5tos dígitos.

codificaciones de la Alto-densidad

Si un dígito decimal requiere cuatro pedacitos, después tres dígitos decimales requieren 12 pedacitos. Sin embargo, desde 210>103, si tres dígitos decimales se codifican juntos entonces solamente 10 pedacitos son necesarios. Dos tales codificaciones son codificación de Chen-Ho y del decimal comprimido denso. Este 3ultimo tiene la ventaja que los subconjuntos de la codificación codifican dos dígitos en los 7 pedacitos óptimos y un dígito en 4 pedacitos, como en el BCD regular.

Decimal dividido en zonas

Representaciones numéricas divididas en zonas del decimal de la ayuda de algunas puestas en práctica (notablemente sistemas de la unidad central de IBM ). Cada dígito decimal se almacena en un octeto, con los cuatro pedacitos más bajos codificando el dígito en forma del BCD. Los cuatro pedacitos superiores, llamados el " zone" los pedacitos, se fijan generalmente a un valor fijo de modo que el octeto lleve a cabo un valor del carácter que corresponde al dígito. Los sistemas del EBCDIC utilizan un valor de la zona de 1111 (el maleficio F); esto rinde octetos en la gama F0 a F9 (maleficio), que son los códigos del EBCDIC para el " de los carácteres; 0" a través de " 9". Semejantemente, los sistemas del ASCII utilizan un valor de la zona de 0011 (el maleficio 3), dando los códigos de carácter 30 a 39 (maleficio).

Para los valores decimales divididos en zonas firmados, el mordisco de derecha de la zona (menos significativo) lleva a cabo el dígito de muestra, que es el mismo sistema de los valores que se utilizan para los números firmados del decimal comprimido (véase arriba). Así un valor decimal dividido en zonas codificado como los octetos hex F1 F2 D3 representa el &minus firmado del valor decimal; 123.

Decimal de punto fijo de la zona

Algunas idiomas (tales como COBOL y PL1 ) apoyan directo los valores decimales divididos en zonas de punto fijo, assiging una coma implícita en una cierta localización entre los dígitos decimales de un número. Por ejemplo, dado un seis-octeto firmó valor decimal dividido en zonas con una coma implicada a la derecha del 4to dígito, los octetos hex que F1 F2 F7 F9 F5 C0 representan el valor +1.

IBM y BCD

El IBM utilizó el decimal codificado en binario de los términos y BCD para los códigos alfanuméricos del de seis bits que representaron números, letras mayúsculas y carácteres especiales. Una cierta variación del BCD fue utilizada en la mayoría de las computadoras de IBM tempranas, incluyendo el IBM 1620, el IBM 1400 series, y los miembros decimales de la arquitectura non- IBM 700/7000 serie .

Las posiciones de pedacito en el BCD generalmente fueron etiquetadas el B, A, 8, 4, 2 y el 1. para los dígitos de la codificación, el B y el A eran cero. El A de la letra era el codificado (B, A, 1).

En el alphamerics 1620 del del BCD fueron codificados usar pares del dígito, con el " zone" en incluso el dígito y el " digit" en el dígito impar. El hardware de la traducción de la entrada-salida convirtió entre los pares internos del dígito y los códigos de seis bits estándar externos del BCD.

En el decimal IBM de la arquitectura 7070, el IBM 7072, y el alphamerics del de IBM 7074 fueron codificados usar pares del dígito (usar Dos-hacia fuera-de-cinco code en los dígitos, BCD del no ) de la palabra de 10 dígitos, con el " zone" en el dígito izquierdo y el " digit" en el dígito correcto. El hardware de la traducción de la entrada-salida convirtió entre los pares internos del dígito y los códigos de seis bits estándar externos del BCD.

Por la introducción System/360, IBM substituyó el BCD con EBCDIC de 8 bits ; en EBDIC, la zona es cuatro pedacitos uno, así que el dígito 3 se codifica en un octeto como 111100112 (es decir, el carácter 3 tiene la codificación F316).

Hoy, el BCD es todavía muy usado en los procesadores y las bases de datos de IBM, tales como IBM DB2, las unidades centrales, y el Power6 . En estos productos, el BCD es generalmente BCD dividido en zonas (como en el EBCDIC o el ASCII), BCD lleno, o codificación “pura” del BCD. Todos los éstos se utilizan dentro de los registros de hardware y de las unidades centrales, y en software.

Adición con el BCD

Para realizar la adición en el BCD, usted puede primero agregar-para arriba en formato binario, y después realiza la conversión al BCD luego. Esta conversión implica el agregar de 6 a cada grupo de cuatro dígitos que tiene un valor grande-que 9. de por ejemplo:

9+5=14 = + = en binario.

Sin embargo, en el BCD, no podemos tener un valor grande-que 9 (1001) por el mordisco . Para corregir esto, uno agrega 6 a ese grupo:

1110 + 0110 = 0100

cuál nos da dos mordiscos, y cuál corresponde al " 1" y " 4" respectivamente. Esto nos da los 14 en el BCD que es el resultado correcto.

Ver también la clase particular de Douglas Jones.

Fondo

El esquema del decimal codificado en binario descrito en este artículo es la codificación más común, pero hay muchos otros. El método aquí se puede referir como el decimal codificado en binario simple ( SBCD ) del o BCD 8421 del . ¡ En los jefes a la tabla, a los “8 4 2 1”, al etc., indica el peso de cada pedacito demostrado; observar que en 5th la columna dos de los pesos ser negativo. Los códigos de carácter del ASCII y del EBCDIC para los dígitos son ejemplos del BCD dividido en zonas, y también se demuestran en la tabla.

La tabla siguiente representa dígitos decimales a partir de la 0 a 9 en varios sistemas del BCD:

Historia legal

En 1972, el Tribunal Supremo de los E. volcó una decisión del tribunal inferior que había permitido una patente para convertir números codificados BCD al binario en una computadora (véase Gottschalk v Benson). Esto era un caso importante en la determinación de la patentabilidad del software y de los algoritmos.

Comparación con el binario puro

¡ ¡sistema de numeración alternativo para la OMI de la computación y de la electrónica una comparación la estándar se justifica (el plugwash)-->

Ventajas

Escalamiento por un factor de 10 (o una energía de 10) es simple; esto es útil cuando un factor de escala decimal es necesario representar una cantidad del no-número entero (e., en cálculos financieros)
El que redondea en un límite del dígito decimal es más simple.
La alineación de dos números decimales (por ejemplo 1.08) es una simple, exacto, cambio
La conversión a una forma del carácter o para la exhibición (e., a un formato basado texto tal como XML, o a las señales de impulsión para una exhibición del Siete-segmento) es un por-dígito simple que traza, y se puede hacer en linear (el O ( n )) tiempo. La conversión puro binario implica la lógica relativamente compleja que atraviesa dígitos, y para los grandes números no se sabe ningún algoritmo de la conversión del linear-tiempo (véase los system#Conversion_to_and_from_other_numeral_systems del número binario).
Algunos valores no íntegros, tales como 0.2, tienen una representación finita del lugar-valor en decimal pero no en binario; por lo tanto un sistema basado en representaciones binarias del lugar-valor introduciría un pequeño error que representa tal valor, que se puede componer por el cómputo adicional si las consideraciones numéricas cuidadosas no se hacen. Observar que si el cómputo no se realiza en el valor esto no es una edición, puesto que es suficiente representarla usar bastantes pedacitos que cuando están redondeados al número original de dígitos decimales el valor original se recuperen correctamente.

Desventajas

Algunas operaciones son más complejas ejecutar. Las serpientes requieren lógica adicional hacerlas envolver y generar un llevar temprano. 15%– los 20% que más trazado de circuito es necesario para el BCD agregan comparado al binario puro. La multiplicación requiere el uso de los algoritmos que son algo más complejos que cambiar de puesto-máscara-agregan (una multiplicación binaria, requiriendo cambios binarios y agrega o el equivalente, el por-dígito o el grupo de dígitos se requiere)
el BCD estándar del

requiere cuatro pedacitos por el dígito, el áspero 20% más espacio que una codificación binaria. Cuando están embalados para codificar tres dígitos en diez pedacitos, los gastos indirectos del almacenaje se reducen a cerca de 0.34%, a expensas de una codificación que sea sin alinear con los límites del byte de 8 bits comunes en el hardware existente, dando por resultado puestas en práctica más lentas en estos sistemas. ¡operaciones de búsqueda de tabla, y rápido usar lógica directa de otra manera. En hardware requiere no más de tres retardos de la puerta. -->
Las puestas en práctica existentes del

l BCD son típicamente más lentas que operaciones en representaciones binarias, especialmente en los sistemas encajados, debido a la ayuda limitada del procesador para las operaciones nativas del BCD. ¡hacia fuera porque esto se cubre ya en la primera bala.
La multiplicación en la base 10 necesita la tabla de una multiplicación 10 x 10 mientras que la misma operación en la base 2 necesita la tabla de multiplicación 2 x 2, que es igual a simple Y a la operación en lógica boleana. -->

Usos

El BIOS en muchas PC mantiene la fecha y la hora formato del BCD, probablemente por las razones históricas (evitó la necesidad del binario a la conversión del ASCII).

Variaciones representativas

Las varias puestas en práctica del BCD existen que emplean otras representaciones para los números. Las calculadoras programables manufacturadas por el Texas Instruments, el Hewlett-Packard, y los otros emplean típicamente un formato flotante del BCD, típicamente con dos o tres dígitos para el exponente (del decimal). Los pedacitos adicionales del dígito de muestra se pueden utilizar para indicar valores numéricos especiales, tales como infinito, desbordamiento de capacidad inferior /desbordamiento, y el error (una exhibición del centelleo).

Codificaciones alternativas

Si el error en la representación y el cómputo es la preocupación primaria, algo que la eficacia de la conversión a y desde forma de la exhibición, una representación binaria escalada puede ser utilizada, que almacena un número decimal mientras que un número entero binario-codificado y un exponente decimal firmado binario-codificado.2 se pueden representar como 2 × 10-1. Esta representación permite la multiplicación y la división rápidas, pero puede requerir la multiplicación por una energía de 10 durante la adición y la substracción de alinear los decimales. Es particularmente apropiado para los usos con un número fijo de lugares decimales, que no requieren el ajuste durante la adición y la substracción y no necesitan almacenar el exponente explícitamente.

La codificación de Chen-Ho proporciona una transformación boleana para convertir los grupos de tres dígitos BCD-codificados a y desde 10 valores de pedacito que se puedan codificar eficientemente en hardware con solamente 2 o 3 retardos de la puerta. El decimal comprimido es denso un esquema similar que los repartos más eficientemente y convenientemente con el caso donde no está un múltiplo el número de dígitos de 3.

Ver también

Código gris

.

  • Zenithic
  • Gmünd (district)
    Random links:Juan Edwin Sandys | Teorema de Banach-Alaoglu | Lista de guerras polacas | Fox de Paul | E200 anaranjado

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">