OT: Pregunta de C
Daniel Serpell
daniel_serpell en yahoo.com
Mie Nov 24 19:24:41 CLST 2004
Hola!
El Wed, Nov 24, 2004 at 03:58:17PM -0300, rodrigo ahumada escribio:
> >From: Alvaro Herrera <alvherre en dcc.uchile.cl>
> >
> >Que no corra en ENIAC no significa mucho ...
>
> aparte del ENIAC, ¿hay/hubo alguna otra maquina que no fuera binaria?
Depende de cómo definas "binario". En mi clasificación, desde lo
menos estándar (para C) hasta lo más estándar.
* Computadores analógicos.
Existieron por montones, no usan señales discretas, por lo
que no son binarios.
* Computadores que usan más de dos estados (p. ej. -1, 0 y 1) como
unidad básica.
No conozco ninguno fuera de laboratorio, producen problemas muy
entretenidos de interoperabilidad (ie, puedes usar 31 "trits" para
representar 33 bits o 41 "trits" para 64 bits, un texto normal en
latin-1 podría caber en 5 trits por caracter, pero no siempre...)
* Computadores que usan bits pero calculan en bases no-potencia de dos.
La mayoría de las calculadoras de bolsillo utilizan CPU's de 4 bits,
que interpretan estos bits como un dígito en BCD, y pueden realizar
operaciones diréctamente en BCD en estos dígitos.
El ENIAC pertenecería a este grupo (claro que la implementación es
bastante diferente de las calculadoras actuales, ya que utilizaba
10 bits para representar un dígito, en vez de 4).
Notar que _muchos_ microprocesadores incluían instrucciones para
utilizar modo BCD además del modo binario normal, ya sea de manera
transparente (6502, via un flag de la CPU) o no (8080 y sucesores,
como Z80 y los 80x86, con instrucciones para "ajustar" el resultado
a BCD).
* Computadores que calculan en bases potencia de dos, pero no en
bases del tipo 2^(2^n).
Hubo un tiempo en que muchos computadores pertenecían a esta clase,
con palabras de 9 a 36 bits.
* Computadores de 8, 16, 32, 64,... bits.
Son los más estándares actualmente. La mayoría de las CPU's pueden
además acceder a tipos de datos desde 8 bits para arriba
directamente desde la memoria, otros (ARM, MIPS, etc.) ven la
memoria como palabras de 32 o más bits.
Daniel.
Más información sobre la lista de distribución Linux