¿Qué es una computadora?

La vemos a diario, probablemente la usamos todos los días. Hablamos de ella casi a diario. Pero, si viene un niño y te pregunta ¿Qué es una computadora?

es-una-pregunta-muy-dificil

Una computadora es una máquina electrónica cuya función es ejecutar instrucciones, tan sencillo como eso (la naturaleza de esas instrucciones las veremos más adelante). Ahora, te preguntarás. Si una computadora se encarga de ejecutar instrucciones ¿En que se diferencia entonces de una calculadora (que realiza cálculos), un microondas (que calienta la comida en base a unos parámetros que le damos) o un ascensor (al que le decimos hacia donde debe ir)? La diferencia radica en EL PROPÓSITO.

computadora_homero_simpsonLa computadora es una máquina de propósitos generales, es decir, puede ser usada para crear documentos, jugar, navegar ver vídeos, comunicar, calcular, interconectar, entre otros usos menos comunes (como trabajar) 😉

Sin embargo, los límites de lo que es y lo que no es una computadora se han diluido un poco en los tiempos modernos… Celulares, relojes, tarjetas de crédito, tabletas, vehículos, televisores, cámaras fotográficas, cónsolas de videojuegos y muchos otros dispositivos “inteligentes” son también una computadora, ya que tienen los mismos componentes y en ocasiones las instrucciones que llevan a cabo a bajo nivel son las mismas.

Usualmente, al momento de describir una computadora se suele dividir en dos partes Hardware y Software.

Hardware: es todo aquello a lo que puedes golpear cuando estés molesto o algo no funcione. En otras palabras es todo lo físico, lo que se puede tocar.

hardware

Software: Es todo aquello que deja de existir sin un suministro eléctrico. Por ejemplo, un celular apagado sería todo hardware, pero desde el momento que lo encendemos comenzamos a interactuar son su software, así todos los programas y lo que hacemos en esos programas son software. Se podría decir que el software es el conjunto de instrucciones y datos que le dan funcionalidad al hardware.

gordo_friki_software_hardware La pieza de software más importante es el Sistema Operativo. Este es un conjunto de instrucciones y datos que le da una funcionalidad básica a la computadora, además sirve de capa intermedia para que otros programas (software), puedan ser desarrollados y usados en un hardware de manera más sencilla.

Por ejemplo, en el caso de los teléfonos inteligentes un posible sistema operativo sería Android. Android permite usar las capacidades del teléfono de manera básica, brinda un conjunto de “aplicaciones” (programas), que complementan sus capacidades, además ofrece la posibilidad de que programadores (personas que hacen programas), desarrollen nuevo software. Un ejemplo en computadoras personales serían Windows, GNU/Linux, o OS X.

sistemas-operativos

 

 

 

Convertir Rápidamente Decimales a Binarios

Si tienes exámenes de redes o de arquitectura del computador, convertir decimales a binarios de manera rápida es muy importante.

Para el siguiente ejemplo, se usarán números que puedan ser representados en 8 bits, en representación natural, es decir, del 0 (0000 0000) al 255 (1111 1111).

El truco de todo está en la siguiente tabla:

27 26 25 24 23 22 21 20
128 64 32 16 8 4 2 1
_ _ _ _ _ _ _ _

Ahora lo que tienes que hacer es lo siguiente. Colocas un uno (1) en las casillas, de tal modo que la suma sea exactamente el número que deseas, por ejemplo, si quieres convertir el 129 a binario, colocas un uno (1) en las casillas 128 y en la 1, eso suma el 129; así que el número queda: 1000 0001.

Esto funciona para números que requieran pocas sumas, por ejemplo, 67, el cual, sería colocar un 1 en 64 y otros en el 1 y en el 2, lo que sumado sería: 64 + 2 + 1 = 67.

Pero veamos el 127. Cuando tenemos que el número está muy cerquita de una potencia de 2 por debajo (en el caso de 127 está uno por debajo de 128 que es 27), entonces esto producirá un número con un montón de bits en uno. Por ejemplo, el 127 sería 0111 1111, ya que al sumarle 1 sería 1000 0000 que es el valor de 128.

Ahora, supongamos que tengo el 123, lo que podemos hacer es escribir un 127 (que lo conocemos), 0111 1111, y apagamos bits de tal modo que al restárselo a 127 me de el número que quiero, por ejemplo si apagáramos el bit correspondiente al 4 (22), eso le quitará 4 al valor de 127, por ende el número quedaría 0111 1011 127 – 4 = 123, que es el número que estábamos buscando representar.

Ahora, si el número no está cercano a estos trucos, tenemos que construirlo con sumas y restas.

Veamos el 188, pregunto por los dígitos que se ajusten de mayor a menos.
¿188 está por encima de 128? Sí, lo pongo en 1 y le resto 128, 188-128=60.
El número va quedando 1??? ????
¿60 está por encima de 64? No, lo pongo en 0 y pregunto por el siguiente.
El número va quedando 10?? ????
(Note que hasta este punto podemos usar el truco de números que están por debajo cercano a una potencia de 2, no desaproveche estás ocasiones cuando quiera ahorrar tiempo, sin embargo seguiremos para ejemplificar el proceso “largo”).
¿60 está por encima de 32? Sí, lo pongo en 1 y le resto 32, 60-32=28.
El número va quedando 101? ????
¿28 está por encima de 16? Sí, lo pongo en 1 y le resto 16, 28-16=12.
El número va quedando 1011 ????
¿12 está por encima de 8? Sí, lo pongo en 1 y le resto 8, 12-8=4.
El número va quedando 1011 1???
¿4 está por encima de 4? ¡ES IGUAL!, lo pongo en 1 y todo lo demás en cero, ya que, no hay nada más que buscar.
Así que el número quedó 1011 1100.

Otra manera de verlo:
Imagina que tienes una deuda menor de 255 simoleones (§) supongamos §188 y sólo tienes 8 monedas, las monedas que tienes son:
– §128
– §64
– §32
– §16
– §8
– §4
– §2
– §1

Seleccionas las monedas que al sumar su valor den §188 (te aseguro que hay una sola combinación posible. También te aseguro que para todo valor entre §0 y §255 existe una y solo una combinación que suma la cantidad exacta que buscas.

Otro truco es que todo número binario que termine en 1, es impar, por consecuencia toda representación binaria de un número termina en 1. Y es algo lógico, el único bit que suma un valor impar es el último.

Mientras más practiques esto verás las cosas mucho más fáciles, tienes que practicar mucho si quieres ser rápido con esto.

Por: Héctor Guzmán.