Alguien conoce algun manual o me puede explicar como leer binario??
Entiendo mas o menos del tema, se leer numeros pero no doy con las letras
alguien sabe
Cualquier ayuda es bien recibida
Saludos
| ||||
¿Binario?, ¿te refieres a unos y ceros "11000101"?, eso que dices de las letras me suena mas a numeracion hexadecimal. Leer binario: pongamos una cadena de 8 bits. 11000101 con 8 bits se pueden manejar numeros 256, desde el cero "00000000" hasta el 255 "11111111", de la siguiente manera: cada posicion del bit corresponde a un valor fijo y predeterminado. posicion 1 2 3 4 5 6 7 8 bit 1 10 0 0 1 0 1 valor 128 64 32 16 8 4 2 1 cuando un bit esta activado "1" indica que su valor cuenta: es decir:, 128+64+4+1, igual 197. La numeracion exadecimal, funciona de la siguiente manera: un numero decimal con base (10) representado por cifras que pueden ser representadas con u solo caracter, el "0" el "1" el "2"......... y con ellos se pueden hacer todos los demas numeros. Lo que se persigio con la numeracion hexadecimal, fue poder representar con un solo caracter, un numero mayor. un numero hexadecimal con base (16) Como no hay caracteres individuales para referirse a 10,11,12,13,14,15 se utilizan en su lugar a, b, c, d, e ,f. Esta es la relacion decimal 0 1 2 3 4 5 6 7 8 9 hexadecimal 0 1 2 3 4 5 6 7 8 9 a b c d e f asi "10" en hexadecimal es "a" y "17" es "f1". para diferenciar un numero hexadecimal de uno decimal se suele utilizar el prefijo "#" del modo "#ff". |
| ||||
Cita: 17 en base 10 corresponde a 11 en hexadecimal, no a f1(0 1 2 3 4 5 6 7 8 9 a b c d e f 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 20 21 ...
Iniciado por programeitor asi "10" en hexadecimal es "a" y "17" es "f1". Pasar un byte de binario a hexadecimal: 0000 -> 0 0001 -> 1 0010 -> 2 0011 -> 3 0100 -> 4 0101 -> 5 0110 -> 6 0111 -> 7 1000 -> 8 1001 -> 9 1010 -> a 1011 -> b 1100 -> c 1101 -> d 1110 -> e 1111 -> f Dada esta tablita, si tenemos un byte lo que hacemos es dividirlo en dos 'trozos' y sustituir las dos sub-palabras por su equivalente hexadecimal Por ejemplo: 10000111 --- 1000=>8 ; 0111=>7 -> 87h 11011010 --- 1101=>d ; 1010=>a -> dah Por otra parte para convertir de binario a decimal hay que tener muy en cuenta las posiciones de los bits porque de ellas depende su 'peso'. Veamos con un ejemplo: 10010011001,10011 Vemos que tenemos un número con coma binario, con lo cual procedemos asi: La parte no fraccionaria consta de 11 dígitos, con lo cual para la parte derecha lo que hacemos es multiplicar cada valor por (2^posición). Las posiciones van de 0(a la derecha de la coma hasta el número de dígitos menos 1-> en este caso 10) Parte entera:10010011001 1x(2^10) + 0x(2^9)+ 0x(2^8)+ 1x(2^7)+ 0x(2^6)+ 0x(2^5)+ 1x(2^4)+ 1x(2^3)+ 0x(2^2)+ 0x(2^1)+ 1x(2^0) = 1x(2^10) + 1x(2^7)+ 1x(2^4)+ 1x(2^3)+ 1x(2^0) = 1024 + 128 + 16 + 8 = 1176 Se denomia pesos de cada bit a la potencia a la que se ha de elevar 2, es una forma de referenciar su posición. Y bueno para la parte fraccionaria será parecido lo único que los pesos empiezan en -1 (a la derecha de la coma) y crecen hacia la derecha Parte fraccionaria:10011 1x(2^(-1)) + 0x(2^(-2)) + 0x(2^(-3)) + 1x(2^(-4)) + 1x(2^(-5)) = 0,5 + 0,625 + 0,03125 Lo que sucede es que en Sistemas digitales no se puede mandar una 'coma'(para indicar el comienzo de una parte fraccionaria) o por ejemplo un menos(para indicar que el número es negativo). Esos signos los podemos utilizar nosotros, pero digitalmente sólo se pueden usar ceros y unos. Y dado ése problema es cuando surgen distintos tipos de soluciones, y encima no son iguales. Por ejemplo para codificar digitalmente un número que contenga información de signo, es decir indicar mediante una secuencia de 0 y 1 el signo pero sin usar el signo menos, hay varias formas de hacerlo, signo-magnitud, complemento a 1 ó complemento a 2. Siguiendo esos métodos, se puede dar signo a un número binario. Pero que pasa si queremos expresar una coma, es decir si queremos representar mediante 0 y 1 un número decimal como por ejemplo 10465,4585. Bueno lo que se hace en ése caso es usar el formato definido por el estándar 754-1985 ANSI/IEE, y la conversión desde, ó a éste formato ya se hace un pelín más complicada. En definitiva, lo que quería decir con esto, es que el binario es una secuencia de 1s y 0s, pero que dependiendo del tipo de dato que se esté manejando existen multitud de formatos que se pueden aplicar y más adecuados para ése tipo de dato. Por ejemplo si queremos pasar a binario una dirección IP utilizamos dos bytes y resolvemos a razón de paquetes de 4 bits, pero si queremos pasar un numero decimal con coma es necesario el uso de un formato que use coma flotante como el estándar 754-1985 ANSI/IEE. La cosa está en lo siguiente, hemos de usar un medio de transmisión de datos que es el digital, por su rapidez(la luz eléctrica jajajaja), pero hemos de adaptar lo que enviamos y lo que recibimos mediante formatos para que la codificación y la traducción de esa secuencia de 1s y 0s nos cueste lo menos posible. En muchos casos la complejidad de los algoritmos de dichos formatos se ve incrementada pero para manejar la menor cantidad de información posible, para evitar redundancias, para reducir posibilidades de errores, etc...(o sea para bien ) En fin que 'leer binario' puede ser pasar un numero octal, decimal o hexadecimal a binario o biceversa, cosa que en el fondo no es tan complicada, pero cuando te metes en formatos representaciones y tál ya la cosa cambia :S Salu2 amigos ;) Última edición por yoseman; 28/09/2005 a las 17:01 |
| ||||
Cita: 17 no es f1, es 11 asi "10" en hexadecimal es "a" y "17" es "f1". A ver si puedo aclarar algo más, para empezar, a la hora de saber el valor de un número que nos dan en una cadena de 0's y 1's, lo primero que debemos conocer es si estamos en coma fija (números enteros) o coma flotante (números decimales). Para no liar esto mucho, y como supongo que querras una explicación simple, vamos a hacerlo en coma fija. Ahora, lo siguiente que hay que conocer es el formato de representación empleado (binario puro, signo-magnitud, complemento a 2...). De nuevo para no liarlo vamos a hacerlo con binario puro. Cuando tenemos un número en binario, lo primero que hay que tener en cuenta es que estamos trabajando en base 2. ¿Por qué en base 2? pues porque solo tenemos 2 'símbolos': 0 y 1 (los números que utilizamos normalmente en la vida diaria son en base 10, porque hay 10 'símbolos': 0-9). Con lo cual, si a mi me dan el siguiente byte (8 bits), y suponiendo que estamos en coma fija y usamos binario puro:
Código:
Hacemos la suma de las potencias de base 2 correspondientes a los bits que están a 1:1 1 0 0 1 0 1 0 (abajo en rojo indicamos el número de bit) 7 6 5 4 3 2 1 0 2^7 + 2^6 + 2^3 + 2^1 = 128 + 64 + 8 + 2 = 202 - A la inversa: ¿cómo pasar de decimal a binario? Utilizamos la regla de Horner (vamos dividiendo el número entre 2, quedandonos con los restos y con el último cociente, tomándolos en orden inverso):
Código:
Espero que se entienda, es que no hay quien lo coloque 202 | 2 0 101 | 2 1 50 | 2 0 25 | 2 1 12 | 2 0 6 | 2 0 3 | 2 1 1 En cuanto a lo que dices de las letras, como dice programeitor, eso es hexadecimal (base 16 -> 16 'símbolos). la tabla de los valores en decimal es:
Código:
Lo que se hace es tomar los dígitos binarios de cuatro en cuatro; en el ejemplo anterior:F 1111 E 1110 D 1101 C 1100 B 1011 A 1010 9 1001 8 1000 7 0111 6 0110 5 0101 4 0100 3 0011 2 0010 1 0001 0 0000
Código:
que se suele escribir como CAh1100 1010 C A - Y por último, no la vamos a dejar de lado, tenemos la notación octal (base 8; 8 símbolos: 0-7):
Código:
nuestro numero sería:7 111 6 110 5 101 4 100 3 011 2 010 1 001 0 000
Código:
por lo que nuestro numero anterior, en todas las bases sería:1100 1010 --> 011 001 010 3 1 2
Código:
Espero que te haya servido Decimal: 202 Binario: 1100 1010 Octal: 312 Hexadecimal: CA |
| ||||
digalo en binario..... 01101110011011110010000001110011011001010010000001 11001101101001001000000111001101101001011100100111 01100110000100100000011001000110010100100000011000 01011011000110011101101111001000000111000001100101 01110010011011110010000001100001011010110110000100 10000001110000011101010110010101100100011001010111 00110010111000101110001011100010000001100011011011 11011011100111011001100101011100100111010001101001 01110010001000000111010001100101011110000111010001 10111100100000011001010110111000100000011000100110 10010110111001100001011100100110100101101111001000 00011110010010000001110110011010010110001101100101 01110110011001010111001001110011011000010010111000 10111000101110000011010000101000001101000010100111 00110110000101101100011101010110010001101111011100 1100101110 http://www.roubaixinteractive.com/Pl...ry_To_Text.asp nose si te sirve... pero es divertido jajaajajaj... |
| ||||
para contar en binario es facil. nosotros tenemos diez dedos en la mano, por eso nos resulta mas facil contar con diez simbolos distintos (base 10). imaginate que solo tuvieses dos dedos, uno en la mano izquierda y otro en la derecha. te resultaria mas practico contar con solo dos simbolos, llamemosles '0' y '1'. bueno empieza a contar. 0, 1, (uhi, que se me acaban los dedos) 10, 11, (uhi, que se me han vuelto a acabar los dedos) 100, 101, etc... puedes probar contando con tres dedos (en base tres), o con cuatro (en base cinco). solo los extraterrestres cuentan en base 16, porque tienen ocho dedos en cada mano.
__________________ Si ocurre algo importante, estamos afuera fumándonos unos cigarritos. |
| ||||
bodoke... 00011010010111011001100001011011010110010101101110 01110100011001010010000001101110011011110010000001 10001101110010011001010110111100100000011100010111 01010110010100100000011100110110100101110010011101 10011000010010000001110000011000010111001001100001 00100000011011100110000101100100011000010010000001 11000001100101011100100110111100101110001011100010 11100010000001001101010101010100001101001000010000 01010100110010000001000111010100100100000101000011 01001001010000010101001100100001 para el resto... 01001000011000010111100100100000001100010011000000 10000001110100011010010111000001101111011100110010 00000110010001100101001000000111000001100101011100 10011100110110111101101110011000010111001100101100 00100000011011000110111101110011001000000111000101 11010101100101001000000111001101100001011000100110 01010110111000100000011011000110010101100101011100 10001000000110001001101001011011100110000101110010 01101001011011110010000001111001001000000110110001 10111101110011001000000111000101110101011001010010 0000011011100110111100101110
__________________ mi tumblelog sobre diseño La dedicación en mi respuesta es directamente proporcional a la dedicación en tu pregunta. |
| ||||
Cita: ... mucho Hollywood....
Iniciado por haron solo los extraterrestres cuentan en base 16, porque tienen ocho dedos en cada mano.
__________________ Pasamos tus PSD a HTML Pobre del que lo sabe todo, porque no tiene nada más que aprender ni razón para vivir. - Última edición por webosiris; 29/09/2005 a las 18:48 |
| ||||
K3nny 01101100011011110010000001110001011101010110010100 10000001100101011100110110001101110010011010010110 00100110100101110011011101000110010100100000011100 00011100100110100101101101011001010111001001101111 00100000011101000110000100100000011011010110000101 10110001101111001011000010000001101101011001010010 00000110010001100001001000000111010101101110001000 00011001010111001001110010011011110111001000101110 00101110001011100010111000001101000010100000110100 00101001110011011010010010000001101110011011110010 00000111001101100001011000100110010101110011001000 00011001010111001101100011011100100110100101100010 01101001011100100010000001100010011010010110111001 10000101110010011010010110111100101100001000000110 11100110111100100000011011000110111100100000011010 00011000010110011101100001011100110010111000101110 00101110001011100000110100001010000011010000101001 10101001110101011000010110000101110101011000010110 10100111010101100001011000010110101001110101011000 01011010100111010101100001011010100110000101110101 0010111000101110001011100010111000101110 01110011011000010110110001110101011001000110111101 11001100101110 |
| |||
Cita: Añadele seis 0 al final...
Iniciado por bodoke K3nny 01101100011011110010000001110001011101010110010100 10000001100101011100110110001101110010011010010110 00100110100101110011011101000110010100100000011100 00011100100110100101101101011001010111001001101111 00100000011101000110000100100000011011010110000101 10110001101111001011000010000001101101011001010010 00000110010001100001001000000111010101101110001000 00011001010111001001110010011011110111001000101110 00101110001011100010111000001101000010100000110100 00101001110011011010010010000001101110011011110010 00000111001101100001011000100110010101110011001000 00011001010111001101100011011100100110100101100010 01101001011100100010000001100010011010010110111001 10000101110010011010010110111100101100001000000110 11100110111100100000011011000110111100100000011010 00011000010110011101100001011100110010111000101110 00101110001011100000110100001010000011010000101001 10101001110101011000010110000101110101011000010110 10100111010101100001011000010110101001110101011000 01011010100111010101100001011010100110000101110101 0010111000101110001011100010111000101110 01110011011000010110110001110101011001000110111101 11001100101110 Saludos,
__________________ sergiold |