Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Rafael Barzanallana
Divulgacin
Noticias informtica
Planeta informtica
Ciencia en general
Planeta Ciencia
Fsica
Planeta medicina
Criminologa
Inicio
Contacte
Introduccin
Cdigos de entrada/salida
Sistemas de numeracin ms usuales
Representacin interna de la informacin
Deteccin de errores en la informacin codificada
5.1 Introduccin
Un ordenador es una mquina que procesa informacin. La ejecucin de una tarea implica la realizacin de
unos tratamientos, segn especifica un conjunto ordenado de instrucciones (es decir, un programa) sobre unos datos.
Para que el ordenador ejecute un programa es necesario darle informacin de dos tipos:
Uno de los aspectos ms importantes relacionado con la informacin, es cmo representarla. Normalmente se le
da al ordenador en la forma usual escrita que utilizan los humanos, es decir, con ayuda de un alfabeto o conjunto de
smbolos, los caracteres.
Veremos cmo estos caracteres usados en la representacin externa son representables en los ordenadores. Este
paso de una representacin a otra se denomina codificacin y el proceso inverso decodificacin.
www.um.es/docencia/barzana/II/Ii05.html 2/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Nivel de representacin externa: usada por las personas e inadecuada para el ordenador
Nivel de representacin interna: adecuada al ordenador y no inteligible directamente por el ser humano.
Los elementos bsicos que constituyen un ordenador son de naturaleza binaria, ya que slo pueden adoptar dos
valores, 0 y 1 (corresponden a dos niveles de tensin, dos valores de corriente, dos situaciones de una lmpara... ).
Al tener que traducir toda la informacin suministrada a ceros y unos es necesario establecer una correspondencia
entre el conjunto de todos los caracteres:
y el conjunto binario:
{0, 1}n
de forma que a cada elemento del primero le corresponda un elemento distinto del segundo.
Estos cdigos de transformacin se denominan cdigos entrada/salida (E/S) o externos y se pueden definir de
forma arbitraria. Las operaciones aritmticas con datos numricos se suelen realizar en una representacin ms
adecuada para este objetivo que la del cdigo de E/S. Por ello en el propio ordenador se efecta una
transformacin entre cdigos binarios, obtenindose una representacin fundamentada en el sistema de
numeracin en base dos, que al ser una representacin numrica posicional es muy apta para realizar
operaciones aritmticas.
Los cdigos de E/S o externos son cdigos que asocian a cada carcter una combinacin de bit. En otras
palabras, un cdigo de E/S es una correspondencia entre los conjuntos:
Si se usa un nmero fijo, n, de bit para codificar los smbolos de A, el valor mnimo de n depender del
nmero m de elementos de A. As:
Con 2 bit (n=2) podemos hacer 4 combinaciones distintas y se pueden codificar hasta 4 smbolos (m=4)
distintos
Con 3 bit (n=3) podemos hacer 8 combinaciones distintas y se pueden codificar hasta 8 smbolos (m=8)
distintos
Con 4 bit (n=4) podemos realizar 16 combinaciones dise pueden codificar hasta 16 smbolos (m=16) distintos
....
Con n bit pueden codificarse m = 2n smbolos distintos.
www.um.es/docencia/barzana/II/Ii05.html 3/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
0 0000 0000
1 1000 0001
2 0100 1001
3 1100 1000
4 0010 0101
5 1010 0100
6 0110 1100
7 1110 1101
8 0001 0011
9 1001 0010
Pueden hacerse codificaciones con ms bit de los necesarios; es decir, podramos establecer cdigos de E/S de
forma totalmente aleatoria. Obviamente existen cdigos normalizados que suelen ser utilizados por los constructores
de ordenadores, son conocidos como:
Usualmente este cdigo utiliza 6 bit, con lo que se pueden representar, m = 26 = 64 caracteres. A veces se aade a
su izquierda un bit adicional para verificar posibles errores en la transmisin del cdigo (tema que se ver ms
adelante) de forma que el carcter queda representado por n = 7 bit.
bit de verificacin
6 5 4 3 2 1 0
Los bit 4, 5 son conocidos como bit de zona. Los bit de zona indican el tipo de carcter representado. Ejemplo: 00
para los numricos. Los bit 0, 1, 2, 3 son conocidos como bit de posicin, que coinciden para los caracteres
numricos con la representacin en binario natural y para el 0 con la representacin del 10.
Utiliza n = 8 para representar cada carcter, pudiendo codificar hasta m = 28 = 256 smbolos distintos.
www.um.es/docencia/barzana/II/Ii05.html 4/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Utiliza 7 bit y es de los ms utilizados. Normalmente se incluye un octavo bit para detectar posibles errores de
transmisin o grabacin. Si el octavo bit se emplea para representar ms caracteres como letras griegas y
smbolos semigrficos, se tiene el denominado ASCII extendido, usado en el PC de IBM y compatibles.
CODIGO ANSI (American National Standards Institute - Instituto Nacional Americano de Estndares)
El estndar ANSI especifica una serie de secuencias de escape, que hacen que el monitor se comporte de distintas
formas. Por ejemplo, una secuencia de escape limpia la pantalla, mientras que otra hace que los siguientes caracteres se
inviertan.
Los ordenadores suelen efectuar las operaciones aritmticas utilizando una representacin para los datos
numricos basada en el sistema de numeracin en base 2 (binario natural). Tambin se utilizan los sistemas de
numeracin octal y hexadecimal, para obtener cdigos intermedios. Un nmero expresado en uno de estos
cdigos puede transformarse a binario y viceversa.
Seguidamente se comentan los sistemas de numeracin que distintas culturas han usado a lo largo
de la Historia
o Egipcio
o Griego
Sistemas de Numeracin Hbridos
o Chino
Sistemas de Numeracin Posicionales
o Babilnico
o Maya
Cuando los hombres empezaron a contar usaron los dedos, guigarros, marcas en bastones, nudos en
una cuerda y algunas otras formas para ir pasando de un nmero al siguiente. A medida que la
cantidad crece se hace necesario un sistema de representacin ms prctico.
En diferentes partes del mundo y en distintas pocas se lleg a la misma solucin, cuando se
alcanza un determinado nmero se hace una marca distinta que los representa a todos ellos. Este
nmero es la base. Se sigue aadiendo unidades hasta que se vuelve a alcanzar por segunda vez
www.um.es/docencia/barzana/II/Ii05.html 5/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
el nmero anterior y se aade otra marca de la segunda clase. Cuando se alcanza un nmero
determinado (que puede ser diferente del anterior constituyendo la base auxiliar) de estas unidades de
segundo orden, las decenas en caso de base 10, se aade una de tercer orden y as
sucesivamente.
La base que ms se ha utilizado a lo largo de la historia es 10 segn todas las apariencias por ser
ese el nmero de dedos con los que contamos. Hay alguna excepcin notable como son las
numeracin babilnica que usaba 10 y 60 como bases y la numeracin maya que usaba 20 y 5
aunque con alguna irregularidad.
Desde hace 5000 aos la gran mayora de las civilizaciones han contado en unidades, decenas,
centenas, millares etc. es decir de la misma forma que seguimos hacindolo hoy. Sin embargo la
forma de escribir los nmeros ha sido muy diversa y muchos pueblos han visto impedido su avance
cientfico por no disponer de un sistema eficaz que permitiese el clculo.
Casi todos los sistemas utilizados representan con exactitud los nmeros enteros, aunque en algunos
pueden confundirse unos nmeros con otros, pero muchos de ellos no son capaces de representar
grandes cantidades, y otros requieren tal cantidad de smbolos que los hace poco prcticos.
Pero sobre todo no permiten en general efectuar operaciones tan sencillas como la multiplicacin,
requiriendo procedimientos muy complicados que slo estaban al alcance de unos pocos iniciados.
De hecho cuando se empez a utilizar en Europa el sistema de numeracin actual, los abaquistas,
los profesionales del clculo se opusieron con las ms peregrinas razones, entre ellas la de que
siendo el clculo algo complicado en s mismo, tendra que ser un metodo diablico aquel
que permitiese efectuar las operaciones de forma tan sencilla.
El sistema actual fue inventado por los hinds y transmitido a Europa por los rabes. Del origen
hind del sistema hay pruebas documentales ms que suficientes, entre ellas la opinin de
Leonardo de Pisa (Fibonacci) que fue uno de los indroductores del nuevo sistema en la Europa de
1200. El gran mrito fue la introduccin del concepto y smbolo del cero, lo que permite un
sistema en el que slo diez simbolos puedan representar cualquier nmero por grande que sea y
simplificar la forma de efectuar las operaciones.
Los sistemas aditivos son aquellos que acumulan los simbolos de todas las unidades, decenas... como
sean necesarios hasta completar el nmero. Una de sus caractersticas es por tanto que se
pueden poner los smbolos en cualquier orden, aunque en general se ha preferido una determinada
disposicin. Han sido de este tipo las numeraciones egipcia, sumeria (de base 60), hitita, cretense,
azteca (de base 20), romana y las alfabticas de los griegos, armenios, judios y rabes.
Desde el tercer milenio a.n.e. los egipcios usaron un sistema deescribir los nmeros en base diez
utilizando los geroglficos para representar los distintos rdenes de unidades. Se usaban tantos de
cada uno cmo fuera necesario y se podian escribir indistintamente de izquierda a derecha, al
revs o de arriba abajo, cambiando la orientacin de las figuras segn el caso. Al ser
indiferente el orden se escriban a veces segn criterios estticos, y solan ir
www.um.es/docencia/barzana/II/Ii05.html 6/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
En estos sistemas de escritura los grupos de signos adquirieron una forma propia, y asi se introdujeron
smbolos particulares para 20, 30....90....200, 300.....900, 2000, 3000...... con lo que disminuye
el nmero de signos necesarios para escribir una cifra.
El primer sitema de numeracin griego se desarroll hacia el 600 a.n.e. Era un sistema de base
decimal que usaba unos smbolos para representar esas cantidades. Se utilizaban tantas de ellas
como fuera necesario segn el principio de las numeraciones aditivas. Para representar la unidad y
los nmeros hasta el cuatro se usaban trazos verticales. Para el cinco, 10 y 100 las letras
correspondientes a la inicial de la palabra cinco (pente), diez (deka) y mil (khiloi). Por este motivo se
llama a este sistema acrofnico.
Los smbolos de 50, 500 y 5000 se obtienen aadiendo el signo de 10, 100 y 1000 al de cinco,
usando un principio multiplicativo. Progresivamente este sistema tico fue reemplazado por el
jnico, que empleaba las 24 letras del alfabeto griego junto con algunos otros smbolos. De esta
forma los nmeros parecen palabras, ya que estn compuestos por letras, y a su vez las palabras
tienen un valor numrico, basta sumar las cifras que corresponden a las letras que las componen.
Esta circunstancia hizo aparecer una nueva suerte de disciplina mgica que estudiaba la relacin
entre los nmeros y las palabras. En algunas sociedades como la juda y la rabe, que
utilizaban un sistema similar, el estudio de esta relacin ha tenido una gran importancia y ha
constituido una disciplina aparte: la kbala, que persigue fines msticos y adivinatorios.
En estos sistemas se combina el principio aditivo con el multiplicativo. Si para representar 500 los
sistemas aditivos recurren a cinco representaciones de 100, los hbridos utilizan la combinacin
del 5 y el 100. Pero siguen acumulando estas combinaciones de signos para los nmeros ms
complejos. Por lo tanto sigue siendo innecesario un smbolo para el 0. Para representar el 703 se
usa la combinacion del 7 y el 100 seguida del 3.
El orden en la escritura de las cifras es ahora fundamental para evitar confusiones, se dan as los
pasos para llegar al sistema posicional, ya que si los signos del 10, 100 etc se repiten siempre en los
mismos lugares, pronto alguien piensa en suprimirlos, dndolos por supuestos y se escriben slo
las cifras correspondientes a las decenas, centenas etc. .Pero para ello es necesario un cero, algo que
indique que algn orden de magnitud est vaco y no se confundan el 307 con 370, 3070 ...
Adems del chino clsico han sido sistemas de este tipo el asirio, arameo, etope y algunos del
subcontinente hind cmo el tamil, el malayalam y el cingals.
La forma clsica de escritura de los nmeros en China se empez a usar desde el 1500 A.N.E.
aproximadamente. Es un sistema decimal estricto que usa las unidades y los distintas potencias de 10.
Utiliza ideogramas y usa la combinacin de los nmeros hasta el diez con la decena, centena,
millar y decena de millar para segn el principio multiplicativo representar 50, 700 3000. El
orden de escritura se hace fundamental,ya que 5 10 7 igual podra representar 57 que 75.
www.um.es/docencia/barzana/II/Ii05.html 7/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Aparte de esta forma que podramos llamar cannica se usaron otras. Para los documento
importantes se usaba una grafa ms complicada con objeto de evitar falsificaciones y errores. En
los sellos se escriba de forma ms estilizada y lineal y an se usaban hasta dos grafas
diferentes en usos domsticos y comerciales, aparte de las variantes regionales. Los eruditos chinos
por su parte desarrollaron un sistema posicional muy parecido al actual que desde que incorpor el
cero por influencia india en siglo VIII en nada se diferencia de este.
Mucho ms efectivos que los sitemas anteriores son los posicionales. En ellos la posicin de una
cifra nos dice si son decenas, centenas ... o en general la potencia de la base correspondiente. Slo
tres culturas adems de la india lograron desarrollar un sistema de este tipo. Babilonios, chinos y
mayas en distintas pocas llegaron al mismo principio. La ausencia del cero impidi a los chinos
un desarrollo completo hasta la intraduccin del mismo. Los sistemas babilnico y maya no eran
prcticos para operar porque no disponan de simbolos particulares para los dgitos, usando
para representarlos una acumulacin del signo de la unidad y la decena. El hecho que sus bases
fuese 60 y 20 respectivamente no hubiese representado en principio nign obstculo. Los mayas
por su parte cometan una irregularidad a partir de las unidades de tercer orden, ya que detrs
de las veintenas no usaban 20x20=400 sino 20x18=360 para adecuar los nmeros al calendario,
una de sus mayores preocupaciones culturales.
Fueron los hindes antes del siglo VII los que idearon el sistema tal y como hoy lo conocemos, sin
mas que un cambio en la forma en la que escribimos los nueve dgitos y el cero. Aunque con
frecuencia nos referimos a nuestro sistema de numeracin cmo rabe, las pruebas
arqueolgicas y documentales demuestran el uso del cero tanto en posiciones intermedias como
finales se origin en India. Los rabes transmitieron esta forma de representar los nmeros y
sobre todo el clculo asociado a ellas, aunque tardaron siglos en ser usadas y aceptadas. Una vez
ms se produjo una gran resistencia a algo por el mero hecho de ser nuevo o ajeno, aunque sus
ventajas eran evidentes. Sin esta forma eficaz de numerar y efectuar clculos dificilmente la ciencia
hubiese podido avanzar.
Los mayas idearon un sistema de base 20 con el 5 cmo base auxiliar. La unidad se representaba
por un punto. Dos, tres, y cuatro puntos servan para 2, 3 y 4. El 5 era una raya horizontal, a la que
seaadan los puntos necesarios para representar 6, 7, 8 y 9. Para el 10 se usaban dos rayas, y
de la misma forma se contina hasta el 20, con cuatro rayas. Hasta aqu parece ser un sistema de
base 5 aditivo, pero en realidad, considerados cada uno un solo signo, estos smbolos constituyen
www.um.es/docencia/barzana/II/Ii05.html 8/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
las cfras de un sistema de base 20, en el que hay que multiplicar el valor de cada cifra por 1, 20,
20x20, 20x20x20 ... segn el lugar que ocupe, y sumar el resultado. Es por tanto un sistema
posicional que se escribe a arriba abajo, empezando por el orden de magnitud mayor.
Al tener cada cifra un valor relativo segn el lugar que ocupa, la presencia de un signo para el cero,
con el que indicar la ausencia de unidades de algn orden, se hace imprescindible y los mayas lo
usaron, aunque no parece haberles interesado el concepto de cantidad nula. Cmo los babilonios lo
usaron simplemente para indicar la ausencia de otro nmero.
Pero los cientficos mayas eran a la vez sacerdotes ocupados en la observacin astronmica y
para expresar los nmero correspondientes a las fechas usaron unas unidades de tercer orden
irregulares para la base 20. As la cifra que ocupaba el tercer lugar desde abajo se multiplicaba por
20x18=360 para completar una cifra muy prxima a la duracin de un ao.
Al romperse la unidad del sistema ste se hace poco prctico para el clculo y aunque los
conocimiento astronmicos y de otro tipo fueron notables los mayas no desarrollaron una
matemtica ms all del calendario
Se define un sistema de numeracin: como el conjunto de smbolos y reglas que se utilizan para la
representacin de cantidades. En ellos existe un elemento caracterstico que define el sistema y se
denomina base, siendo sta el nmero de smbolos que se utilizan para la representacin.
Un sistema de numeracin en base "b" utiliza para representar los nmeros un alfabeto compuesto por b
smbolos o cifras. As todo nmero se expresa por un conjunto de cifras, teniendo cada una de ellas dentro del
nmero un valor que depende:
De la cifra en s
De la posicin que ocupe dentro del nmero
En el sistema de numeracin decimal (base 10), que habitualmente se utiliza, b = 10 y el alfabeto por tanto, est
constituido por 10 smbolos: {0, 1, 2..., 9}
3278.52
www.um.es/docencia/barzana/II/Ii05.html 9/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Posicin 0 Peso b0
Posicin 1 Peso b1
Posicin 2 Peso b2
Posicin 3 Peso b3
....
Posicin -1 Peso b-1
Posicin -2 Peso b-2
.....
Ejemplo en base 8:
El sistema de numeracin en base dos, fue introducido por Gottfried Wilhelm Leibniz (1646-1716) en el siglo XVII,
siendo el ms adecuado para usar en las mquinas electrnicas, debido a que utilizan esencialmente sistemas de
dos estados, encendido y apagado. En el sistema binario los datos se representan en un sistema que slo admite dos
estados, 0 y 1.
Las operaciones aritmticas se suelen realizar usando una representacin de datos y resultados en binario natural.
www.um.es/docencia/barzana/II/Ii05.html 10/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Una muestra de los nmeros enteros binarios que se pueden formar con 3 bit y que corresponden a las cifras
decimales {0, ...,7} es:
Se puede transformar un nmero binario a decimal sin ms que usar la expresin vista anteriormente:
Ejemplo:
a) La parte entera del nuevo nmero (binario) se obtiene efectuando divisiones enteras (sin obtener decimales) por
dos, de la parte entera del nmero decimal de partida y de los cocientes que sucesivamente se vayan obteniendo. Los
restos de estas divisiones y el ltimo cociente (que sern siempre ceros y unos) son las cifras binarias. El ltimo
cociente ser el bit ms significativo y el primer resto el bit menos significativo (ms a la derecha).
Ejemplo:
26)10 es en binario:
26 | 2_
0 13 | 2_
1 6 | 2_
0 3 |2_
1 1
www.um.es/docencia/barzana/II/Ii05.html 11/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
26)10 = 11010)2
b) La parte fraccionaria del nmero binario se obtiene multiplicando por 2 sucesivamente la parte fraccionaria del
nmero decimal de partida y las partes fraccionarias que se van obteniendo en los productos sucesivos. El nmero
binario se forma con las partes enteras (que sern ceros y unos) de los productos obtenidos.
Ejemplo:
0.1875)10 = 0.0011)2
Ejemplo:
a) Parte entera:
74 | 2_
0 37 | 2__
1 18 | 2__
0 9 | 2_
1 4 | 2__
0 2 | 2__
0 1
b) Parte fraccionaria:
Es decir:
74.423)10 = 1001010.01101...)2
www.um.es/docencia/barzana/II/Ii05.html 12/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
14/ 2= 7 sobran 0
7 / 2= 3 sobran 1
3 / 2= 1 sobran 1
1 / 2 =0 sobran 1
c0 b c1 r1
7231
c1 b c2 r2
3211
c2 b c3 r3
1201
Hasta donde dejar de hacer divisiones? Hasta que c[i] se haga cero, en
este caso c3=0. Y por lo tanto ya terminamos.
co b co ro
c1-1 b c1 r1
c2-1 b c2 r2
c[i]=c[i-1]/b;
r[i]=fmod(c[i-1],b)
www.um.es/docencia/barzana/II/Ii05.html 13/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
El fmod saca el residuo de la division(a,b) a/b= residuo.
hacemos otro for para el subindice de r[i] desde i=4 hasta i=0
printf("%d", r[i]);
#include <stdio.h>
#include <conio.h>
#include <math.h>
int c[50], r[50]; /* es mejor poner ms de lo necesario */
int i,b;
main()
{
clrscr();
/* Datos */
b=2;
c[0]= 14;
i=1;
/* conversion */
for(;;)
{ c[i]= c[i-1]/b;
r[i]= fmod(c[i-1],b);
if (c[i]==0) break;
i=i+1;
}
for(;;) /* impresin de resultado de atrs para adelante */
{
if (i==0) break;
printf(" %d",r[i]);
i=i-1;
}
Una variable binaria puede representar, una cifra de un nmero en el sistema de numeracin en base dos. Las
operaciones aritmticas bsicas con variables binarias naturales son la suma, resta, multiplicacin y divisin.
Estas operaciones son anlogas a las realizadas en decimal pero usando ceros y unos.
www.um.es/docencia/barzana/II/Ii05.html 14/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Suma aritmtica
A B A+B
0 0 0
0 1 1
1 0 1
1 1 0 y llevo 1
Ejemplo:
Las operaciones lgicas o booleanas con variables binarias son la suma lgica (+), llamada tambin funcin
OR, el producto lgico (llamado tambin AND y la complementacin (-) o negacin o NOT.
www.um.es/docencia/barzana/II/Ii05.html 15/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Es frecuente tambin la utilizacin de las operaciones combinadas como NAND (AND y NOT) y NOR (OR y
NOT).
Las tablas son las siguientes:
NAND NOR
- A B A+B - (A + B)
A B A * B
(A*B)
0 0 0 1
0 0 0 1
0 1 1 0
0 1 0 1
1 0 1 0
1 0 0 1
1 1 1 0
1 1 1 0
Veamos ahora por qu resulta ms sencillo operar con el sistema binario que con el decimal.
www.um.es/docencia/barzana/II/Ii05.html 16/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Se ha visto la simplicidad de las operaciones aritmticas en binario. Los ordenadores funcionan con circuitos que
pueden representar los dos estados del sistema binario (0 y 1) abrindose o cerrndose el circuito.
Al conectar dos circuitos segn el esquema, y hacer pasar una corriente elctrica por A se puede conseguir que el
estado del conductor C represente el resultado de la operacin AND lgica.
1 1
---------------*------------------ C toma el valor 1
A B
0 1
---/ /---------*------------------ C toma el valor 0
A B
1 0
---------------*-------/ /------ C toma el valor 0
A B
0 0
--/ /---------*-------/ /------- C toma el valor 0
A B
A=1
-------------------
|------------------- C=1
-------------------
B=1
A=1
-------------------
|------------------- C=1
----/ /----------
B=0
www.um.es/docencia/barzana/II/Ii05.html 17/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
A=0
----/ /----------
|------------------- C=1
-------------------
B=1
A=0
-----/ /----------
|------------------- C=0
----/ /----------
B=0
Estos ejemplos ilustran cmo basndose en circuitos e impulsos elctricos un ordenador puede realizar
operaciones aritmticas y lgicas. El motivo por el que los ordenadores electrnicos trabajan en el sistema
binario se puede deducir de los ejemplos vistos. Queda imaginar la complejidad que supondra trabajar en el sistema
decimal (con circuitos 10 veces ms complejos para representar operaciones de 2 dgitos).
Una puerta es un circuto electrnico que produce una seal de salida que es una operacin booleana sencilla
de las seales de entrada. Las puertas bsicas usadas en lgica digital son AND, OR, NOT, XOR, NAND y
NOR. cada puerta se define de tres formas: smbolo grfico, notacin algebraica y tabla de verdad, como se
muestra seguidamente:
www.um.es/docencia/barzana/II/Ii05.html 18/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Con el reciente descubrimiento de un tipo de dispositivo predicho hace bastantes aos, el memristor, se puede tener
un equivalente a una puerta NAND mediante un resistor (resistencia) conectado a dos dispositivos memrresistivos,
logrando un dispositivo que se puede usar como interruptor digital (baja resistencia "on" y alta resistencia "off")
El siguiente programa muestra esquemticamente como actan las puertas AND, OR y NOT descritas
previamente (Pulsa sobre A y/o B)
D) Representacin en complementos
Para representar un nmero negativo se puede utilizar el complemento de ese nmero a la base. De esta forma las
sumas y restas quedan reducidas a sumas. Este sistema de representacin es de sumo inters en el caso de los
ordenadores ya que al usarlo se reduce la complejidad de los circuitos.
El complemento a la base de un nmero, es el nmero que resulta de restar a cada una de las cifras del nmero
N a la base menos uno del sistema que se est utilizando y posteriormente sumar uno a la diferencia obtenida.
www.um.es/docencia/barzana/II/Ii05.html 19/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Ejemplo:
En base 10:
Base menos uno del sistema: 9
Representar el nmero 63 en complemento a la base.
N = 63 99 36
-63 +1
------ ------
36 37
En base 2:
111111 010101
101010 + 1
----------- ------------
010101 010110
Observamos que para transformar un nmero binario N a complemento a 2 basta con cambiar los 0 por 1 y los 1
por 0 de N y sumar 1 al resultado.
Veremos ahora que la utilidad de esta representacin es para convertir la realizacin de las restas a sumas, lo cual
simplifica el diseo del procesador.
Ejemplo: Base 10
a) Directamente: 77 - 63 = 14
b) Utilizando el complemento a 10 del substraendo:
www.um.es/docencia/barzana/II/Ii05.html 20/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
99 36
-63 +1
---- -----
36 37
77
+37
-----
114
- (No se considera)
El resultado es 14
Es decir, para restar basta con sumar el minuendo con el complemento a la base del substraendo y sin considerar el
acarreo.
Ejemplo: Base 2
11001 - 10010
a) Directamente:
11001
-10010
--------
00111
01101
+ 1
--------
01110
11001
+01110
---------
100111
- (No se considera)
www.um.es/docencia/barzana/II/Ii05.html 21/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
E) Cdigos intermedios
Los cdigos intermedios se basan en la facilidad de transformar un nmero en base 2 a otra base que sea potencia
de 2 y viceversa. Usualmente se usan como cdigos intermedios los sistemas de numeracin en base 8 y en base
16 (conocidos como octal y hexadecimal).
a) OCTAL.
Para convertir un nmero octal a binario slo debemos sustituir cada dgito octal por su equivalente binario.
Equivalencias
OCTAL BINARIO
0 000
1 001
2 010
3 011
4 100
5 101
6 110
7 111
Ejemplo:
6 se sustituye por 110
La conversin de binario a octal se realiza juntando en grupos de tres dgitos binarios, comenzando por la
izquierda desde el punto decimal y sustituyendo cada grupo por el correspondiente dgito octal.
Ejemplo:
El nmero binario 10001101100.11010)2 es en octal
10 001 101 100 . 110 10 = 2154.64)8
Para pasar un nmero de octal a decimal aplicamos la expresin:
N)8 =...n4 b4 + n3 b3 + .... + n-1 b-1 + n-2 b-2...)10
con b = 8.
Ejemplo:
Para pasar el nmero octal 1367.25)8 a decimal:
www.um.es/docencia/barzana/II/Ii05.html 22/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Para pasar un nmero entero decimal a octal se hacen sucesivas divisiones enteras del nmero y los subsiguientes
cocientes por 8 (al igual que en binario). Para transformar la parte fraccionaria de un nmero decimal a octal se hacen
sucesivas multiplicaciones por 8 (de la misma forma que en binario).
Ejemplo:
Para pasar el nmero decimal 760.33)10 a octal:
760 | 8__
40
0 95 | 8__
15
7 11 | 8__
3 1
b) HEXADECIMAL
Para representar un nmero en base hexadecimal (b = 16) es necesario disponer de un conjunto o alfabeto de 16
smbolos. Se suele usar el conjunto:
{0, 1, 2,..., 9, A, B, C, D, E, F}
Podemos hacer las conversiones de binario a hexadecimal y viceversa en forma anloga al sistema octal. Ahora bien,
aqu utilizaremos grupos de 4 bit en lugar de grupos de 3 bit.
Equivalencias
HEX BINARIO DECIMAL
0 0000 0
1 0001 1
2 0010 2
3 0110 3
4 0100 4
5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
A 1010 10
www.um.es/docencia/barzana/II/Ii05.html 23/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
B 1011 11
C 1100 12
D 1101 13
E 1110 14
F 1111 15
Ejemplo:
Pasar el nmero binario 010010111011111.1011101)2 a hexadecimal.
010 0101 1101 1111 . 1011 101)2 = 25DF.BA)16
Ejemplo:
Pasar el nmero 1ABC701.C4)16 a binario:
0001 1010 1011 1100 0111 0000 0001 . 1100 0100 )2
1 A B C 7 0 1 C 4
Para transformar un nmero hexadecimal a decimal aplicamos la expresin siguiente con b=16.
N)16 =...n4 b4 + n3 b3 + .... + n-1 b-1 + n-2 b-2...)10
Ejemplo:
Para pasar un nmero de decimal a hexadecimal se hace de forma anloga a los casos binario y octal: la parte
entera se divide por 16, as como los cocientes enteros sucesivos, y la parte fraccionaria se multiplica por 16, as
como las partes fraccionarias de los productos sucesivos.
Ejemplo:
* 16 * 16 * 16
------ ----- - -----
474 384 144
+79 +64 +24
----- ---- -----
12.64 10.24 3.84
C A 3
La memoria principal se encuentra organizada en palabras, cada una de las cuales tiene asignada una direccin. Los
intercambios de informacin entre el procesador y la memoria se hacen en unidades denominadas palabras y no en
caracteres (octetos) o en bit.
Normalmente para aprovechar la memoria, la longitud de la palabra debe ser un mltiplo entero del nmero de bit
usados para representar un carcter.
Los datos se introducen inicialmente en el ordenador segn un cdigo de entrada/salida (que ya hemos visto), tanto
si stos son de tipo alfabtico como de tipo numrico.
Los datos de tipo numrico se utilizan normalmente para operar aritmticamente con ellos, y la representacin
simblica obtenida con el cdigo de E/S no resulta adecuada para realizar este tipo de operaciones. Resulta ms
adecuado operar en un sistema de numeracin que en un cdigo de E/S.
Por los motivos anteriores, y teniendo en cuenta que la ALU opera con palabras, se realiza una conversin de
notaciones pasando de la representacin simblica de E/S a otra notacin que denominamos representacin
interna.
TIPOS DE INFORMACION.
1 Informacin numrica:
Enteros
Reales
Complejos
Lgicos
Caracteres
www.um.es/docencia/barzana/II/Ii05.html 25/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Los datos de tipo complejo se representan por parejas de nmeros reales almacenados en posiciones consecutivas
de memoria. Es decir, pueden considerarse como un caso particular de nmeros reales.
El nombre de esta representacin surge al considerar el punto fraccional, situado en una posicin fija. El punto fijo
es utilizado para la representacin de nmeros enteros, suponindose el punto fraccional ubicado a la derecha de
los bit. Cualquiera de los sistemas de representacin de enteros es una representacin de punto fijo. Tambien, se
puede utilizar la representacin en punto fijo para representar fracciones binarias escalando los nmeros, de modo
que el punto fraccional quede ubicado implcitamente en otra posicin entre los bit, y en el caso lmite a la
izquierda de todos ellos describiendo un nmero fraccional binario puro (menor a 1).
b) El valor absoluto:
b1) Nmeros positivos: Se almacenan directamente el nmero en binario natural.
b2) Nmeros negativos: Dependiendo del ordenador se almacena el complemento a 2 del nmero
binario natural o la magnitud del nmero en binario natural.
El punto flotante surge de la necesidad de representar nmeros reales y enteros con un rango de representacin
mayor que el que ofrece la representacin en punto fijo y posibilitar al ordenador el tratamiento de nmeros muy
grandes y muy pequeos. Estas ventajas que ofrece el punto flotante traen como contraprestacin una
disminucin en la precisin de los nmeros representados.
Un nmero en esta notacin tiene infinitas representaciones, de las que se toma como estndar la denominada
normalizada, que consiste en que la mantisa no tiene parte entera y el primer dgito o cifra a la derecha del punto
decimal es significativo (distinto de 0), salvo en la representacin del nmero 0.
835.4 = 8354*10^-1 = 835.4 * 10^0 = 83.54 * 10^1 = 8.354 * 10^2 = .8354 * 10^3
Representacin del nmero decimal 835.4 con base de exponenciacin 10. siendo est ltima expresin la
que corresponde al nmero normalizado.
En este sistema de codificacin, se dividen los bit disponibles en la palabra o doble palabra del ordenador entre la
mantisa y el exponente, teniendo una base de exponenciacin determinada (2 o potencia de 2). Normalmente la
definicin de la coma flotante sigue las siguientes reglas:
El exponente se representa en uno de los siguientes sistemas de codificacin: mdulo y signo o exceso a 2 n-
1, siendo siempre un nmero entero. En este sistema de codificacin el exponente tambin recibe el
nombre de caracterstica.
La mantisa es un nmero real con el punto decimal implcito a la izquierda de sus bit, representada
normalmente en uno de los siguientes sistemas de codificacin: mdulo y signo, complemento a 1 o
complemento a 2.
La base de exponenciacin es una potencia de 2 determinada por el fabricante del equipo (2, 8 o 16).
Existen muchas formas de representacin en punto flotante, variando la longitud de la palabra del ordenador, la base
de la exponenciacin, el nmero de bit reservados para la mantisa y para el exponente, el sistema utilizado para
representar la mantisa y el exponente, etc.. El punto flotante se define particularmente en cada caso. Las definiciones
ms comunes son las siguientes:
El rango de representacin en la coma flotante debe ser analizado teniendo en cuenta los mximos y mnimos
valores representables tanto con signo positivo como negativo:
www.um.es/docencia/barzana/II/Ii05.html 27/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Conviene observar que existen cuatro zonas de nmeros que no pueden ser representados mediante un determinado
formato de coma flotante. Estas zonas estn ubicadas cercanas al 0, tanto para valores positivos como negativos
(subdesbordamiento positivo o negativo), como para valores grandes (positivos) o pequeos(negativos) que exceden
el rango de representacin.
Ejemplo
los bit del 23 al 30 se utilizan para representar el exponente en exceso a 128 (27)
los bit del 0 al 22 se utilizan para representar la mantisa normalizada para el sistema Mdulo y signo
la base de exponenciacin es 2
0 10000100 11000000000000000000000
signo (+) exponente 4 mantisa 0.75
Representar en el formato definido el 12. En este caso la notacin normalizada solo sufre cambio en el signo de la
mantisa (-0.75 * 24), la expresin quedar ntonces:
1 10000100 11000000000000000000000
signo (-) exponente 4 mantisa 0.75
Los datos de tipo carcter, representan sencillamente cadenas de caracteres representados segn el cdigo de
E/S.
Deben englobar las 26 letras del alfabeto latino, los 10 dgitos y un cierto nmero de caracteres grficos
(operadores) y signos de puntuacin.
Deben permitir aadir nuevos caracteres especficos.
Deben incluir un sistema de redundancia que permita la deteccin de errores en el curso de la transmisin.
Los subconjuntos de letras y nmeros deben estar ordenados y ser coherentes. Estarn en dos grupos
diferentes y ordenados.
F) Codificacin de instrucciones
Cdigo de operacin.
Direccin de operandos/resultados.
Condiciones de direccionamiento, etc.
A cada una de estas informaciones se le asocia una zona formada por un nmero de bit suficientes para codificar los
diferentes estados posibles de la instruccin.
As una zona de cdigo de operacin de 6 bit permite codificar 26 = 64 operaciones diferentes, y si una zona de
direcciones es de 16 bit permitir direccionar una memoria de 216 direcciones.
Hemos visto anteriormente que si representamos cada carcter por un nmero fijo de bit, para representar m
smbolos distintos necesitamos al menos n bit, siendo n el menor nmero entero que verifica la relacin
Tambin hemos observado que a veces no es necesario utilizar todas las combinaciones posibles de los n bit.
Cuantas menos combinaciones se desperdicien decimos que el cdigo es ms eficiente.
Un cdigo que es poco eficiente se dice que es redundante. La eficiencia de un cdigo se expresa como el cociente
entre el nmero de smbolos que representa y el nmero total posible,
Eficiencia = m/m= m/2n
as se tiene para el ASCII una eficiencia de 95/27, que es 0.742, con R=25.8% y para el ASCII extendido la
eficiencia es 95/28, que es 0.371, con R=62.9%, donde R es la redundancia, que se calcula, R=(1-)*100%
www.um.es/docencia/barzana/II/Ii05.html 29/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
A veces las redundancias se introducen deliberadamente para poder detectar posibles errores en la transmisin o
grabacin de informacin.
As por ejemplo, si necesitamos transmitir 8 smbolos (A, B, C,...,H) y si se hace con un cdigo sin
redundancias, necesitamos n = 3 bit, y un cdigo posible puede ser:
ALFABETO CDIGO
A 000
B 001
C 010
D 011
E 100
F 101
G 110
H 111
En el caso de que por algn error uno de los bit vare obtenemos otro smbolo del alfabeto, que considerado
aisladamente no puede ser detectado como errneo. Si se usase un cdigo redundante, tal como el siguiente:
ALFABETO CDIGO
A 0000
B 0001
C 0010
D 0011
E 0100
F 0101
G 0110
H 0111
existiran algunas posibilidades de detectar errores. As por ejemplo, si se transmite el smbolo H, esto es
0111, y por un error la transmisin cambiara el primer bit, esto es se recibiese 1111, podra detectarse el error ya
que 1111 no corresponde a ninguno de los smbolos posibles.
Usualmente las redundancias se introducen deliberadamente y de acuerdo con algn algoritmo predeterminado. Uno
de estos algoritmos aade al cdigo inicial da cada carcter un nuevo bit denominado bit de paridad. Existen dos
criterios para introducir este bit:
Bit de paridad, criterio par: se aade un bit (0 1) de forma tal que el nmero total de unos del cdigo
que resulte sea par.
Bit de paridad, criterio impar: Se aade un bit (0 1) de forma tal que el nmero total de unos del
cdigo que resulte sea impar.
Ejemplo:
El bit de paridad se introduce antes de transmitir o grabar la informacin. Por ruido o interferencias en la
transmisin o defecto del soporte de la informacin puede eventualmente cambiar un bit (de 1 a 0 de 0 a 1). Si
en el receptor o al leer la informacin se comprueba la paridad, se detectara el error, ya que el nmero de unos
dejara de ser par (en el criterio par) o impar (en el criterio impar).
En el caso de transmisin de datos, automticamente se podra provocar una nueva transmisin del carcter
errneo. Obviamente si se produjese el cambio simultneo de dos bit distintos no se detectara el error de
paridad, ahora bien, esta eventualidad es mucho menos probable que la de que cambie un slo bit.
Cdigos de barras
Otro caso habitual donde aparece informacin redundante con la finalidad de verificar errores, es en los cdigos de
baras, habituales en cualquier producto que se comercialice masivamente. En 1974 los 12 pases que entonces
formaban la Unin Europea decidieron adoptar un sistema de codificacin para los productos, similar al sistema
UPC de Estados Unidos de Norteamrica. As surgi el cdigo EAN (European Article Numbering), sistema
que han adoptado ms de 100 pases y cerca de un milln de empresas.
El ms usual es EAN 13, formado por 13 dgitos agrupados en cuatro partes: prefijo, cdigo empresa, cdigo
producto y dgito de control. El prefijo asignado por EAN internacional a AECOC es el 84, de modo que la
mayora de las empresas que forman parte del sistema EAN a travs de AECOC utilizan este nmero. El
cdigo de empresa (fabricante o cadena de distribucin) est formado por un nmero de entre 5 y 8
dgitos. El cdigo del producto completa los primeros 12 dgitos y el ltimo dgito es de control. Por
ejemplo, un tarro con garbanzos cocidos marca Eroski, lleva el siguiente cdigo 8480010021967, donde 84 significa
Espaa, 80010 es el nmero que tiene asignado la cooperativa Eroski, 02196 corresponde a ese tipo de
garbanzos, siendo una clasificacin interna del distribuidor y 7 es el cdigo de control.
En el momento de la venta, el terminal punto de venta (TPV), realiza las siguientes operaciones:
www.um.es/docencia/barzana/II/Ii05.html 31/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Si el resultado coincide con el dgito de control, como es el caso, el ordenador enviar el precio al TPV.
>
Introduce texto a buscar Bsqueda en UMU
Bsqueda en todas mis pginas
Bsqueda escptica
Imprimir
Pgina Rafael
Barzanallana
Asignaturas.
Informtica Aplicada a
la Traduccin e
Interpretacin...
Documentacin asignatura
definitiva, 2012/13
Asignaturas.
Informtica Aplicada a
la Traduccin e
Interpretacin...
Prctica 1, ya est completa
Asignaturas.
Informtica Aplicada a
la Traduccin e
Interpretacin...
Prctica D
Asignaturas.
Informtica Aplicada a
la Traduccin e
Interpretacin...
Teora cap. 4. Memorias de
traduccin
Asignaturas.
Informtica Aplicada a
la Traduccin e
Interpretacin...
Teora cap. 3. Sistemas de
gestion de terminologa
Enlaces de inters
www.um.es/docencia/barzana/II/Ii05.html 32/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Skip Navigation
Inicio
Divulgacin
Fsica
Religiones
Fraudes mdicos
Fraudes nutricin
Fraudes psicologa
Informtica
Fraudes en psicologa
Escepticismo en Espaa
ARP-SAPC
Crculo escptico
Magonia
Escepticismo
en Amrica
Pensar. Argentina
Escpticos. Colombia
Arev. Venezuela
James Randi. EE.UU.
CSI. EE.UU.
Sugerencias
y consultas
Nombre: eMail:
Tel (opcional):
www.um.es/docencia/barzana/II/Ii05.html 33/34
23/10/13 Apuntes Introduccion a la Informtica. Capitulo 5, sistemas de numeracin. 2010/11. Universidad de Murcia (Espaa). Rafael Barzanallana
Consulta o sugerencia:
Proteccin de datos: los datos proporcionados slo se utilizan para responder. No se almacena ninguna informacin
Enviar
Oposiciones Masters
www.um.es/docencia/barzana/II/Ii05.html 34/34