En la pregunta, parece estar implícito que el ADC tarda más en devolver el valor en forma de complemento a 2 que en binario directo. Aunque este podría ser el caso en alguna implementación particular de un ADC, no es cierto en general (por ejemplo, la serie MSP430 de microcontroladores tiene un periférico ADC en el chip que informará del valor en binario directo o complemento a 2, pero tarda el mismo número de ciclos en ambos casos).
Una vez aclarado esto, la elección entre el complemento a 2 y el binario directo depende sobre todo de cómo funcionen los transductores y de cómo te guste procesar los datos.
En modo binario directo, el ADC le proporciona un número que representa la relación entre la magnitud de la cantidad analógica medida (prácticamente siempre tensión) y la cantidad de referencia a escala completa. Por ejemplo, un ADC de 10 bits puede devolver valores de 0 a 1023 (ambos inclusive). Si mide una tensión (digamos, 1,25 voltios) que es la mitad de la tensión de referencia del ADC (digamos, 2,50 voltios), el código binario que leerá será la mitad del valor máximo que podría leer, es decir, 512, o aproximadamente, sujeto al redondeo y a las no linealidades del ADC.
Por ejemplo, supongamos que tiene un transductor que informa de la cantidad de combustible para cohetes que hay en un depósito. 0V significa que el tanque está vacío y 2,5V voltios significa que está lleno. Así que sólo tienes que conectar el transductor a tu ADC, ¡y listo!
Pero fíjate que en el párrafo anterior no hay forma de medir tensiones negativas. ¿Qué pasaría si quisiéramos medir el flujo de combustible del cohete dentro y fuera del tanque (y tuviéramos un transductor para hacerlo)? El ADC no puede medir números negativos, así que tenemos un problema. Sin embargo, hay una forma fácil de falsearlo utilizando el modo de complemento a 2: En este caso, la salida del transductor se polariza para que el punto cero esté a medio camino entre las dos tensiones de referencia del ADC. En otras palabras, los flujos positivos están representados por tensiones entre 1,25V y 2,50V, y los flujos negativos están representados por 1,25V a 0V - por lo que los flujos en el tanque darán códigos ADC de 512 a 1023 y los flujos fuera de la gracias dará códigos de 511 a 0 (en formato binario recto).
Eso sí que es un inconveniente. Tenemos que restar 512 a cada medida antes de hacer nada con ella, lo que da números en el rango de -512 a +511. El punto del modo complemento a 2 es que ¡lo hace por ti!
Sin embargo, es posible que aún desee utilizar binario directo con un transductor que produzca resultados con signo. Por ejemplo, su transductor puede tener salidas diferenciales: En este caso, es preferible restar la salida invertida de la salida no invertida, por lo que no hay ninguna ventaja en utilizar el complemento a 2.
5 votos
El cumplido de dos es un código binario directo...
0 votos
"El álgebra se ejecuta en una máquina (el universo) que es complemento de dos" - HAKMEM 154 ( inwap.com/pdp10/hbaker/hakmem/hacks.html )
3 votos
¿Cuánto es 5 en complemento a dos? 101. ¿Cuánto es 5 en código binario directo? 101. ¿Qué es -5 en complemento a dos? 1...11111011. ¿Qué es -5 en código binario directo? Uhh...
0 votos
Parece un caso especial poco frecuente tener un ADC con salida negativa? ¿Qué significa eso de que la tensión medida es inferior a la referencia de baja tensión? ¿Y cómo se construye un ADC así? ¿Aproximación sucesiva con tapones que tienen una carga negativa...?
0 votos
Tenga en cuenta que hay dos diferente palabras, complEment y complIcIo . El tema aquí es de dos complEment aunque esos dos sean muy educados y a menudo digan cosas bonitas de ti.