Archivo de la categoría: Binario
Curso de Lógica binaria
1. Introducción
Señales analógicas y digitales
2. Código binario, decimal y hexadecimal
Introducción
De binario a decimal
De decimal a binario
Sistema hexadecimal
3. Tabla de verdad
La tabla de verdad
4. Funciones lógicas
Operaciones lógicas básicas
Función lógica vs tabla de verdad
Tabla de verdad vs función lógica
Álgebra de Boole
Ordenes de Magnitud | Manzana Mecánica
a veces, cuando no conoces la respuesta exacta a un problema matemático, algo tan importante como conocer la respuesta es conocer que tan grande puede ser el número que buscamos. Aquí les reproduzco 3 problemas sobre Ordenes de Magnitud, donde lo importante es que no hay la respuesta exacta. Si tienen parientes en edad escolar se los pueden hacer como preguntas de ingenio…
En micro a la Luna
La luna está a unos 300 mil kilómetros de distancia de la tierra. Si viajásemos al encuentro de la Luna en un microbús (micro para los amigos), ¿Cuánto tiempo nos demoraríamos en llegar? ¿Días, semanas, meses o años…?
Solución: Vamos a asumir una velocidad de 30 km/hora en el microbús (es bastante menor de los 50 km/hora a los que puede llegar a viajar en realidad, pero vamos usar ese número porque es más fácil para la división hecha mentalmente). 300.000 kilometros dividido por 30 km/hora nos da 10 mil horas. ¿Cuánto tiempo son 10 mil horas?
Un día tiene 24 horas, pero dividir mentalmente 10 mil entre 24 es complicado, así que vamos a aproximarlo con días de 25 horas. 25 es 100 dividido entre 4, así que mentalmente hacemos 10 mil dividido por 100, eso es 100. Pero ahora multiplicamos por 4 para terminar la división por 100/4. Así nos quedan 400 días. Un año tiene 365 días, así que nos demoramos algo más de 1 año en viajar a la Luna en micro. Una estimación más razonable es que en dirección a la Luna no hay tráfico, así que a velocidad crucero, podríamos llegar a la Luna en la mitad del tiempo, en tan solo 6 meses aprox. ¿Quién lo hubiera pensado?.
Los colores de la pantalla
En la actualidad, casi todas las pantallas de computador muestran las imágenes en modo «color verdadero», lo que quiere decir que las imágenes se muestran en profundidad de color de 24 bits (aunque digan que son de 32 bits, solo 24 se usan como información de color). Eso quiere decir que hay 256 intensidades de color rojo, 256 de color verde y 256 de color azul. ¿Cuantos colores se llegar a pueden mostrar con estos componentes de color? ¿Miles, cientos de miles, millones, cientos de millones…?
Solución: La solución exacta son las combinaciones de 256 intensidades de rojo multiplicado por las 256 de verde multiplicado por las 256 de azul, o sea, 256 x 256 x 256. Pero ahora vamos a usar otro camino. El número 256 x 256 x 256 es lo mismo que los 24 bits de profundidad de color, o sea 2 elevado a 24 combinaciones. Ahora, solo necesitamos una buena aproximación para 2 elevado a 24.
Una aproximación que nos saca de apuros es esta: 2 elevado a 10 ( 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 x 2 ) es 1024. Una buena aproximación de 2 elevado a 10 es el número mil. Así, usando las reglas de potencias tenemos que 2 elevado a 24 es igual a 2 x 2 x 2 x 2 x (2 elevado a 20) o sea 16 x (2 elevado a 10) x (2 elevado a 10) o lo mismo 16 x mil x mil, que son 16 millones. Estos son los 16 millones de colores que pueden haber encontrado en algun folleto que acompaña a su monitor del computador.
Los granos de arroz en el tablero de ajedrez
Hay una historia que parece que se supone que aparece en «El hombre que calculaba» pero no lo he podido confirmar (leí el libro hace mucho tiempo!). Se supone que un rey había quedado desconsolado por la pérdida de un hijo en batalla. Un sabio le regala el recién inventado juego del ajedrez, que logra distraerlo de su aflicción, por lo que decide recompensar al sabio con lo que le pida. El sabio le ofrece el siguiente trato: colocar un grano de arroz en la primera casilla del tablero, luego dos granos en la siguiente casilla y así sucesivamente el doble en cada siguiente casilla. El rey lo observa incrédulo y le dice que le parece que es un premio minúsculo y absurdo para semejante entretención. ¿Cuánto arroz es lo que le pide el sabio al rey? ¿Cientos de kilos, toneladas, cientos de toneladas…?Solución: Aquí uso el mismo truco de aproximar 2 elevado a 10 como «mil». El tablero de ajedrez tiene 8 x 8 casillas (64 casillas en total). Comenzando con 1 grano de arroz, luego 2, luego 4 … llegamos a la casilla 64 donde se deben colocar 2 elevado a 63 granos. En total 1 + 2 + 4 + … + 2 elevado a 63 son casi lo mismo que 2 elevado a 64.
De aquí aproximamos 2 elevado a 64 como (2 x 2 x 2 x 2) x (2 elevado a 60). Como 2 elevado a 10 es aproximadamente 1.000, entonces 2 elevado a 60 es aproximadamente 1.000.000.000.000.000.000 (un trillón!). En total, el tablero debería tener unos 16 trillones de granos de arroz(!!!). Si estimamos que necesitamos unos 16 granos de arroz por gramo, tenemos unos 1.000.000.000.000.000 kilogramos de arroz. Un millón de millones de toneladas de arroz. Según la wikipedia, la producción mundial de arroz es del orden de 600 millones de toneladas, o sea, bastante menos que el hipotético premio al sabio de la historia. La misma historia dice que el sabio le hizo entender al rey del error en que se encontraba, y luego el sabio fue hecho sabio del palacio para consulta permanente del rey.
Ordenes de Magnitud | Manzana Mecánica
Página/12 :: Cultura :: Cómo dividir sin saber las tablas de multiplicar
números binarios
Página/12 :: Cultura :: Cómo dividir sin saber las tablas de multiplicar
Por Adrián Paenza
El 6 de abril de este año (2006), en la contratapa del diario apareció una nota en la que se mostraba cómo hacer para multiplicar dos números sin tener que saber las “tablas”. En realidad, hacen falta tres herramientas: a) saber sumar, b) saber multiplicar por dos y c) saber dividir por 2.
Y la forma de hacerlo, es verdaderamente muy sencilla, y además, divertida.
Desde la aparición del artículo, me propuse tratar de encontrar una manera que permitiera hacer algo parecido pero con la división. Es decir: ¿cómo hacer para dividir dos números, sin tener que aprender primero todas las tablas de multiplicar?
Les planteé el problema que tenía a dos excelentes matemáticos amigos, Pablo Coll y Pablo Milrud, diciéndoles que me sentiría frustrado y pensando que la tarea estaba inconclusa si no podía encontrar cómo dividir. Ellos pensaron, discutieron, me propusieron una forma que peloteamos entre los tres, volvió al campo de ellos y ahora quiero presentar una versión muy buena –encontrada por los dos Pablos que merecen todo el crédito– y que expongo más abajo. Y de paso, estoy seguro que esto servirá de estímulo para los docentes de todo el país que mejorarán lo que voy a presentar, pero tendrán un recurso más en sus manos.
Una vez más, como escribí en el artículo de abril, no se trata de no aprender las tablas. De lo que sí se trata es de discutir si vale la pena someter a los alumnos a la “tortura virtual” de tener que aprender de memoria una cantidad de números a una edad en la que podrían dedicarle ese tiempo y energía a otra cosa, y esperar hasta que la maduración natural les permita deducir a ellos solos qué son las tablas y para qué sirven. Eso sí: como uno no puede (o no quiere) esperar tanto tiempo para aprender a dividir y multiplicar, estos dos artículos ofrecen una manera de solucionar el problema. Debe haber otras mejores y los invito a pensarlas y luego proponerlas.
Allá voy.
Para poder dividir dos números sin tener que saber todas las tablas de multiplicar, repito, hace falta saber sumar, restar y multiplicar por dos. Eso es todo.
Antes de presentar el método, me quiero detener un instante. Le pido que me tenga confianza y que si bien –al principio– puede parecer complicado, es en realidad muchísimo más fácil que dividir en la forma convencional, y aunque sea sólo por eso, porque ofrece una manera alternativa a lo que uno aprendió en la escuela y se corre de lo clásico, vale la pena prestarle atención.
En lugar de entrar en todos los tecnicismos que requeriría un libro de texto o de matemática, voy a mostrar algunos ejemplos con creciente grado de dificultad.
El método consiste en fabricar cuatro columnas de números a partir de los dos números que uno tiene como datos.
Ejemplo 1
Quiero dividir 712 por 31. Escribo primero la primera y cuarta columna y más abajo está la explicación de cómo las obtuve.
La primera columna se obtiene así. Empiezo con el número por el cual queremos dividir. En este caso, el 31. A partir de él, yendo hacia abajo, voy multiplicando por dos en cada paso. ¿Por qué paré en el 496? Porque si multiplico por dos el 496, obtendría un número (992) que es más grande que el 712 (el número que quería dividir originalmente). Justamente, en lugar de poner el 992, pongo el 712.
Es decir, para generar la primera columna, sólo hace falta saber multiplicar por dos, y estar atento para terminar el proceso en el paso anterior a superar al segundo número.
La cuarta columna, se obtiene igual que la primera, pero en lugar de empezar con el 31, empezamos con el número 1. Como se advierte, van apareciendo las distintas potencias del número 2.
Detengo el proceso, en el mismo lugar en donde paraba en la primera columna. Es decir, hasta aquí, todo lo que uno necesita, es saber multiplicar por dos.
¿Cómo se completan las dos columnas del medio? Las escribo y más abajo explico de dónde salieron los números.
En realidad, lo que uno necesita ahora, es saber restar. Empiezo de abajo hacia arriba, restando el número que nos dieron para dividir (712) menos el anteúltimo número de la columna uno (496). Al resultado, lo pongo en la columna dos, y así aparece el número 216.
Ahora, comparo el 216 con el 248. Como no lo podemos restar (porque 216 es menor que 248 y sólo trabajamos con números positivos), entonces, guardamos el 216 en la columna tres.
Ahora, sigo hacia arriba (comparando siempre con la primera columna): como 216 es mayor que 124, entonces los resto. El resultado, 92, va en la segunda columna. Un paso más: como 92 es mayor que 62, entonces los resto nuevamente y tengo el número 30. Otra vez lo pongo en la segunda columna.
Y aquí, como 30 es menor que 31 y por lo tanto, no lo puedo restar, lo vuelvo a poner en la tercera columna.
Ya casi llegamos al final. Si bien falta un sólo paso, convengamos que el proceso –hasta acá– es muy sencillo.
¿Cómo termina? Ahora, todo lo que hay que hacer, es sumar los números de la cuarta columna que tengan un compañero en la segunda. Es decir,
2 + 4 + 16 = 22
Este número es el que estábamos buscando. El resultado al dividir 712 por 31, es 22 y sobra el número 30, que es el que figura en la columna 3 y con el que paré el proceso.
Verifíquelo:
31 x 22 = 682
Como escribí más arriba, el resto es 30. Luego
682 + 30 = 712
Y se terminó. Resumen: se arman cuatro columnas. En la primera y la cuarta se trata de ir multiplicando por dos, empezando en la columna de la izquierda por el número por el que queremos dividir, y en la de la derecha, por el número 1.
Las dos columnas del medio se usan para poner los resultados de las restas que expliqué más arriba. Cuando se puede restar, el número se guarda en la columna dos. Cuando no se puede restar, se pone en la columna tres.
El cociente se obtiene sumando los números de la cuarta columna que tienen un compañero en la segunda. Y el resto, es el número que sobra o bien en la columna dos o en la columna tres.
Ejemplo 2
Queremos dividir 1354 por 129. Escribo la tabla directamente.
El número 322 que figura en la columna 2, resultó de restar (1354 – 1032).
Como 322 es menor que 516, lo tuve que poner en la columna tres.
Como 322 es mayor que 258, los resté y al resultado, 64, lo puse en la columna 2.
Como 64 es menor que 129, entonces lo puse en la columna 3. Y allí terminé de construir la tabla.
Lo único que falta entonces, es calcular el cociente y el resto.
El cociente se obtiene sumando los números de la cuarta columna que tienen compañero en la segunda (o sea, cuando no ha quedado un lugar vacío). Luego, el cociente en este caso es:
2 + 8 = 10
El resto, es el primer número de la columna 3, o sea, 64.
Hemos descubierto entonces, que si uno divide 1354 por 129, el cociente es el número 10 y el resto, es 64. Verifíquelo usted.
Ejemplo 3
Quiero dividir 13275 por 91. Fabrico la tabla como hice en los ejemplos anteriores.
Con esta tabla entonces, conseguimos el cociente y el resto.
El cociente se obtiene sumando los números de la cuarta columna que tengan un compañero en la columna dos. O sea,
1 + 16 + 128 = 145
El resto, se consigue mirando lo que sobró cuando paré el proceso. En este caso, es el número 80.
Verificación:
145 x 91 = 13195
13195 + 80 = 13275
Ultimo ejemplo
Quiero dividir 95837 por 1914. Construyo, entonces, la siguiente tabla:
El número 34589 resultó de restar 95837 menos 61248.
El número 3965 resultó de restar 34589 menos 30624.
Como 3965 es menor que 15312 y que 7656, lo escribí dos veces en la tercera columna.
Recién ahora, como 3965 es mayor que 3828, los puedo restar, y obtengo el número 137.
Como 137 es menor que 1914, entonces, lo dejo en la tercera columna.
El cociente, como hice en todos los otros ejemplos, se consigue sumando los números de la cuarta columna que tienen un compañero en la segunda. En este caso:
2 + 16 + 32 = 50
El resto, es el último número en donde terminó el proceso (que figura o bien en la columna dos o en la tres). En este caso, es 137.
Verificación:
1914 x 50 = 95700
Y por otro lado, agregando el resto,
95700 + 137 = 95837, que era lo que quería comprobar.
Para terminar, un par de observaciones.
a) No expliqué por qué el método funciona porque aquí no tendría el espacio adecuado, pero a aquellos que estén interesados, todo lo que hay que hacer es replicar lo que uno hace cuando efectúa cualquier división común. Este método opera de la misma forma que el que uno conoce desde la escuela primaria, sólo que se usan (encubiertamente) los números binarios.
b) Más allá de que alguien adopte estos métodos para dividir y/o multiplicar sin tener que saber las tablas, lo que pretendo proponer es que hay vías alternativas para hacerlo. Y hace falta explorarlas para que enseñar las operaciones elementales, no sea una tortura para nadie.
Activities | Computer Science Unplugged
Actividades
Activities | Computer Science Unplugged
The activities are primarily aimed at the five to twelve year-old age group, but they are by no means restricted to this age range: we’ve used them to teach older children and adults too, with little modification.
- Binary Numbers
- Image Representation
- Text Compression
- Error Detection
- Information Theory
- Searching Algorithms
- Sorting Algorithms
- Sorting Networks
- Minimal Spanning Trees
- Routing and Deadlock
- Finite State Automata
- Programming Languages
- Graph Colouring
- Dominating Sets
- Steiner Trees
- Information Hiding
- Cryptographic Protocols
- Public Key Encryption
- Human Interface Design
- The Turing Test
- Phylogenetics Unplugged – Unfinished
- Class Simulation of a Computer – Unfinished
- Intelligent Paper – Unfinished
- Harold the Robot – Unfinished
Simulador de circuitos con puertas lógicas | Microsiervos (Internet)
Rememorando los tiempos de estudiante con Logiclty, un sencillo simulador para probar circuitos con puertas lógicas que aplican el álgebra de Boole.
Simulador de circuitos con puertas lógicas | Microsiervos (Internet)