Вы находитесь на странице: 1из 6

1.2 Nmeros, Nmeros, Nmeros | Microcontro...

PRODUCTS

SHOP

BOOKS

LEARN

http://learn.mikroe.com/ebooks/microcontrolador...

DOCS

LIBSTOCK

FORUM

HELP DESK

Microcontroladores PIC Programacin en C con ejemplos

Tabla de
contenido

1.2 NMEROS, NMEROS, NMEROS

MIKROELEKTRONIKA

La matemtica es una gran ciencia! Todo es tan lgico y simple El universo de los nmeros se puede describir
con slo diez dgitos. No obstante, realmente tiene que ser as? Necesitamos exactamente esos 10 dgitos?
Por supuesto que no, es slo cuestin del hbito. Acurdese de las lecciones de la escuela. Por ejemplo, qu
significa el nmero 764? Cuatro unidades, seis decenas y siete centenas. Muy simple! Se podra expresar de
una forma ms desarrollada? Por supuesto que s: 4 + 60 + 700. An ms desarrollado? S: 4*1 + 6*10 + 7*100.
Podra este nmero parecer un poco ms cientfico? La respuesta es s otra vez: 4*100 + 6*101 + 7*102.
Qu significa esto realmente? Por qu utilizamos exactamente estos nmeros 100, 101 y 102 ? Por qu es
siempre el nmero 10? Es porque utilizamos 10 dgitos diferentes (0, 1, 28, 9). En otras palabras, es porque
utilizamos el sistema de numeracin en base 10, es decir el sistema de numeracin decimal.

SISTEMA DE NUMERACIN BINARIO


Qu pasara si utilizramos slo dos nmeros 0 y 1? Si slo pudiramos afirmar (1) o negar (0) que algo existe.
La respuesta es nada especial, seguiramos utilizando los mismos nmeros de la misma manera que utilizamos
hoy en da, no obstante ellos pareceran un poco diferentes. Por ejemplo: 11011010.Cuntas son realmente

1 de 6

20/01/17 15:22

1.2 Nmeros, Nmeros, Nmeros | Microcontro...

http://learn.mikroe.com/ebooks/microcontrolador...

11011010 pginas de un libro? Para entenderlo, siga la misma lgica como en el ejemplo anterior, pero en el
orden invertido. Tenga en cuenta que se trata de aritmtica con slo dos dgitos 0 y 1, es decir, del sistema de
numeracin en base 2 (sistema de numeracin binario).

Evidentemente, se trata del mismo nmero representado en dos sistemas de numeracin diferentes. La nica
diferencia entre estas dos representaciones yace en el nmero de dgitos necesarios para escribir un nmero. Un
dgito (2) se utiliza para escribir el nmero 2 en el sistema decimal, mientras que dos dgitos (1 y 0) se utilizan
para escribir aquel nmero en el sistema binario. Ahora est de acuerdo que hay 10 grupos de gente?
Bienvenido al mundo de la aritmtica binaria! Tiene alguna idea de dnde se utiliza?
Excepto en las condiciones de laboratorio estrictamente controladas, los circuitos electrnicos ms complicados
no pueden especificar con exactitud la diferencia entre dos magnitudes (dos valores de voltaje, por ejemplo), si
son demasiado pequeos (ms pequeos que unos pocos voltios). La razn son los ruidos elctricos y
fenmenos que se presentan dentro de lo que llamamos entorno de trabajo real (algunos ejemplos de estos
fenmenos son los cambios imprevisibles de la tensin de alimentacin, cambios de temperatura, tolerancia a los
valores de los componentes etc). Imagnese una computadora que opera sobre nmeros decimales al tratarlos
de la siguiente manera: 0=0V, 1=5V, 2=10V, 3=15V, 4=20V 9=45V!?
Alguien dijo bateras?
Una solucin mucho ms fcil es una lgica binaria donde 0 indica la ausencia de voltaje, mientras que 1 indica
la presencia de voltaje. Simplemente, es fcil de escribir 0 o 1 en vez de no hay voltaje o hay voltaje.
Mediante el cero lgico (0) y uno lgico (1) la electrnica se enfrenta perfectamente y realiza con facilidad todas
las operaciones aritmticas. Evidentemente, se trata de electrnica que en realidad aplica aritmtica en la que
todos los nmeros son representados con slo dos dgitos y donde slo es importante saber si hay voltaje o no.
Por supuesto, estamos hablando de electrnica digital.
SISTEMA DE NUMERACIN HEXADECIMAL
En el principio del desarrollo de las computadoras era evidente que a la gente le costaba mucho trabajar con
nmeros binarios. Por eso, se estableci un nuevo sistema de numeracin, que utilizaba 16 smbolos diferentes.
Es llamado el sistema de numeracin hexadecimal. Este sistema est compuesto de 10 dgitos a los que
estamos acostumbrados (0, 1, 2, 3, 9) y de seis letras del alfabeto A, B, C, D, E y F. Cul es el propsito de
esta combinacin aparentemente extraa? Basta con mirar cmo todo en la historia de los nmeros binarios

2 de 6

20/01/17 15:22

1.2 Nmeros, Nmeros, Nmeros | Microcontro...

http://learn.mikroe.com/ebooks/microcontrolador...

encaja perfectamente para lograr una mejor comprensin del tema.

El mayor nmero que puede ser representado con 4 dgitos binarios es el nmero 1111. Corresponde al nmero
15 en el sistema decimal. En el sistema hexadecimal ese nmero se representa con slo un dgito F. Es el mayor
nmero de un dgito en el sistema hexadecimal. Se da cuenta de la gran utilidad de estas equivalencias? El
mayor nmero escrito con ocho dgitos binarios es a la vez el mayor nmero de dos dgitos en el sistema
hexadecimal. Tenga en cuenta que una computadora utiliza nmeros binarios de 8 dgitos. Acaso se trata de
una casualidad?
CDIGO BCD
El cdigo BCD (Binary-Coded Decimal Cdigo binario decimal) es un cdigo binario utilizado para representar
a los nmeros decimales. Se utiliza para que los circuitos electrnicos puedan comunicarse con los perifricos
utilizando el sistema de numeracin decimal o bien utilizando el sistema binario dentro de su propio mundo.
Consiste en nmeros binarios de 4 dgitos que representan los primeros diez dgitos (0, 1, 2, 38, 9). Aunque
cuatro dgitos pueden hacer 16 combinaciones posibles en total, el cdigo BCD normalmente utiliza a las
primeras diez.
CONVERSIN DE SISTEMAS DE NMERACIN
El sistema de numeracin binario es el que utilizan los microcontroladores, el sistema decimal es el que nos
resulta ms comprensible, mientras que el sistema hexadecimal presenta un balance entre los dos. Por eso, es
muy importante aprender cmo convertir los nmeros de un sistema de numeracin a otro, por ejemplo, cmo
convertir una serie de ceros y unos a una forma de representacin comprensible para nosotros.
CONVERSIN DE NMEROS BINARIOS A DECIMALES
Los dgitos en un nmero binario tienen ponderaciones diferentes lo que depende de sus posiciones dentro del
nmero que estn representando. Adems, cada dgito puede ser 1 o 0, y su ponderacin se puede determinar
con facilidad al contar su posicin empezando por la derecha. Para hacer una conversin de un nmero binario a
decimal es necesario multiplicar las ponderaciones con los dgitos correspondientes (0 o 1) y sumar todos los
resultados. La magia de la conversin de un nmero binario a decimal funciona de maravilla Tiene duda?
Veamos el siguiente ejemplo:

Cabe destacar que es necesario utilizar slo dos dgitos binarios para representar a todos los nmeros decimales
de 0 a 3. Por consiguiente, para representar los nmeros de 0 a 7 es necesario utilizar tres dgitos binarios, para
representar los nmeros de 0 a 15 cuatro dgitos etc. Dicho de manera sencilla, el mayor nmero binario que
se puede representar utilizando n dgitos se obtiene al elevar la base 2 a la potencia n. Luego, al resultado se le
resta 1. Por ejemplo, si n=4:

3 de 6

20/01/17 15:22

1.2 Nmeros, Nmeros, Nmeros | Microcontro...

http://learn.mikroe.com/ebooks/microcontrolador...

24 1 = 16 1 = 15
Por consiguiente, al utilizar 4 dgitos binarios, es posible representar los nmeros decimales de 0 a 15, que son
16 valores diferentes en total.
CONVERSIN DE NMEROS HEXADECIMALES A DECIMALES
Para realizar una conversin de un nmero hexadecimal a decimal, cada dgito hexadecimal debe ser
multiplicado con el nmero 16 elevado al valor de su posicin. Por ejemplo:

CONVERSIN DE NMEROS HEXADECIMALES A BINARIOS


No es necesario realizar ningn clculo para convertir un nmero hexadecimal a binario. Los dgitos
hexadecimales se reemplazan simplemente por los cuatro dgitos binarios apropiados. Ya que el dgito
hexadecimal mximo es equivalente al nmero decimal 15, es necesario utilizar cuatro dgitos binarios para
representar un dgito hexadecimal. Por ejemplo:

MARCAR LOS NMEROS


El sistema de numeracin hexadecimal, junto con los sistemas binario y decimal, se consideran los ms
importantes para nosotros. Es fcil realizar una conversin de cualquier nmero hexadecimal a binario, adems
es fcil de recordarlo. Sin obstante, estas conversiones pueden provocar una confusin. Por ejemplo, qu
significa en realidad la sentencia: Es necesario contar 110 productos en una cadena de montaje? Dependiendo
del sistema en cuestin (binario, decimal o hexadecimal), el resultado podra ser 6, 110 o 272 productos,
respectivamente. Por consiguiente, para evitar equivocaciones, diferentes prefijos y sufijos se aaden
directamente a los nmeros. El prefijo $ o 0x as como el sufijo h marca los nmeros en el sistema hexadecimal.
Por ejemplo, el nmero hexadecimal 10AF se puede escribir as: $10AF, 0x10AF o 10AFh. De manera similar, los
nmeros binarios normalmente obtienen el sufijo % o 0B. Si un nmero no tiene ni sufijo ni prefijo se considera
decimal. Desafortunadamente, esta forma de marcar los nmeros no es estandarizada, por consiguiente
depende de la aplicacin concreta.
La siguiente es tabla comparativa que contiene los valores de nmeros 0-255 representados en tres sistemas de
numeracin diferentes. Esto es probablemente la manera ms fcil de entender lgica comn aplicada a todos
los sistemas de numeracin.

4 de 6

20/01/17 15:22

1.2 Nmeros, Nmeros, Nmeros | Microcontro...

http://learn.mikroe.com/ebooks/microcontrolador...

NMEROS NEGATIVOS
Como ya hemos visto, para escribir un nmero negativo en matemticas, basta con aadirle el prefijo - (signo
menos). Sin embargo, en la programacin, al acabarse el proceso de la compilacin, se quedan slo los
nmeros binarios, volvindose las cosas ms complicadas. Se utilizan slo dos dgitos 0 y 1, mientras que
todos los dems nmeros, smbolos y signos se forman por medio de las combinaciones de estos dos dgitos. En
el caso de los nmeros negativos, la solucin es la siguiente: En los nmeros negativos, el bit ms significativo
(el bit del extremo izquierdo) representa el signo del nmero (donde 0 ser positivo y 1 negativo). En el caso de
un nmero de 8 bits, para representar un valor numrico slo quedan 7 bits. De acuerdo a este tipo de
codificacin el nmero +127 es el mayor nmero positivo con signo que se puede representar con 8 bits.
Asimismo, hay cero (0) positivo y negativo (refirase a la tabla de la derecha). La siguiente pregunta sera:
Cmo es posible saber de qu nmero se trata? Por ejemplo, si ponemos el nmero 10000001, es -1 o 129?
No se preocupe, de eso se encarga el compilador. sta es la razn por la que se declaran variables al escribir el
programa. Bueno, de eso vamos a hablar a continuacin.

BIT
La teora dice que un bit es la unidad bsica de informacinVamos a olvidarlo por un momento y demostrar qu

5 de 6

20/01/17 15:22

1.2 Nmeros, Nmeros, Nmeros | Microcontro...

http://learn.mikroe.com/ebooks/microcontrolador...

es eso en la prctica. La respuesta es nada especial- un bit es un slo dgito binario. Similar a un sistema de
numeracin decimal en el que los dgitos de un nmero no tienen la misma ponderacin (por ejemplo, los dgitos
en el nmero 444 son los mismos pero tienen los valores diferentes), el significado de un bit depende de la
posicin que tiene en nmero binario. En este caso no tiene sentido hablar de unidades, centenas etc. en los
nmeros binarios, sus dgitos se denominan el bit cero (el primer bit a la derecha), el primer bit (el segundo bit a
la derecha) etc. Adems, ya que el sistema binario utiliza solamente dos dgitos (0 y 1), el valor de un bit puede
ser 0 o 1.
No se confunda si se encuentra con un bit que tiene el valor 4, 16 o 64. Son los valores representados en el
sistema decimal. Simplemente, nos hemos acostumbrado tanto a utilizar los nmeros decimales que estas
expresiones llegaron a ser comunes. Sera correcto decir por ejemplo, el valor del sexto bit en cualquier nmero
binario equivale al nmero decimal 64. Pero todos somos humanos y los viejos hbitos mueren difcilmente.
Adems, cmo le suena nmero uno-uno-cero-uno-cero?
BYTE
Un byte consiste en 8 bits colocados uno junto al otro. Si un bit es un dgito, es lgico que los bytes representen
los nmeros. Todas las operaciones matemticas se pueden realizar por medio de ellos, como por medio de los
nmeros decimales comunes. Similar a los dgitos de cualquier nmero, los dgitos de un byte no tienen el mismo
significado. El bit del extremo izquierdo tiene la mayor ponderacin, por eso es denominado el bit ms
significativo (MSB). El bit del extremo derecho tiene la menor ponderacin, por eso es denominado el bit menos
significativo (LSB). Puesto que los 8 dgitos de un byte se pueden combinar de 256 maneras diferentes, el mayor
nmero decimal que se puede representar con un byte es 255 (una combinacin representa un cero).
Un nibble o un cuarteto representa una mitad de byte. Dependiendo de la mitad del nmero en cuestin
(izquierda o derecha), se les denomina nibbles altos o bajos, respectivamente.

Usted seguramente ha pensado alguna vez en cmo es la electrnica dentro de un circuito integrado digital, un
microcontrolador o un microprocesador. Cmo son los circuitos que realizan las operaciones matemticas
complicadas y toman decisiones? Saba que sus esquemas, aparentemente complicadas consisten en slo
unos pocos elementos diferentes, denominados circuitos lgicos o compuertas lgicas?

1.2 Nmeros, Nmeros, Nmeros... por MikroElektronika se encuentra bajo una Licencia Creative Commons Atribucin 4.0
Internacional, excepto cuando se indique lo contrario.

6 de 6

20/01/17 15:22

Вам также может понравиться