CODIGO+BCD

Código binario decimal
Binary-coded decimal  (BCD8421) es un sistema numérico usado en sistemas computacionales y electrónicos para codificar números enteros positivos y facilitar las operaciones aritméticas.

Fundamentos
En BCD cada cifra que representa un dígito decimal (0, 1,...8 y 9) se representa con su equivalente binario en cuatro bits (nibble o cuarteto ) (esto es así porque es el número de bits necesario para representar el nueve, el número más alto que se puede representar en BCD). En la siguiente tabla se muestran los códigos BCD más empleados:

Decimal || Natural ||  Aiken || 8 4 2 1 ||  Exceso 3 || 0 || 0000 || 0000 || 0000 || 0011 || 1 || 0001 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0001 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0001 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0100 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">2 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0010 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0010 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0010 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0101 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">3 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0011 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0011 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0011 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0110 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">4 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0100 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0100 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0100 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0111 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">5 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0101 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1011 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0101 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1000 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">6 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0110 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1100 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0110 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1001 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">7 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0111 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1101 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">0111 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1010 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">8 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1000 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1110 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1000 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1011 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">9 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1001 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1111 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1001 || <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">1100 ||

Como se observa con el BCD sólo se utilizan 10 de las 16 posibles combinaciones que se pueden formar con números de 4 <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">bits, por lo que el sistema pierde capacidad de representación, aunque se facilita la compresión de los números. Esto es porque el BCD sólo se usa para representar cifras no números en su totalidad. Esto quiere decir que para números de más de una cifra hacen falta dos números BCD para componerlo. A primera vista esto puede parecer más engorroso pero en realidad de cara al cálculo y la programación de <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">sistemas digitales es sumamente práctico ya que permite trabajar de hecho con números decimales ordinarios haciendo uso solo de los dos bits posibles que otorga un circuito digital típico ON (1) / OFF (0). Algo que como se verá resulta muy útil. Desde que los sistemas informáticos empezaron a almacenar los datos en conjuntos de ocho <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">bits (<span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">octeto ), hay dos maneras comunes de almacenar los datos BCD: <span style="font-family: Symbol; font-size: 10pt; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; mso-ansi-language: ES; msofareastfontfamily: Symbol; msobidifontsize: 12.0pt; msobidifontfamily: Symbol; msoansilanguage: ES; msolist: Ignore;">· <span style="font-family: 'Times New Roman', 'serif'; font-size: 12pt; mso-ansi-language: ES;">Omisión de los cuatro bits más significativos(como sucede en el EBCDIC ) <span style="font-family: Symbol; font-size: 10pt; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol; mso-ansi-language: ES; msofareastfontfamily: Symbol; msobidifontsize: 12.0pt; msobidifontfamily: Symbol; msoansilanguage: ES; msolist: Ignore;">· <span style="font-family: 'Times New Roman', 'serif'; font-size: 12pt; mso-ansi-language: ES;">Almacenamiento de dos datos BCD, es el denominado BCD "empaquetado", en el que también se incluye en primer lugar el signo, por lo general con 1100 para el + y 1101 para el -. De este modo, el número 127 sería representado como (11110001, 11110010, 11110111) en el EBCDIC o (00010010, 01111100) en el BCD empaquetado. El BCD sigue siendo ampliamente utilizado para almacenar datos, en aritmética binaria o en electrónica. Los números se pueden mostrar fácilmente en <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">visualizadores de siete segmentos enviando cada cuarteto BCD a un visualizador. La <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">BIOS de un <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">ordenador personal almacena generalmente la fecha y la hora en formato del BCD, probablemente por razones históricas se evitó la necesidad de su conversión en <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">ASCII. La ventaja del código BCD frente a la representación binaria clásica es que no hay límite para el tamaño de un número. Los números que se representan en formato <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">binario están generalmente limitados por el número mayor que se pueda representar con 8, 16, 32 o 64 bits. Por el contrario utilizando BCD añadir un nuevo dígito sólo implica añadir una nueva secuencia de 4 <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">bits.
 * <span style="font-family: 'Times New Roman', 'serif'; font-size: 12pt; mso-ansi-language: ES;">Una forma sencilla de calcular números en BCD, es sumando normalmente bit a bit, y si el conjunto de 4 bits sobrepasa el número 9, entonces se le suma un 6 (0110) en binario, para poder volver a empezar, como si hiciéramos un módulo al elemento sumante.

El BCD en electrónica
El BCD es muy común en sistemas electrónicos donde se debe mostrar un valor numérico, especialmente en los <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">sistemas digitales no programados (sin <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">microprocesador o micro controlador ). Utilizando el código BCD, se simplifica la manipulación de los datos numéricos que deben ser mostrados por ejemplo en un <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">visualizador de siete segmentos. Esto lleva a su vez una simplificación en el diseño físico del circuito (<span style="color: windowtext; mso-bidi-font-style: italic; msobidifontstyle: italic; msofareastfontfamily: 'Times New Roman'; msofareastthemefont: major-fareast;">hardware ). Si la cantidad numérica fuera almacenada y manipulada en binario natural, el circuito sería mucho más complejo que si se utiliza el BCD. == <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; color: windowtext; font-size: 12pt; font-weight: normal; mso-bidi-font-weight: bold; mso-ansi-language: ES;">IBM y el BCD <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; color: windowtext; font-size: 12pt; font-weight: normal; mso-bidi-font-weight: bold; mso-ansi-language: ES;">  <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; color: windowtext; font-size: 12pt; font-weight: normal; mso-ansi-language: ES;">[ editar ]   <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; color: windowtext; font-size: 12pt; font-weight: normal; mso-bidi-font-weight: bold; mso-ansi-language: ES;"> == <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">IBM utilizó los términos decimal codificado en binario y BCD para los <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">códigos binarios de seis bits con el que representaron números, letras mayúsculas y caracteres especiales. Una variante del BCD fue utilizada en la mayoría de las primeras computadoras de IBM, incluyendo <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">IBM1620 e <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">IBM 1400. Con la introducción de <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">System/360, el BCD fue substituido por el <span style="color: windowtext; mso-fareast-font-family: 'Times New Roman'; mso-fareast-theme-font: major-fareast;">EBCDIC de ocho bits. Las posiciones de los bits, en el BCD de seis bits, generalmente fueron etiquetadas como B, A, 8, 4, 2 y 1. Para codificar los dígitos numéricos, A y B eran cero. La letra A fue codificada como (B,A,1). <span style="font-family: 'Times New Roman', 'serif'; font-size: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-fareast-language: ES-MX; mso-ansi-language: ES;"> <span style="font-family: 'Arial', 'sans-serif'; color: black;"> REFERENCIA ELECTRONICA: PUBLICADO EN WIKIPEDIA http://es.wikipedia.org/wiki/C%C3%B3digo_binario_decimal, CONSULTADO jueves, 27 de agosto de 2009. <span style="font-family: 'Arial', 'sans-serif'; color: black;"> ALUMNO: ALBERTO ABRAHAM MERCADO CRUZ. INGENIERIA EN COMPUTACION 5TO SEMESTRE. UNIVERSIDAD MARISTA DE QUERÉTARO. 27/08/09 <span style="line-height: 115%; font-family: 'Times New Roman', 'serif'; font-size: 12pt;">