Sie sind auf Seite 1von 24

3.

1 Aritmética de punto fijo


Un entero se puede representar empleando todos los bits de una palabra de
computadora, con la salvedad de que se debe reservar un bit para el signo. Por ejemplo,
en una máquina con longitud de palabra de 32 bits, los enteros están comprendidos entre
-(231 - 1) y 231 - 1 = 2147483647. Un número representado en formato entero es 'exacto'.
Las operaciones aritméticas entre números enteros son también 'exactas' siempre y
cuando:

1.
La solución no esté fuera del rango del número entero más grande o más
pequeño que se puede representar (generalmente con signo). En estos casos se
dice que se comete un error de desbordamiento por exceso o por defecto (en
inglés: Overflow y Underflow) y es necesario recurrir a técnicas de escalado para
llevar a cabo las operaciones.
2.
La división se interpreta que da lugar a un número entero, despreciando
cualquier resto.
Por estos motivos, la aritmética de punto fijo se emplea muy raramente en cálculos no
triviales.

3.2.1 Notación científica normalizada

En el sistema decimal, cualquier número real puede expresarse mediante la denominada


notación científica normalizada. Para expresar un número en notación científica
normalizada multiplicamos o dividimos por 10 tantas veces como sea necesario para
que todos los dígitos aparezcan a la derecha del punto decimal y de modo que el primer
dígito después del punto no sea cero. Por ejemplo:

En general, un número real x distinto de cero, se representa en notación científica


normalizada en la forma:

(17)

en donde r es un número tal que y n es un entero (positivo, negativo o


cero).

Exactamente del mismo modo podemos utilizar la notación científica en el sistema


binario. En este caso, tenemos que:
(18)

donde m es un entero. El número q se denomina mantisa y el entero m exponente. En


un ordenador binario tanto q como m estarán representados como números en base 2.
Puesto que la mantisa q está normalizada, en la representación binaria empleada se
cumplirá que:

3.2.2 Representación de los números en punto flotante


En un ordenador típico los números en punto flotante se representan de la manera
descrita en el apartado anterior, pero con ciertas restricciones sobre el número de dígitos
de q y m impuestas por la longitud de palabra disponible (es decir, el número de bits que
se van a emplear para almacenar un número). Para ilustrar este punto, consideraremos
un ordenador hipotético que denominaremos MARC-32 y que dispone de una longitud de
palabra de 32 bits (muy similar a la de muchos ordenadores actuales). Para representar
un número en punto flotante en el MARC-32, los bits se acomodan del siguiente modo:
Signo del número real x: 1 bit
Signo del exponente m: 1 bit
Exponente (entero |m|): 7 bits
Mantisa (número real |q|): 23 bits
En la mayoría de los cálculos en punto flotante las mantisas se normalizan, es decir, se
toman de forma que el bit más significativo (el primer bit) sea siempre '1'. Por lo tanto,
la mantisa q cumple siempre la ecuación (19).

Dado que la mantisa siempre se representa normalizada, el primer bit en q es siempre 1,


por lo que no es necesario almacenarlo proporcionando un bit significativo adicional.
Esta forma de almacenar un número en punto flotante se conoce con el nombre de
técnica del 'bit fantasma'.

Se dice que un número real expresado como aparece en la ecuación (18) y que satisface
la ecuación (19) tiene la forma de punto flotante normalizado. Si además puede
representarse exactamente con |m| ocupando 7 bits y |q| ocupando 24 bits, entonces es
un número de máquina en el MARC-323

La restricción de que |m| no requiera más de 7 bits significa que:

Ya que , la MARC-32 puede manejar números tan pequeños como 10-38 y


38
tan grandes como 10 . Este no es un intervalo de valores suficientemente generoso, por
lo que en muchos casos debemos recurrir a programas escritos en aritmética de doble
precisión e incluso de precisión extendida.
Como q debe representarse empleando no más de 24 bits significa que nuestros números
de máquina tienen una precisión limitada cercana a las siete cifras decimales, ya que el
bit menos significativo de la mantisa representa unidades de . Por tanto,
los números expresados mediante más de siete dígitos decimales serán objeto de
aproximación cuando se almacenen en el ordenador.

Por ejemplo: 0.5 representado en punto flotante en el MARC-32 (longitud de palabra de


32 bits) se almacena en la memoria del siguiente modo:

Ejemplo 5: Suponga un ordenador cuya notación de punto fijo consiste en palabras de


longitud 32 bits repartidas del siguiente modo: 1 bit para el signo, 15 bits para la parte
entera y 16 bits para la parte fraccionaria. Represente los números 26.32,
y 12542.29301 en base 2 empleando esta notación de punto fijo y notación de punto
flotante MARC-32 con 32 bits. Calcule el error de almacenamiento cometido en cada
caso.

Solución: El número 26.32 en binario se escribe del siguiente modo:

Empleando las representaciones comentadas, obtenemos:

Si expresamos el error como la diferencia entre el valor y el número realmente


almacenado en el ordenador, obtenemos:

En cuanto a los otros dos números, obtenemos:


Antes de entrar con detalle en la aritmética de los números en punto flotante, es
interesante notar una propiedad de estos números de especial importancia en los
cálculos numéricos y que hace referencia a su densidad en la línea real. Supongamos

que p, el número de bits de la mantisa, sea 24. En el intervalo (exponente f = 0)


es posible representar 224 números igualmente espaciados y separados por una distancia

1/224. De modo análogo, en cualquier intervalo hay 224 números


equiespaciados, pero su densidad en este caso es 2 /2 . Por ejemplo, entre 220 = 1048576
f 24

y 221 = 2097152 hay 224 = 16777216 números, pero el espaciado entre dos números

sucesivos es de sólo . De este hecho se deriva inmediatamente una regla práctica:


cuando es necesario comparar dos números en punto flotante relativamente grandes, es
siempre preferible comparar la diferencia relativa a la magnitud de los números. En la
figura (1) se representa gráficamente la separación entre dos números consecutivos en
función del exponente f en el rango f = [20,30].

Figure: Evolución de la separación entre dos


números consecutivos en función del exponente, f,
de la representación en punto flotante de un número
real.
[bb=55 60 455 410, clip=true,
scale=0.7]eps/expon

3.3.1 Números de máquina aproximados

Estamos interesados en estimar el error en que se incurre al aproximar un número real


positivo x mediante un número de máquina del MARC-32. Si representamos el número
mediante:
en donde cada ai es 0 ó 1 y el bit principal es a1 = 1. Un número de máquina se puede
obtener de dos formas:

• Truncamiento: descartando todos los bits excedentes . El número


resultante, x' es siempre menor que x (se encuentra a la izquierda de x en la recta
real).
• Redondeo por exceso: Aumentamos en una unidad el último bit remanente a24 y
después eliminamos el exceso de bits como en el caso anterior.

Todo lo anterior, aplicado al caso del MARC-32, se resume diciendo que si x es un


número real distinto de 0 dentro del intervalo de la máquina, entonces el número de
máquina x* más cercano a x satisface la desigualdad:

(20)

que se puede escribir de la siguiente forma:

Ejemplo 6: ¿Cómo se expresa en binario el número x = 2/3? ¿Cuáles son los números de
máquina x' y x'' próximos en el MARC-32?

El número 2/3 en binario se expresa como:

Los dos números de máquina próximos, cada uno con 24 bits, son:
x' =

x'' =

en donde x' se ha obtenido por truncamiento y x'' mediante redondeo por exceso.
Calculamos ahora las diferencias x - x' y x'' - x para estimar cual es el error cometido:

x - x' =
x'' - x =

Por tanto, el número más próximo es fl(x) = x'' y los errores de redondeo absoluto y
relativo son:

|fl(x) - x| =

= 2-25 < 2-24

3.3.2 Las operaciones básicas

Vamos a analizar el resultado de operar sobre dos números en punto flotante


normalizado de l-dígitos de longitud, x e y, que producen un resultado normalizado de l-
dígitos. Expresaremos esta operación como:

en donde op es +, -, ó . Supondremos que en cada caso la mantisa del resultado es


primero normalizada y después redondeada (operación que puede dar lugar a un
desbordamiento que requeriría renormalizar el número). El valor de la mantisa
redondeada a p bits, qr, se define como (de una forma más rigurosa que en el caso
anterior):

en donde la función redondeo por defecto es el mayor entero menor o igual a x y la

función redondeo por exceso es el menor entero mayor o igual a x. Para números
enteros, esta función se traduce en la bien conocida regla de sumar 1 en la posición p +
1. Teniendo en cuenta sólo la mantisa, redondear de este modo da lugar a un intervalo
máximo del error de:
(21)

y un error relativo máximo en el intervalo:

(22)
Analizaremos ahora el error generado por cada una de las operaciones básicas:

Multiplicación.
La operación de multiplicar dos números expresados en punto flotante implica
sumar los exponentes y multiplicar las mantisas. Si la mantisa resultante no está
normalizada, se recurre a renormalizar el resultado ajustando adecuadamente el
exponente. Después, es necesario redondear la mantisa a p bits. Para analizar el
error de esta operación supongamos dos números:

Tenemos entonces que el producto será:


xy = qx qy 2fx + fy

en donde el valor de la mantisa se encontrará en el rango:

ya que tanto x como y satisfacen la ecuación (19). Por tanto, la normalización


del producto qx qy implica un desplazamiento a la derecha de, como máximo, una
posición. La mantisa redondeada será entonces uno de estos dos posibles
valores:

en donde , que es el error de redondeo, cumple la ecuación (21). Tenemos


entonces:

en donde, de acuerdo con la ecuación (22), tenemos:

Por tanto, la cota del error relativo en la multiplicación es la misma que la que
surge por redondear la mantisa.
División.
Para llevar a cabo la división en punto flotante, se divide la mitad de la mantisa
del numerador por la mantisa del denominador (para evitar cocientes mayores de
la unidad), mientras que los exponentes se restan. Esto es:

Puesto que ambas mantisas satisfacen la ecuación (18), el valor del cociente
estará acotado entre los límites:

Aplicando un análisis similar al empleado en el caso de la multiplicación,


obtenemos:

en donde, de acuerdo con la ecuación (22), tenemos:

Es decir, la cota máxima del error relativo en la división, como en el caso


anterior, es la misma que la que surge por redondear la mantisa.
Adición y sustracción.
La operación de suma o resta se realiza del siguiente modo: se toma la mantisa
del operando de menor magnitud (supongamos que es y) y se desplaza fx - fy
posiciones a la derecha. La mantisa resultante es sumada (o restada) y el
resultado se normaliza y después se redondea. Es decir:

El análisis del error cometido en esta operación es más complejo que los
estudiados hasta ahora, por lo que no lo vamos a ver en detalle. Sin embargo, el
resultado final indica que la cota máxima del error cometido en la adición y la
sustracción viene dado por:
En conclusión, en todas las operaciones aritméticas elementales en punto flotante, el
error absoluto del resultado es no mayor de 1 en el bit menos significativo de la mantisa.

Sin embargo, los errores de redondeo se acumulan a medida que aumenta el número de
cálculos. Si en el proceso de calcular un valor se llevan a cabo N operaciones
aritméticas es posible obtener, en el mejor de los casos, un error de redondeo total del

4
orden de (que coincide con el caso en que los errores de redondeo están
aleatoriamente distribuidos, por lo que se produce una cancelación parcial).
Desafortunadamente, este error puede crecer muy rápidamente por dos motivos:

• Es muy frecuente que la regularidad del cálculo o las peculiaridades del


computador den lugar a que el error se acumule preferentemente en una

dirección; en cuyo caso el error de redondeo se puede aproximar a .


• En circunstancias especialmente desfavorables pueden existir operaciones que
incremente espectacularmente el error de redondeo. Generalmente, este
fenómeno se da cuando se calcula la diferencia entre dos números muy
próximos, dando lugar a un resultado en el cual los únicos bits significativos que
no se cancelan son los de menor orden (en los únicos en que difieren). Puede
parecer que la probabilidad de que se de dicha situación es pequeña, sin
embargo, algunas expresiones matemáticas fomentan este fenómeno.

Veamos con un ejemplo los problemas comentados anteriormente. Hay dos formas de
calcular las soluciones de la familiar ecuación cuadrática:

ax2 + bx + c = 0

que son:

(23)

(24)

Cualquiera de estas dos expresiones da problemas cuando a, c o ambos, son pequeños.


En estos casos, el valor del discriminante es muy próximo al valor de b:

por lo que la diferencia viene afectada de un error de redondeo


importante. En efecto, la ecuación (23) evalúa bien la raíz más grande en valor absoluto,
pero da pésimos resultados al estimar la raíz menor en valor absoluto. Por otra parte, la
ecuación (24) calcula bien la raíz menor (siempre en valor absoluto) pero no la raíz más
grande.

La solución del problema pasa por emplear una expresión mejor condicionada. En este
caso, es preferible calcular previamente:

(25)

y las dos raíces a partir de valor de q como:


(26)

Ejemplo: Calcular las raíces de la siguiente ecuación cuadrática:

ax2 + bx + c = 0

siendo:

Solución: Empleando la ecuación (23), obtenemos:

Sin embargo, empleando la expresión (24):

Por último, empleando las expresiones (25) y (26) se obtienen ambas soluciones
correctas:

Digital-to-analog converter, DAC, D/A). En electrónica, dispositivo que convierte una


entrada digital (generalmente binaria) a una señal analógica (generalmente voltaje o
carga eléctrica). Los conversores digital-analógico son interfaces entre el mundo
abstracto digital y la vida real analógica. La operación reversa es realizada por un
conversor analógico-digital (ADC).
Este tipo de conversores se utiliza en reproductores de sonido de todo tipo, dado que
actualmente las señales de audio son almacenadas en forma digital (por ejemplo, MP3 y
CDs), y para ser escuchadas a través de los parlantes, los datos se deben convertir a una
señal analógica. Los conversores digital-analogico también se pueden encontrar en
reproductores de CD, reproductores de música digital, tarjetas de sonidos de PC, etc.

Tabla de contenidos
[ocultar]

• 1 Introducción
• 2 Funcionamiento de un DAC
• 3 Véase también
• 4 Enlaces externos

• 5 Bibliografía

Introducción [editar]
El mundo real es básicamente analógico. La medida directa de una magnitud física
(sonido, temperatura, presión, etc.) es convertida por el correspondiente transductor
(sensor) a un valor de tensión analógica capaz de ser procesada por un sistema
electrónico.

Asimismo, el sistema electrónico proporcionará a los correspondientes efectores


(altavoces, motores, calefactores, etc.) una tensión analógica que determine su
actuación.

Los sistemas digitales emplean los valores numéricos codificados en binario, en


palabras digitales compuestas por ceros y unos; ello proporciona a los sistemas digitales
alta fiabilidad y precisión, conseguidas por la perfecta distinción física entre el 0 y el 1,
y una gran potencia de cálculo, derivada de la utilización de un sistema de numeración y
de la capacidad de integración de funciones booleanas de altísima complejidad.
En la frontera (interfase) entre las señales analógicas procedentes del medio físico o
destinadas a interferir con él y las señales digitales que procesa el sistema electrónico se
requieren conversores que pasen los valores numéricos del campo analógico al digital y
viceversa: conversores A/D y D/A.

Funcionamiento de un DAC [editar]


Mediante una suma ponderada de los dígitos de valor 1 se consigue, en forma muy
simple, un conversor digital-analógico rápido; la ponderación puede hacerse con una
serie de resistencias en progresión geométrica (cada una mitad de la anterior), lo cual
obliga a utilizar un amplio rango de resistencias, o bien mediante una red R-2R que
efectúa sucesivas divisiones por 2.

Puede convertirse una tensión en número binario utilizando un conversor opuesto D/A,
a través de la comparación entre la tensión de entrada y la proporcionada por dicho
conversor D/A aplicado a un generador de números binarios; se trata de aproximar el
número-resultado a aquel cuya correspondiente tensión analógica es igual a la de
entrada. La aproximación puede hacerse de unidad en unidad, mediante un simple
contador, o dígito a dígito mediante un circuito secuencial específico.

En los sistemas digitales la precisión viene dada por la utilización de dos símbolos 1/0 y
por la separación entre las tensiones que los representan. En cambio, en el tratamiento
de tensiones analógicas y, por tanto, en los conversores D/A y A/D, hemos de
preocuparnos de la precisión y de las diversas causas de error que le afectan:
desplazamiento del origen, linealidad, resolución,...

Se incluye en este capítulo, por completitud, la conversión tensión-frecuencia (V → f),


que puede servir también (añadiéndole un frecuencímetro) como conversión A/D.

Conceptualmente la conversión analógica-digital consiste en realizar la suma ponderada


de los diversos dígitos que configuran el número binario; el valor relativo de cada uno
de ellos viene dado por la correspondiente potencia de 2:

Esta suma puede realizarse mediante un sencillo circuito sumador con resistencias
ponderadas (según la relación R, R/2, R/4, R/8, R/16...) como el de la figura:

Supuesto que las tensiones que corresponden a los valores booleanos sean 0 y +V: Vo =
- (R' / R). (+V). (D0 + 2.D1 + 4.D2 + 8.D3 +... )

El último paréntesis de la expresión anterior expresa el valor del número binario ... D3
D2 D1 D0 y el factor inicial V.R'/R determina el valor de tensión asignado a cada
unidad; las resistencias R' y R permiten ajustar dicho valor a la tensión unitaria que se
desee.
Resulta un circuito sumamente sencillo para obtener una tensión analógica a partir de
las tensiones de los dígitos binarios del número que se desea convertir. Habida cuenta de
que la etapa sumadora es inversora, se obtendrá una tensión negativa, que puede
transformarse fácilmente en positiva mediante una segunda etapa amplificadora
inversora de ganancia unidad.

Las tensiones booleanas que presentan los diversos dígitos de un número binario
(salidas de los correspondientes terminales del circuito digital, generalmente salidas de
circuitos integrados) no ofrecen adecuada precisión: ambas tensiones, VoL ≈ 0 V y VoH
≈ +V, no son valores muy precisos.

Por ello, para aumentar la precisión del conversor, no se utilizan directamente las
tensiones de los dígitos a convertir sino una tensión única de referencia de alta
precisión, la cual se conecta (caso de dígito de valor 1) o no (valor 0) a las
correspondientes resistencias sumadoras mediante interruptores; además, para disminuir
los efectos capacitivos propios de los conmutadores y aumentar la velocidad de
conmutación, ésta se efectúa entre dos posiciones de igual tensión.

Imagen:Esqda.JPG
Esquema básico CAD con interruptures.

Cada conmutador se conecta hacia la entrada del amplificador cuando el valor del
correspondiente dígito es 1; en otro caso, se conecta directamente hacia la línea de 0 V.
Vo = - (R' / R). Vref.. (D0 + 2.D1 + 4.D2 + 8.D3 +... )

La precisión de este conversor depende de la precisión de las resistencias y de la tensión


de referencia así como de las características del amplificador operacional, especialmente
en lo relativo a tensión y corrientes de offset.

Ahora bien, esta red sumadora requiere resistencias de valores muy diferentes (por
ejemplo para 12 bits ha de llegarse desde R hasta R/4096), siendo extremadamente
difícil integrar tal diversidad de resistencias con la precisión necesaria. Por ello, resulta
preferible utilizar una red de resistencias R-2R en escalera o red divisora de tensión, que
posee la propiedad de que la resistencia de carga vista desde cualquier nudo de la red
hacia adelante es de idéntico valor: 2R.

Equivalencia resistiva.

Esta red de resistencias tiene la propiedad de que en cada nudo se encuentran en


paralelo sendas resistencias de igual valor 2R, una de las cuales es la equivalente del
resto del circuito; de forma que en cada nudo la intensidad de divide en dos partes
iguales y, de esta forma, cada nudo realiza una división de la tensión del nudo anterior
por 2.
Utilizando este tipo de red como sumadora, mediante conmutadores entre dos
posiciones (ambas con tensión de referencia 0 V) según el esquema siguiente, puede
obtenerse un conversor D/A que solamente utiliza dos valores de resistencias R y 2R.

Imagen:Esqrcada.JPG
Equivalencia resistiva.

La segunda etapa amplificadora sirve para que la tensión de salida sea positiva e
introduce la amplificación con el factor R'/R. Habida cuenta la sucesiva división de
tensiones e intensidades que se produce en cada nudo:

Con este tipo de red sumadora se configura una amplia gama de conversores D/A
integrados, de alta precisión, ya que es posible conseguir gran precisión en la red de
resistencias y en la tensión de referencia (utilizando un zener de alta precisión bien
estabilizado). Ello permite asegurar una fuerte linealidad en la conversión, con errores
inferiores a la mitad del paso en tensión correspondiente a una unidad.

Los conversores D/A más comunes de este tipo son de 8 y de 12 bits; un conversor de 8
bits permite una resolución de 256, es decir, para un intervalo de conversión 0-10 V a
cada unidad le corresponden aproximadamente 40 mV; la resolución de un conversor de
12 bits es de 4096 pasos, 2.5 mV.

En tecnología MOS los conmutadores se realizan mediante transistores NMOS


alternativos, entre cuyos terminales de puerta se conecta un inversor; se consiguen
tiempos de respuesta globales (desde que se presenta el valor digital, hasta que aparece
el correspondiente valor analógico) inferiores al microsegundo. Además, en
aplicaciones relativas a la generación de ondas, en las cuales la salida va siguiendo
sucesivamente valores próximos de la onda a generar, el tiempo de transición entre un
valor y otro resulta mucho menor, pudiendose alcanzar frecuencias superiores a 10
MHz.

En el caso bipolar se configuran generadores de intensidad ponderados, mediante redes


R-2R incluyendo transistores en las mismas; la configuración en amplificador
diferencial permite conmutar tales intensidades entre las dos posiciones con altas
velocidades de respuesta, consiguiéndose tiempos de conmutación del orden de 10 ns.
La utilización de una referencia de tensión negativa evita la necesidad de utilizar el
segundo amplificador inversor.

En todos los conversores D/A anteriormente considerados la tensión de salida es


proporcional al número binario aplicado a sus entradas: Vo = Vu.N, siendo Vu el paso
en tensión correspondiente a una unidad; a veces (por ejemplo en la generación digital
de ondas senoidales o de otras formas de onda) interesa otro tipo de funciones Vo = f(N)
distintas de la simple proporcionalidad.
Para ello puede efectuarse una transformación digital previa del número N a un número
N' tal que f(N) = Vu.N', de manera que un conversor D/A proporcional aplicado sobre
N' servirá para generar la tensión analógica deseada; la conversión intermedia (de N a
N') puede ser realizada por un conversor de código o codificador ROM.

Cuando no se requiere gran precisión en la tensión de salida, puede obtenerse


directamente la función Vo = f(N) mediante un multiplexor analógico (formado por
puertas de transmisión) controlado por el número N, según el esquema siguiente.

DAC con multiplexor.

A un valor concreto N le corresponderá una tensión Vo = R'.Vref./ RN, que puede ser
ajustada al valor deseado mediante la resistencia RN; caso de que la función f(N) adopte
también valores negativos, bastará conectar las resistencias correspondientes a una
tensión de referencia positiva +Vref

Conversor analógico-digital
De Wikipedia, la enciclopedia libre
Saltar a navegación, búsqueda

Un conversor (ó convertidor) analógico-digital (CAD), (ADC) es un dispositivo


electrónico capaz de convertir un voltaje determinado en un valor binario, en otras
palabras, este se encarga de transformar señales análogas a digitales.

Tabla de contenidos
[ocultar]

• 1 Funcionamiento
• 2 Tipos de conversores usuales
• 3 Véase también

• 4 Enlace de interés

Funcionamiento [editar]
Estos conversores poseen dos señales de entrada llamadas Vref+ y Vref- y determinan el
rango en el cual se convertirá una señal de entrada.

El dispositivo establece una relación entre su entrada (señal analógica) y su salida


(digital) dependiendo de su resolución. Esta resolución se puede saber, siempre y
cuando conozcamos el valor máximo que la entrada de información utiliza y la cantidad
máxima de la salida en dígitos binarios. A manera de ejemplo, el convertidor análogo
digital ADC0804 tiene la capacidad de convertir una muestra analógica de entre 0 y 5
voltios y su resolución es:

Resolución = valor analógico / (2^8)

Resolución = 5 V / 256

Resolución = 0.0195v o 19.5mv.

Resolucion = LSB

Lo anterior quiere decir que por cada 19.5 milivoltios que aumente el nivel de tensión
entre las entradas nomencladas como "Vref+" y "Vref-" que ofician de entrada al
conversor, éste aumentará en una unidad su salida (siempre sumando en forma binaria
bit a bit). Por ejemplo:

Entrada - Salida

0 V - 00000000

0.02 V - 00000001

0.04 V - 00000010

1 V - 00110011

(5 V-LSB) - 11111111

Tipos de conversores usuales [editar]


• De aproximaciones sucesivas: Es el empleado más comúnmente, apto para
aplicaciones que no necesitan grandes resoluciones ni velocidades. Debido a su
bajo coste se suele integrar en la mayoría de microcontroladores permitiendo
una solución de bajo coste en un único chip para numerosas aplicaciones de
control. El conversor realiza una búsqueda dicotómica del valor presente en la
entrada. Su principal carencia es el elevado tiempo de conversión necesario.
• Flash: este conversor destaca por su elevada velocidad de funcionamiento. Está
formado por una cadena de divisores de tensión y comparadores, realizando la
conversión de manera inmediata en una única operación. Su principal desventaja
es el elevado costo.
• Sigma-delta: Tienen una velocidad máxima de conversión baja pero a cambio
poseen una relación señal a ruido muy elevada, la mayor de todos.
• Otros tipos de conversores igualmente utilizados son: rampa, doble-rampa, etc

Conversión analógica-digital
De Wikipedia, la enciclopedia libre
(Redirigido desde Conversión analógica digital)
Saltar a navegación, búsqueda

Una conversión analógica-digital (CAD)(ó ADC) consiste en la transcripción de


señales analógicas en señales digitales, con el propósito de facilitar su procesamiento
(codificación, compresión, etc.) y hacer la señal resultante (la digital) más inmune al
ruido y otras interferencias a las que son más sensibles las señales analógicas.

Coma flotante
De Wikipedia, la enciclopedia libre
Saltar a navegación, búsqueda

Coma flotante o punto flotante es un método de representación de números reales que


se puede adaptar al orden de magnitud del valor a representar, usualmente trasladando la
coma decimal —mediante un exponente— hacia la posición de la primera cifra
significativa del valor.

De esta forma, con un número dado de dígitos representativos se obtiene mayor


precisión que con la coma fija, debido a que el valor de estos dígitos es siempre
significativo sea el que sea el orden de magnitud del número a representar. Debido a
esta adaptación, permite representar un rango mucho mayor de números (determinado
por los valores límite que puede tomar el exponente).

Su uso es especialmente interesante en la informática pues permite trabajar con números


decimales en rangos amplios, aunque también se usa el truncado de decimales.

Tabla de contenidos
[ocultar]

• 1 Representación
• 2 Sistema decimal
• 3 Sistema binario
• 4 Véase también

• 5 Enlaces externos

Representación [editar]

Representación binaria de números en coma flotante de doble precisión.

Una representación en coma flotante se compone de tres números (campos) que siguen
el siguiente patrón:

r = m.be

r: valor real del número a representar


m: mantisa o significando, dígitos significativos del número. El tamaño
máximo de este campo, usualmente fijo y limitado, determina la precisión de la
representación. Este campo está usualmente normalizado, es decir, su parte
entera sólo consta de un dígito (que será la primera cifra significativa del
número a representar).
b: base del sistema de representación (10 en sistema decimal, 8 en sistema octal,
2 en sistema binario, etc)
e: exponente, orden de magnitud del significando. El mínimo y máximo valor
posible del exponente determinan el rango de valores representables. Cabe
añadir que cuando e vale cero el valor real coincide con el significando.

En ciertos casos se usa como , con un cuarta mantisa, s, que tiene el


valor de 1 ó -1 según el signo del número (que se extrae del significando).

Sistema decimal [editar]


Artículo principal: Notación científica

Con el fin de optimizar la notación de cifras de numerosos dígitos, se acude al uso de


unidades múltiplos en el caso de ser un valor métrico o a la coma flotante en los demás.
Su uso es común en la física por los valores amplios e imprecisos que se acostumbran a
obtener. Por esta razón también se incluye cierta permisividad con la inexactitud del
valor. El error que puede surgir del empleo de este método se suele combinar al error
calculado de los resultados.

El método utilizado es mover la coma a la parte más significativa de la cifra, es decir,


variando el peso aritmético de los dígitos que lo componen. Para entender el significado
de los números en coma flotante, acudimos a ejemplos más evidentes del sistema
decimal:
• Supongamos que tenemos los siguientes números reales: 3135,07; 0,04576 y
69233704,063.
• Tomando de éstos sus 6 dígitos significativos, su conversión a notación de coma
flotante normalizada, en donde la coma decimal se sitúa a la derecha del primer
dígito, se escribirán 3,13507×103; 4,57600×10-2 y 6,92337×107.

Como se observa en estos ejemplos, la coma decimal se ha desplazado hacia la derecha


o hacia la izquierda para obtener la misma estructura en la notación. La pérdida de
información en el tercer caso es potencialmente negligible, su error es del 0,001%.

En notación de coma fija, con 4 dígitos para los enteros y 2 dígitos, para los decimales
se obtendría 3135,07; 0,04 y 3704,06 pudiendo perder información importante en
entornos no controlados de uso.

Sistema binario [editar]


Un valor real se puede extender a la izquierda o a la derecha de forma arbitraria. En la
informática se dispone de una cantidad limitada de dígitos para representar un valor, un
número real puede rebasar este rango con facilidad. La coma flotante proporciona un
cambio de ponderación que en este entorno técnico permite almacenar valores con
partes significativas de peso alejado a 0, esto es alejadas de la coma a su derecha o a su
izquierda. La limitación se halla cuando existe información de peso mucho menor al de
la parte significativa que es necesariamente truncado. Sin embargo, y según el uso, la
relevancia de esos datos puede ser despreciable, razón por la cual el método es
interesante pese a ser una potencial fuente de error.

Técnicamente no se puede colocar una coma en una cifra puesto que sólo se pueden
manejar valores de 0 y 1. Para resolver el problema se fuerza que la mantisa esté
normalizada, con lo cual se conoce la posición de la coma.

El bit de mayor peso define si hay signo negativo o no lo hay. Le siguen una serie de
bits que definen el exponente en defecto a la mitad del rango de dichos bits. El resto de
bits son la mantisa.

Emplearemos varios ejemplos en una notación de 16 bit para describir el método usado:

En este caso, el exponente ocupa 6 bits capaces de representar de 0 a 63, por lo


tanto, al exponente se le suma 31 en esta notación. La mantisa, al ser
normalizada, tendrá siempre un 1 en su parte entera. Este bit redundante se
denomina bit oculto o implícito y no se incluye en esta notación.

La notación genérica mencionada arriba para la coma flotante es pues respectivamente:


(con todos los valores expresados en representación binaria)

La notación en coma flotante es más lenta de procesar y menos precisa que la notación
en coma fija, pero dado un tamaño fijo de dígitos, permite un mayor rango en los
números que se pueden representar con ellos.

Debido a que las operaciones aritméticas que se realizan con números en coma flotante
son muy complejas de realizar, muchos sistemas destinan un procesador especial para la
realización específica de este tipo de operaciones, denominado Unidad de Coma
Flotante.

En ordenadores y calculadoras los números en coma flotante se suelen representar de


forma distinta. Donde se debería escribir se suele escribir (por ejemplo
, también escrito y ; otro
ejemplo: ) o incluso, sobre todo en calculadoras científicas: ,
aunque técnicamente es incorrecto (por ejemplo ).

Si esta información analógica se convierte a información digital, se podría


manipular sin problema. La información manipulada puede volver a tomar su
valor analógico si se desea con un DAC (convertidor Digital a Analógico)

Un DAC contiene normalmente una red resistiva divisora de tensión, que tiene una
tensión de referencia estable y fija como entrada.
Hay que definir que tan exacta será la conversión entre la señal analógica y la
digital, para lo cual se define la resolución que tendrá.

En la siguiente figura se representa un convertidor Digital - Analógico de 4 bits.


cada entrada digital puede ser sólo un "0" o un "1". D0 es el bit menos
significativo (LSB) y D3 es el más significativo (MSB). El voltaje de salida
analógica tendrá uno de 16 posibles valores dados por una de las 16
combinaciones de la entrada digital.

La resolución se define de dos maneras:

Primero se define el número máximo de bits de salida (la salida digital). Este dato
permite determinar el número máximo de combinaciones en la salida digital. Este
número máximo está dado por: 2n donde n es el número de bits.

También la resolución se entiende como el voltaje necesario (señal analógica) para


lograr que en la salida (señal digital) haya un cambio del bit menos
significativo.(LSB)

Para hallar la resolución se utiliza la siguiente fórmula: Resolución = VoFS / [2n


- 1]
Donde:
- n = número de bits del ADC
- VoFS = es el voltaje que hay que poner a la entrada del convertidor para
obtener una conversión máxima (todas las salidas son "1")

Ejemplo:
Se tiene un convertidos digital - analógico de 8 bits y el rango de voltaje de salida
de 0 a 5 voltios.

Con n = 8, hay una resolución de 2N = 256 o lo que es o mismo: El voltaje de


salida puede tener 256 valores distintos (contando el "0")

También: resolución = VoFS / [ 2n - 1] = 5 / 28-1 = 5 / 255 = 19.6 mV /


variación en el bit menos significativo

Con n = 4 bits, se consiguen 2n = 16 posibles combinaciones de entradas digitales

La salida analógica correspondiente a cada una de las 16 combinaciones


dependerá del voltaje de referencia que estemos usando, que a su vez dependerá
del voltaje máximo que es posible tener a la salida analógica.

Si el voltaje máximo es 10 Voltios, entonces el Vref. (voltaje de referencia) será


10 / 16 = 0.625 Voltios.
Si el voltaje máximo es 7 voltios, Vref = 7 / 16 = 0.4375 Voltios.

Se puede ver estos voltajes de referencia serán diferentes (menores) si se utiliza


un DAC de 8 o más bits. Con el de 8 bits se tienen 256 combinaciones en vez de
16. Esto significa que el voltaje máximo posible se divide en mas partes,
lográndose una mayor exactitud.

Si el Vref = 0.5 Voltios

Salida
Entrada digital
analógica
D3 D2 D1 D0 Voltios
0 0 0 0 0
0 0 0 1 0.5
0 0 1 0 1.0
0 0 1 1 1.5
0 1 0 0 2.0
0 1 0 1 2.5
0 1 1 0 3.0
0 1 1 1 3.5
1 0 0 0 4.0
1 0 0 1 4.5
1 0 1 0 5.0
1 0 1 1 5.5
1 1 0 0 6.0
1 1 0 1 6.5
1 1 1 0 7.0
1 1 1 1 7.5
Se puede ver que mientras más bits tenga el convertidor más exacta será la
conversión

Si se tiene diferentes tipos de DAC y todos ellos pueden tener una salida máxima
de 15 voltios, se puede ver que la resolución y exactitud de la salida analógica es
mayor cuando más bits tenga. Ver siguiente cuadro

# de bits del
Resolución
DAC
4 bits 15 voltios / 15 = 1Voltio
8 bits 15 voltios / 255 = 58.8 miliVoltios
16 bits 15 voltios / 65536 = 0.23 milivoltios
15 voltios / 4294967296 = 0.0000035
32 bits
milivoltios

Introducción

En el mundo real las señales analógicas varían constantemente, pueden variar


lentamente como la temperatura o muy rápidamente como una señal de audio.

Lo que sucede con las señales analógicas es que son muy difíciles de manipular,
guardar y después recuperar con exactitud.

Si esta información analógica se convierte a información digital, se podría


manipular sin problema.

La información manipulada puede volver a tomar su valor analógico si se desea


con un DAC (convertidor Digital a Analógico)

Exactitud - resolución de un CAD

Hay que definir con que exactitud será la conversión entre la señal analógica
y la digital, para lo cual se define la resolución que tendrá.

Primero se define el número máximo de bits de salida (la salida digital). Este dato
permite determinar el número máximo de combinaciones en la salida digital. Este
número máximo está dado por: 2n donde n es el número de bits.

También la resolución se entiende como el voltaje necesario (señal analógica)


para lograr que en la salida (señal digital) haya un cambio del bit menos
significativo.(LSB)

Para hallar la resolución se utiliza la fórmula: Resolución = ViFS/[2n - 1]


Donde:
- n = número de bits del ADC
- ViFS = es el voltaje que hay que poner a la entrada del convertidor para obtener
una conversión máxima (todas las salidas son "1")

Ejemplo # 1 de convertidor Analógico - Digital


Si se tiene un convertidor analógico - digital (CAD) de 4 bits y el rango de
voltaje de entrada es de 0 a 15 voltios

Con n = 4 y ViFS = 15 Voltios

La resolución será = ViFS / [2n -1] = 15 / [24 - 1] =


15 / 15 = 1 voltio / variación en el bit menos significativo

Esto significa que un cambio de 1 voltio en la entrada, causará un cambio del bit
menos significativo (LSB) a la salida. En este caso este bit es D0. Ver la siguiente
tabla. De esta manera se construye una tabla de que muestra la conversión para
este ADC:

Entrada
analógic Salida digital de 4 bits
a
Voltios D3 D2 D1 D0
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1
10 1 0 1 0
11 1 0 1 1
12 1 1 0 0
13 1 1 0 1
14 1 1 1 0
15 1 1 1 1

Ejemplo # 2 de convertidor Analógico - Digital

Un ADC de 8 bits genera solo "1" (las 8 salidas en 1), cuando en la entrada hay
un voltaje de 2.55 voltios (entrada analógica máxima).

La resolución es = ViFS / [2n -1] = 2.55 / [28 - 1] =


10 miliVoltios / variación en el bit menos significativo
Se puede ver que mientras más bits tenga el convertidor más exacta será
la conversión

Si se tiene una señal de valor máximo de 15 voltios y aplicamos esta señal


analógica por diferentes convertidores analógico digital se puede tener una
idea de la variación de la resolución con el aumento del número de bits del
convertidor

# de bits del
Resolución
ADC
4 bits 15 voltios / 15 = 1Voltio
8 bits 15 voltios / 255 = 58.8 miliVoltios
16 bits 15 voltios / 65536 = 0.23 milivoltios
15 voltios / 4294967296 = 0.0000035
32 bits
milivoltios

Esto significa que a mayor número de bits del ADC, un cambio más pequeño en la
magnitud analógica causará un cambio en el bit menos significativo (LSB) de la
salida, aumentando así la resolución

Enlaces relacionados
- Niveles lógicos
- Circuitos Lógicos
- Analógico - Digital

http://www.unicrom.com/tut_ADC_ejemplos.asp

Das könnte Ihnen auch gefallen