Codificación de datos de ALU

Hola compañeros. Hablando en general, es decir, para la mayoría de microprocesadores y microcontroladores (porque entiendo que quizás las diferentes marcas o diseños utilicen diferente codificación) ¿qué tipo de codificación utilizan para los números? es decir, pueden tratar a los números como binarios o como BCD codificado en binario.

Entiendo que si es BCD puede ser BCD gray, BCD aiken, exceso 3, etc. Pero en general BCD gray es para contadores. Así que cuando me refiero BCD me refiero a BCD natural.

Si se trata en binario común, los números van aumentando de dígitos y ahí habría la complicación que si el micro utliza registros de 8 bit, para representar el número 256 en adelante se necesitará otro registro. Pero tiene la ventaja que los circuitos sumadores y multiplicadores son más fáciles de hacer, es decir, para sumar basta un sumador completo, además de representar los números negativos con el complemento a 2; y para multiplicar basta el siguiente circuito.

11016771_10204560190903250_914449293_n.jpg


En cambio para BCD natural, con 4 bits alcanza para representar un dígito pero trae la complicación de que el circuito sumador es más complejo ya que si supera (en cuanto a su representación binaria) a 1010 hay que sumarle 6. Y no conozco un circuito multiplicador para bcd natural, me imagino que habría que sumar el número tantas veces, utilizando el registro acumulador.

¿Qué me dicen? ¿qué codificación es la más usada en los procesadores actuales?

Saludos.
 
Hola.

Tengo entendido que un procesador trabaja con números binarios para hacer cálculos que no vayan a mostrarse en una pantalla por ejemplo. Pero para mostrar una cantidad en una pantalla se pueden usar los datos BCD directamente o usar cantidades binarias y luego codificarlas a BCD desde la misma ALU.

Si no mal recuerdo, en números binarios usan el complemento a dos.

Salu2!
 
En general y por lo que yo se, la inmensa mayoria de los procesadores trabajan en binario. Algunos procesadores tienen instrucciones especiales o banderas para soportar BCD.

El usar complemento a dos o no es casi transparente, solo hay que tener en cuenta las banderas para ver como se interpretan los resultados en caso de overflow o underflow.
 
Atrás
Arriba