hacker


Ingresar con nombre de usuario, contraseña y duración de la sesión
| Portal Hacker | Editorial | Descargas | Ezine |
Inicio Ayuda Ingresar Registrarse
07 de ſeptiembre de 2008, 07:30:57
Noticias: ¿No te llega el email de confirmacion?
Para ver este enlace Registrate o Inicia Sesion
> leer aqui

+  Foros pOrtal Hacker
|-+  Programacion
| |-+  Programación en general (Moderador: TxShAcK)
| | |-+  Todo sobre bases de numeración
0 Usuarios y 1 Visitante están viendo este tema. « anterior próximo »
Páginas: [1] Ir Abajo Imprimir
Autor Tema: Todo sobre bases de numeración  (Leído 611 veces)
El javi
NZ1
*
Desconectado Desconectado

Mensajes: 59


Ver Perfil
« : 04 de Febrero de 2008, 01:20:52 »

ÍNDICE


Para ver este enlace Registrate o Inicia Sesion
1. Introducción


Para ver este enlace Registrate o Inicia Sesion
2. Notación binaria

   
Para ver este enlace Registrate o Inicia Sesion
Ademdum 1 al Capítulo 2: El significado de paridad


Para ver este enlace Registrate o Inicia Sesion
3. Notación hexadecimal


Para ver este enlace Registrate o Inicia Sesion
4. Notación octal

5. Operar en binario (en construcción)
    Suma binaria
    Diferencia binaria
    Producto binario
    Cociente binario


1. INTRODUCCIÓN

Existen distintos sistemas de numeración; el más afín a nuestra lógica es el sistema posicional.
En este sistema cada número tiene un “peso”, es decir, un valor, que depende de su posición. Si escribimos el número 5 queremos decir 5 unidades, pero cambiando la posición del símbolo 5 podemos indicar 5 decenas (50), 5 centenas (500), etc. El símbolo 5 adquiere un valor diferente según su posición; cada posición tiene un valor correspondient e al valor intrínseco del número (0, 1, 2, 3, 4, 5, 6, 7, 8, o 9) multiplicando por 10 tantas veces como indica la posición, de acuerdo con la tabla siguiente:


Para ver este enlace Registrate o Inicia Sesion

A cada cambio de posición, el número se multiplica por 10. El valor 10 es la “base” de nuestro sistema de numeración, que por esta razón se denomina sistema posicional en base diez (numeración árabe).

Un ejemplo de sistema no posicional lo constituye la numeración romana. En ella, al valor 5 le corresponde le símbolo V, mientras que al valor 50 le corresponde el símbolo V.

El sistema posicional más común es el decimal: en él los símbolos son diez y la base es diez. En los ordenadores no es posible utilizar diez símbolos distintos. Sólo dispone de dos: el 1 y el 0.
Por ese motivo hay que utilizar un sistema de numeración que sólo requiera el uso de los símbolos 1 y 0; en función de esta característica, el sistema se denomina sistema binario. Este tipo de numeración, en contra de lo que pueda parecer, no ha surgido con los ordenadores, sino que ya se utilizaba en China hacia el siglo XII. El sistema binario sigue siendo un sistema posicional puesto que el valor de los símbolos depende de su posición.

Examinemos ahora con detalle los mecanismos del sistema posicional. Como hemos visto, en la notación decimal que usamos habitualmente, todo número se representa mediante una sucesión ordenada de las cifras 0, 1, 2, 3,…, 9. El  valor de una misma cifra, por ejemplo de la cifra 5, es distinto según la posición que ocupe en el número; así, 50 no es lo mismo que 500.
Cuando escribimos un número en base 10 realizamos  una abstracción dictada por la costumbre, pero en realidad utilizamos las cifras de que disponemos como multiplicadore s de las potencias sucesivas de la base 10.
Las potencias de una base son los valores que se obtienen multiplicando entre sí tantos factores iguales a la base como indica el exponente puesto encima y a la derecha. Por ejemplo:

100 = 1*; potencia cero (unidades)
101 = 10; potencia uno (decenas)
102 = 10 x 10 = 100; potencia dos (centenas)
103 = 10 x 10 x 10= 1000; potencia tres (millares)

En un número decimal cada cifra, empezando por la derecha y siguiendo hacia la izquierda, es un multiplicador de las potencias sucesivas de la base 10.

El procedimiento riguroso que permite interpretar un número decimal y determinar su valor se describe en la tabla siguiente, referida al número decimal 1024:


Para ver este enlace Registrate o Inicia Sesion

Normalmente utilizamos la notación decimal, pero esta circunstancia es puramente arbitraria, y se atribuye a hecho de que nuestra capacidad inmediata de visualización de una cantidad se limita a l valor 10, es decir, al número de dedos que tenemos. Una cantidad determinada puede expresarse en cualquier otra notación, escogiendo un valor cualquiera de la base y repitiendo el procedimiento de construcción del número. La elección del valor de la base determina el número de símbolos a utilizar.

BASE 10, los símbolos son 10: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
BASE 2, los símbolos son 2: 0, 1.
BASE 8, los símbolos son 8: 0, 1, 2, 3, 4, 5, 6, 7.
BASE 16, los símbolos son 16: 0, 1, 2, 3, 4, 5, 6, 7, 8, A, B, C, D, E, F.

De la base 8 y la base 16 hablaremos detalladamente más tarde; veamos la notación binaria.

Salu2
« Última modificación: 07 de Febrero de 2008, 04:21:11 por El javi » En línea
El javi
NZ1
*
Desconectado Desconectado

Mensajes: 59


Ver Perfil
« Respuesta #1 : 04 de Febrero de 2008, 01:22:59 »

2. NOTACIÓN BINARIA

La notación binaria, como la decimal, es posiciónalo: si para escribir e interpretar una cifra decimal realizamos de forma inconsciente las operaciones necesarias, en el sistema binario necesitamos desarrollar todos los pasos, pero las reglas son las mismas.
Profundizaremo s en el tema mucho más de lo estrictamente necesario para la programación.
Como ya hemos visto, la notación binaria permite expresar cualquier canteada utilizando sólo los símbolos 0 y 1. En este caso las cifras que ocupan las distintas posiciones se multiplicarán por las potencias sucesivas de la base 2. El procedimiento de interpretación de un número binario (en este caso en  concreto, el número 1011) se describe en la tabla siguiente, análoga a la utilizada para la base 10:


Para ver este enlace Registrate o Inicia Sesion

Un conjunto de 8 cifras binarias (cuyo máximo valor es 255) constituye un dato básico en los ordenadores. En ellos, todo número se traduce en una serie de símbolos 1 Y 0; sin embargo, el sistema binario requiere una gran cantidad de símbolos para indicar un valor numérico, y resulta, por tanto, incómodo para quien utiliza la máquina. Por este motivo se han introducido otros dos sistemas posicionales: el octal y el hexadecimal.
Como veremos, estos sistemas permiten conservar una simbología adecuada al funcionamiento del ordenador, pero de forma compacta y, por tanto, de utilización más cómoda que la binaria; permiten, en efecto, escribir los números evitando larguísimas series de 1 y 0.

El valor de un número es el mismo en notación binaria, octal o hexadecimal; sólo varía la forma en que está expresado.

Hemos visto cómo se calcula el valor decimal de un número binario. Veamos ahora como se obtiene un número binario a partir del decimal. El procedimiento es lo contrario de lo anterior. Se va dividiendo el número decimal por 2 hasta obtener un 1 como cociente. En cada división se escribe 0 si no hay resto y 1 si lo hay.

Consideremos, por ejemplo, el número decimal 154:


Para ver este enlace Registrate o Inicia Sesion

Escribiendo los datos obtenemos: 10011010, que es el equivalente binario del 154 decimal.

Bueno mis dedos ya se resienten, dejo para otro día el resto de temas. Espero sus críticas y dudas.

Salu2
« Última modificación: 05 de Febrero de 2008, 01:40:26 por El javi » En línea
ルグブ90
Colaborador
****
Desconectado Desconectado

Mensajes: 2,303



Ver Perfil WWW
« Respuesta #2 : 04 de Febrero de 2008, 01:32:49 »

GRAN manual javi Cheesy espero que continue. Solo corregirte algo
AL final del primer post, en BASE 8 pusiste 0, 1, 2... 6, 7, 8. el 8 no va, el octal llega hasta el 7, supongo que lo sabes Wink
En línea



Para ver este enlace Registrate o Inicia Sesion
Juanking


Para ver este enlace Registrate o Inicia Sesion
Regla de las firmas



Para ver este enlace Registrate o Inicia Sesion
Reporta los temas que creas que incumplan una regla, o deben ser movidos. Click aca!



Para ver este enlace Registrate o Inicia Sesion
Wiii!!!!

Si no tomas toda la sopa voy a llamar al hombre de la bolsa...
Y si el hombre de la bolsa tampoco quiere tomar la sopa ??

El javi
NZ1
*
Desconectado Desconectado

Mensajes: 59


Ver Perfil
« Respuesta #3 : 04 de Febrero de 2008, 01:37:09 »

Corregido, ルグブ90. Gracias, este despiste podría haber confundido a más de un usuario. Espero acabarlo esta semana  Cheesy.

Salu2
En línea
ルグブ90
Colaborador
****
Desconectado Desconectado

Mensajes: 2,303



Ver Perfil WWW
« Respuesta #4 : 04 de Febrero de 2008, 01:39:28 »

Vas a poner todos los tipos de codigo binario?? O solo el comun?? Tongue
Yo me los sabia, ya me los olvide xD me acuerdo que uno era el GRAY, alguno me acuerdo que era como "reflejado", ajj ya me olvide xP

Y sobre la paridad?? Deteccion de errores con Hamming??? XD Ya es mas complicado eso Tongue Pensar que lo tuve que estudiar alguna vez...
« Última modificación: 04 de Febrero de 2008, 01:42:22 por ルグブ90 » En línea



Para ver este enlace Registrate o Inicia Sesion
Juanking


Para ver este enlace Registrate o Inicia Sesion
Regla de las firmas



Para ver este enlace Registrate o Inicia Sesion
Reporta los temas que creas que incumplan una regla, o deben ser movidos. Click aca!



Para ver este enlace Registrate o Inicia Sesion
Wiii!!!!

Si no tomas toda la sopa voy a llamar al hombre de la bolsa...
Y si el hombre de la bolsa tampoco quiere tomar la sopa ??

El javi
NZ1
*
Desconectado Desconectado

Mensajes: 59


Ver Perfil
« Respuesta #5 : 04 de Febrero de 2008, 02:05:15 »

ADEMDUM 1 AL CAPÍTULO 2: EL SIGNIFICADO DE PARIDAD

La paridad, es decir, el hecho de que un número sea par (divisible por 2) o impar, aparece en numerosos contextos de la vida cotidiana. Uno de ellos es la numeración de las casas en las calles. En una acera están los números impares, y en la opuesta, los pares.

En cuanto a lo que a nosotros nos importa. Os recuerdo que los ordenadores trabajan con información en el sistema binario (sólo las cifras 1 y 0). A la hora de guardar la información en la memoria, y para asegurarse de que lo hacen correctamente, los ordenadores añaden a cada byte (grupo de 8 bits) el llamado BIT de paridad, que permite luego comprobar si ese byte es correcto o no.
Si el ordenador usa un método de paridad par, añade un 1 al byte en el supuesto de que éste tenga un número impar de cifras 1. En otro caso, añade un 0.
El método de paridad impar funciona al revés: se añade un 1 al byte si éste tiene un número par de cifras 1, y un 0 en caso contrario. Uno ejemplos:

Método de paridad par:
11100010. BIT añadido: 0 (hay 4 cifras 1).
10001111. BIT añadido: 1 (hay 5 cifras 1).

Método de paridad impar:
11100010. BIT añadido: 1 (hay 4 cifras 1).
10001111. BIT añadido: 0 (hay 5 cifras 1).

Salu2
En línea
El javi
NZ1
*
Desconectado Desconectado

Mensajes: 59


Ver Perfil
« Respuesta #6 : 05 de Febrero de 2008, 02:43:02 »

3. NOTACIÓN HEXADECIMAL

Como hemos dicho, en los ordenadores se usan habitualmente números binaros de 8 cifras o múltiplos de 8 (16, 32). Para indicar tales números hacen falta 8 símbolos (o, respectivament e, 16, 32) que pueden ser, cada uno, un 0 o un 1; esto supone una notación demasiado larga.

Para mayor comodidad se ha introducido una forma de numeración más compacta: la numeración hexadecimal, es decir, en base 16. Esto no altera lo dicho hasta ahora: dentro de la máquina, la simbología sigue siendo binaria. El hexadecimal no es más que un sistema de representación más cómodo.

Con este sistema de numeración las unidades pueden valer de 0 a 15 (del mismo modo que las unidades decimales vale de 0 a 9); el grupo inmediatamente superior empieza a partir de 16, es decir, del valor de la base (igual que las decenas del sistema decimal empiezan a partir de 10).

Consideremos, por ejemplo, el número binario 10100001 (que corresponde al 161 decimal); sabemos que cada símbolo (0, 1) representa una potencia de 2.

Rescribamos el número binario en una tabla que dé las correspondient es potencias de 2:


Para ver este enlace Registrate o Inicia Sesion

Veamos la mitad de la derecha del número binario 10100001, es decir: 0001 (los exponentes son 3, 2, 1, 0 y sus valores 8, 4, 2, 1).

Con un tal número binario, la máxima cantidad que se puede escribir (convirtiendo en 1 todas las cifras que lo forman) es:

1111 binario = 8 + 4 + 2 + 1 = 15 decimal.

Para escribir el número decimal 16 hay que pasar al grupo siguiente.

Resumiendo, pues:

Con un número binario de cuatro cifras se puede escribir, como máximo, el valor 15. Para escribir el valor 16 hay que pasar al grupo de cuatro cifras siguiente.

Estas consideracione s nos llevan a la conclusión de que agrupando los números binarios de cuatro en cuatro se tiene un sistema de numeración en base 16. Dicho sistema se llama hexadecimal. Efectivamente, el grupo de las unidades decimales (grupo y) permite escribir hasta 15 (como las unidades decimales permiten escribir hasta 9; o sea, una unidad menos que la base, 10); y el grupo inmediatamente superior (grupo x) comienza con el valor de la base, 16. El valor mínimo (aparte de 0) que se puede escribir en el grupo de la izquierda (4 primeras cifras) es 0001, que vale precisamente 16. Igual que el valor mínimo del grupo de las decenas es 10.

Adoptando la notación hexadecimal, cada grupo de 4 cifras binarias tiene valores comprendidos entre 0 y 15. Es decir, los exponentes de 2 son 0, 1, 2, 3, y las potencias son 1, 2, 4, 8, que sumadas dan 15. Rescribamos ahora el anterior número binario 10100001 de esta nueva forma:


Para ver este enlace Registrate o Inicia Sesion

El cálculo de Y y X en hexadecimal es inmediato:
Y = 1, puesto que sólo está la potencia 2^0 = 1.
X = 10, puesto que están las potencias 2^3 y 2^1: 8 + 2 = 10.

Por lo tanto, la cifra total se debería escribir:

X    Y
10    1

Esta simbología no es clara en tanto que, a priori, no se puede saber si el 10 pertenece todo al grupo X o bien si el grupo X vale 0 y existe otro grupo Z que vale 1.
Para obviar este inconveniente se ha acordado representar mediante letras las cifras hexadecimales de valor superior a 9, según la tabla:


Para ver este enlace Registrate o Inicia Sesion

Por tanto, el valor 10 se indica con el símbolo A. El número binario 10100001 se convierte, pues, en:

1010    0001
   A         1

Resumiendo:

  • Valor decimal: 161
  • Correspondient e binario: 10100001
  • Correspondient e hexadecimal: A1

Como puede verse, la notación hexadecimal es mucho más compacta.
Para poner otro ejemplo, tomemos el número decimal 215. Convirtámoslo en binario:


Para ver este enlace Registrate o Inicia Sesion

Realicemos ahora una tabla de conversión a hexadecimal.
Recordando que una cifra hexadecimal agrupa cuatro cifras binarias, para poder escribir el número 11010111 necesitaremos dos posiciones hexadecimales:


Para ver este enlace Registrate o Inicia Sesion

Tenemos por tanto:
  • Decimal: 215
  • Hexadecimal: D7
  • Binario: 11010111

Como comprobación, procedamos al revés, es decir, del valor hexadecimal D7 obtengamos el correspondient e valor decimal:

El valor 7 representa las unidades, y por tanto, no varía.
El valor D = 13 al ser el primer múltiplo de la base, se multiplica por 16. Tenemos, pues, (13 x 16) + 7 = 215 decimal.

Bueno, aquí teneís el capítulo 3. He cambiado las "tablas" por imágenes para que se entienda mejor. Como siempre, no duden en postear dudas o críticas.

Salu2
En línea
TxShAcK
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1,468


Prefiero morir de pie, a vivir arrodillado


Ver Perfil WWW
« Respuesta #7 : 05 de Febrero de 2008, 04:37:24 »

te esta kedando un buen manual

Si necesitas ayuda con algun capitulo pues me dices y te puedo ayudar haciendo uno.

Estaria bien hablar tambien de la diferencia entre en binario y el BCD Natural

Vas a poner todos los tipos de codigo binario?? O solo el comun?? Tongue
Yo me los sabia, ya me los olvide xD me acuerdo que uno era el GRAY, alguno me acuerdo que era como "reflejado", ajj ya me olvide....

jeje, bueno, hasta donde yo recuerdo estaba en decimal, binario, BCD Natural, BCD Exceso tres, BCD Aiken y el GRAY.

No se si los trataras todos, pero las diferencias son sencillas y no muy complicado de explicar.

Este seria un tema bonito, si se hablase de las puertas logicas, multiplexadore s, circuitos combinacionale s, comparadores.. . etc, ya que es la base de la electronica... por decirlo de alguna forma... todas esas "cosas" y "lineas" que vemos cuando desmontamos cualquier componente electronico sobre una placa de color verde Grin Grin
En línea

Por una red libre de información y sin censuras



"Podrán morir las personas, pero jamas sus ideales"


Para ver este enlace Registrate o Inicia Sesion
Si algún tema del foro te parece inapropiado, crees que debe moverse o cerrarse, repórtalo aquí

(No respondo dudas por MP)
Para ver este enlace Registrate o Inicia Sesion
Reglas
<->
Para ver este enlace Registrate o Inicia Sesion
Subir imagen al foro


Para ver este enlace Registrate o Inicia Sesion
WWW.INFIERNOHA CKER.COM
ルグブ90
Colaborador
****
Desconectado Desconectado

Mensajes: 2,303



Ver Perfil WWW
« Respuesta #8 : 05 de Febrero de 2008, 10:42:09 »

Pero eso ya se iria a la electronica xD

AND OR XOR NOT y todo ese tipo de cosas... Que recuerdos de le EET Cry
En línea



Para ver este enlace Registrate o Inicia Sesion
Juanking


Para ver este enlace Registrate o Inicia Sesion
Regla de las firmas



Para ver este enlace Registrate o Inicia Sesion
Reporta los temas que creas que incumplan una regla, o deben ser movidos. Click aca!



Para ver este enlace Registrate o Inicia Sesion
Wiii!!!!

Si no tomas toda la sopa voy a llamar al hombre de la bolsa...
Y si el hombre de la bolsa tampoco quiere tomar la sopa ??

TxShAcK
Moderador Global
*****
Desconectado Desconectado

Mensajes: 1,468


Prefiero morir de pie, a vivir arrodillado


Ver Perfil WWW
« Respuesta #9 : 06 de Febrero de 2008, 01:20:31 »

Pero eso ya se iria a la electronica xD

AND OR XOR NOT y todo ese tipo de cosas... Que recuerdos de le EET Cry

si jeje, no me ables de puertas AND, NOT.. etc etc.. era un coñazo gordo xD pero estaba interesante :p

Hay tal vez si es cierto que nos iriamos un poco mas a la electronica, pero bueno, su programacion esta relacionada en cierta forma con el tema Huh de todos modos, si no se habla de ello no pasa nada, de momento asi va bien el manual, era solo una sugerencia jeje
En línea

Por una red libre de información y sin censuras



"Podrán morir las personas, pero jamas sus ideales"


Para ver este enlace Registrate o Inicia Sesion
Si algún tema del foro te parece inapropiado, crees que debe moverse o cerrarse, repórtalo aquí

(No respondo dudas por MP)
Para ver este enlace Registrate o Inicia Sesion
Reglas
<->
Para ver este enlace Registrate o Inicia Sesion
Subir imagen al foro


Para ver este enlace Registrate o Inicia Sesion
WWW.INFIERNOHA CKER.COM
El javi
NZ1
*
Desconectado Desconectado

Mensajes: 59


Ver Perfil
« Respuesta #10 : 07 de Febrero de 2008, 04:17:03 »

4. NOTACIÓN OCTAL

Es una notación muy similar a la hexadecimal. Consiste en dividir el número binario en grupos de tres cifras, cuyos valores son 4, 2, 1 (exponentes 2, 1, 0). Operando En esta nueva base se obtiene con el número binario 10100001) = 161 decimal, la tabla:


Para ver este enlace Registrate o Inicia Sesion

Se tienen las correspondenci as:

  • Decimal = 161
  • Binario = 10100001
  • Hexadecimal = A1
  • Octal = 241

Análogamente a lo que hemos visto en la notación hexadecimal, para convertirle número octal 241 en decimal se siguen las reglas:
La unidad permanece invariable.
El número siguiente debe multiplicarse por 81.
El siguiente, por 82, y así sucesivamente.
Tenemos, por tanto:


Para ver este enlace Registrate o Inicia Sesion

Resumiendo:
  • Los circuitos digitales funcionan con aritmética en base 2.
  • Un número binario se representa mediante una serie de símbolos 1 y 0.
  • Cada símbolo representa el multiplicador de la correspondient e potencia de 2.
  • El valor decimal de una cifra hexadecimal se obtiene multiplicándola por la correspondient e potencia de 16.
  • En notación octal la base es 8.
  • El valor decimal de una cifra octal se obtiene multiplicándola por la correspondient e potencia de 8.

Bueno ya sean visto las principales bases de numeración. Lo siguiente será operar con ellas.


Vas a poner todos los tipos de codigo binario?? O solo el comun?? Tongue
Yo me los sabia, ya me los olvide xD me acuerdo que uno era el GRAY, alguno me acuerdo que era como "reflejado", ajj ya me olvide xP

Y sobre la paridad?? Deteccion de errores con Hamming??? XD Ya es mas complicado eso Tongue Pensar que lo tuve que estudiar alguna vez...

te esta kedando un buen manual

Si necesitas ayuda con algun capitulo pues me dices y te puedo ayudar haciendo uno.

Estaria bien hablar tambien de la diferencia entre en binario y el BCD Natural

jeje, bueno, hasta donde yo recuerdo estaba en decimal, binario, BCD Natural, BCD Exceso tres, BCD Aiken y el GRAY.

No se si los trataras todos, pero las diferencias son sencillas y no muy complicado de explicar.

Este seria un tema bonito, si se hablase de las puertas logicas, multiplexadore s, circuitos combinacionale s, comparadores.. . etc, ya que es la base de la electronica... por decirlo de alguna forma... todas esas "cosas" y "lineas" que vemos cuando desmontamos cualquier componente electronico sobre una placa de color verde Grin Grin

En cuanto a lo anterior, quizá me decida a crear algún manual sobre ello. El objetivo principal es mostrar que un programador no solo tiene que saber código si no también otra serie de cosas.

Salu2
En línea
Páginas: [1] Ir Arriba Imprimir 
« anterior próximo »
Ir a:  


Ingresar con nombre de usuario, contraseña y duración de la sesión

Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC hacker

Juegos gratis - Articulos PHP - Juegos - Trucos - Letras - Juegos - Juegos Online