Você está na página 1de 74

.......

SU COMPUTADOR
....................CMO FUNCIONA .................Y QU TIENE POR DENTRO JAIME ZULUAGA E

Pgina 1 de 74

....... SU COMPUTADOR
....................CMO FUNCIONA

.................Y QU TIENE POR DENTRO

POR JAIME ZULUAGA E.


Primera edicin tipogrfica 1994 Segunda edicin mejorada 2011 va internet

Pgina 2 de 74

INDICE Pg. 5 Antes de leer: A quin le puede interesar este folleto? 6 El computador: una ciudad en miniatura 7 El lenguaje humano y el lenguaje de las computadoras 8 Plan a seguir para comprender cmo funciona un computador 8 Repaso de sistemas de numeracin 8 El acarreo 11 Acarreo al contar y al sumar en el sistema Binario 12 Ejercicio de suma binaria 12 Resta binaria 13 Ejercicio de resta binaria. 13 Complemento a 1 de un bit 14 Convirtamos la resta en suma 15 Multiplicar = sumar 15 Por qu es ms fcil multiplicar en binario que en decimal? 16 Dividir = Restar 17 Cmo convertir un decimal a binario 18 La coma en el binario 19 El sistema binario, octal, hexadecimal 21 RDENES PARA EL COMPUTADOR El sistema hexadecimal: cdigos para dar rdenes al computador 22 Los registros 24 Operaciones principales y sus Mnemotcnicos 27 El programa anterior visto desde dentro 29 Cmo Trabaja la ALU Operaciones lgicas AND, OR, NOT 33 Lgica negativa 33 Frmulas 34 Ejercicios sobre frmulas OR AND 34 Tablas y operadores lgicos 35 Aplicaciones prcticas: 1) Comparacin de bytes 36 2) Un sumador de dos bits 37 3) Enmascaramiento 38 Repasemos 39 Ejercicios sobre tablas y operadores lgicos 42 Conocida la tabla, buscar la frmula 43 Solucin de algunos problemas sencillos 43 Primer problema: Cmo montar un XOR 44 Segundo problema: Un contador binario 47 Tercer problema: Selector para el cdigo BCD 48 Cuarto problema: Un interruptor selector, multiplxer 49 Quinto problema: Un decodificador
Pgina 3 de 74

50 Un contador hasta tres 51 Problema sexto: Una ROM 51 Problema sptimo: Un basculador (flip flop) 52 Cmo escribir en un basculador. Seal de reloj 52 Basculadores en serie 53 Dado el diagrama del chip, hallar las frmulas y dibujar la tabla 54 LGICA TRANSISTORIZADA Electricidad 55 Todo elemento qumico busca tener ocho electrones en su ltima esfera 56 Cmo generar electricidad 57 Voltaje o Amperaje?, Cmo generar un bit 60 Disposicin covalente y dopado del silicio 60 Diodo bipolar de silicio 61 Puerta AND con diodos 62 Puerta OR con diodos 62 Transistor de silicio 63 Cmo conectar un transistor 64 Circuitos lgicos con transistores Puerta NOT 65 Puerta NOR con transistores 65 Puerta NAND con transistores 66 Un basculador 66 Fabricacin de transistores 67 Tipos de circuitos 69 Fotorreproduccin y chips 70 Decodificadores e interfaces 71 Hemos cumplido 72 Reloj digital 73 BIBLIOGRAFA Y AGRADECIMIENTOS

Pgina 4 de 74

Antes de leer: A quin le puede interesar este folleto? Cuando comenc a estudiar fsica, me entretuve mucho leyendo libros que explicaban diversas mquinas. Asuntos como por qu no se hunde un barco. Cmo se genera la corriente elctrica en un embobinado de alambre que gira cerca a un imn. Cmo los motores elctricos son obligados a su vez a girar cuando pasa corriente por un embobinado cerca a un imn. El micrfono que funciona al pasar pulsos elctricos por un embobinado convirtindole en un pequeo imn que hace vibrar una pequea placa. Recuerdo el disco giratorio con agujeros de Paul Nipkow que descompona una imagen para televisin. La forma cmo se sostiene el avin en el aire con sobrepresin debajo del ala y prdida de la misma por encima (efecto venturi) y la hlice que arrastra al avin por el mismo principio. Trat de hacer un radio a galena con una pirita, un condensador variable y un embobinado por el que me pareca ver danzando las ondas de Ala de avin una emisora de un lado para otro segn variaba el condensador. Si hasta ahora no me ha entendido, le dir que goc mucho al comprender cmo un carro se mueve, sus pistones, el giro preciso del distribuidor para producir la chispa, y el rbol de levas que levanta en el momento oportuno la vlvula para alimentar o expulsar los gases , los engranajes que convierten el movimiento vertical en giratorio. Y antes de eso el mecanismo simple de una locomotora a vapor. Hasta recuerdo el esquema que explicaba una central de veinte telfonos. Al ver en esos libros explicado el funcionamiento de esos aparatos, senta gozo, y crea haber despejado su misterio. Si a usted le gusta la literatura de divulgacin cientfica popular, voy a tratar de explicarle cmo trabaja un computador y cmo ejecuta tal diversidad de operaciones. Personalmente descans acabado este estudio que le participo, pues pude ver un computador por dentro, igual que usted ve cmo funciona su carro. Alguien comentaba que el computador es una mquina ignorante capaz de hacer trillones de malabares con sus tres manos. Se refera al acumulador, al registro X y al registro Y, alma Radio a galena del computador, que en un segundo hacen millones de transferencias. Estas se pueden Motor y dnamo utilizar siguiendo un proceso de comparaciones con tablas, para elegir la mejor opcin. Este mtodo inductivo que parte de mltiples observaciones para resolver problemas, nunca podr superar al mtodo deductivo del hombre, cuyo genio puede intur la verdad de un golpe. L os constructores de la Blue han pretendido crear una mquina a la que ningn ajedrecista pueda ganarle. Por lo que acabo de decir, esto es imposible. Kasparov ciertamente fue derrotado, pero se desat una discusin. Unos decan que hubo fraude, otros que Kasparov se equivoc al tratar de engaar la mquina con jugadas ilgicas para las que no estaba programada. Vea link
Pgina 5 de 74

http://www.ajedrezdeataque.com/04%20Articulos/00%20Otros%20articulos/Computadoras/Kasp arov.htm

De todas maneras, el computador, una gran herramienta para resolver problemas complicados, nunca superar el genio del hombre, que fuera del mtodo inductivo: partir de experiencias conocidas, (al computador se las entregan en tablas) tiene la capacidad deductiva capaz de ver La Verdad en s, o sea intur la esencia, donde se encuentran todas las posibilidades del SER, no slo las ya registradas en una experiencia previa. Esta capacidad intuitiva es la que el hombre del comn emplea para resolver sus problemas. La sabidura no est en saber muchas cosas, sino en aplicar lo que se sabe en el momento oportuno. Este tipo de sabidura, fue alabada por el Evangelio: les diste a conocer a los ignorantes, lo que los sabios no entienden Mt 11,25. El computador: una ciudad en miniatura El computador se puede equiparar a una ciudad, su cableado profuso de electricidad y el trfico de sus calles. Por todo lado se ven cables por donde la electricidad va a todos los puntos de la ciudad. Los electrones, en toda parte que haya un interruptor encendido, entrarn. Si se encuentran una resistencia, se producir el calor de la estufa. Si esa resistencia est en vaco, generar la luz de una bombilla. Si lo que encuentra es un embobinado, all pueden ocurrir varias cosas: puede ser el embobinado de un audfono, entonces traduce los pulsos en sonidos, o puede ser el embobinado de un micrfono, entonces genera sonidos, puede ser el de un motor, entonces mueve una mquina de afeitar o una lavadora, o una licuadora o un pistn que hace vaco en la nevera para que los gases al expandirse en la tubera absorban el calor. Si miras tu computador por dentro, vers que la corriente no va por dos cables como ocurre con el alumbrado de la ciudad. Son autopistas de 8, 16, 32, 64 carriles, enterradas en capas. Se tienden cables finsimos que llevan la corriente y se cubren con una capa. Se perfora en ciertos puntos donde con las paticas de los chips se recoge la electricidad. Se hacen varias capas con sus correspondientes autopistas y sus perforaciones que salen a la ltima capa por donde entran las paticas de los chips. Los chips son bodegas en forma de cucaracha, ver figura, con celdas que detienen la cochips rriente una billonsima de segundo o la retienen si es el caso, mientras esperan que se abran las compuertas AND, OR XOR para direccionar el flujo elctrico hacia otros lados. La corriente es entregada no de forma continua sino por los pulsos dados por un reloj o cristal. Esos pulsos, al estilo del corazn humano, entregan la electricidad a cuotas cuya velocidad se mide en millones de pulsos por segundo llamados hertzios. Cuando enciendes el computador, la corriente pulsante se irriga por todas las pistas como carros veloces que van por las avenidas, son detenidos por semforos y luego parten veloces por todas partes de la ciudad. Los terminales de estas avenidas son diferentes chips con sus funciones especficas: la impresora, el mouse, la pantalla, la unidad de CD, el teclado tienen forma de
Pgina 6 de 74

recibir y almacenar la corriente que a veces se detiene una billonsima de segundo. All todo sucede en micro milsimas de segundo. Al llegar al correspondiente chip al que estn conectadas, encuentran un intrprete, o sea un semforo que segn la corriente que traigan (positivo, negativo), abrir o cerrar determinadas compuertas. El trnsito de la corriente, puede ser detenido o se le abrir una o ms compuertas para que siga su afanadsima carrera por otros cables. Mientras en tu casa, eres t quien enciendes o apagas el interruptor que va a hacer determinada tarea, en el computador se encargan de esto los chips que tienen unas pocas puertas: AND, OR, XOR que combinadas entre s generan lo que se llama La Palabra de 8 slabas (byte) que interpretada en un diccionario (ROM), dir en millonsimas de segundo qu puertas se deben abrir en ese momento para que la corriente siga por el complejo laberinto de carriles indicados y cumplan la misin asignada. Comencemos pues explicando qu es una palabra en computacin. El lenguaje humano y el lenguaje de las computadoras El hombre para propagar sus conocimientos ha sintetizado en forma extraordinaria los smbolos con que los divulga. Con 28 letras del abecedario y unos pocos signos de puntuacin, se pueden escribir todos los libros del mundo. Las matemticas con los diez dgitos y algunos signos como el + (ms) y el (menos), la divisin / escribe operaciones que se entienden aqu y en todo mundo. La msica de todo tipo se puede escribir en un pentagrama con unos pocos smbolos tan precisos que se inventan programas para que la ejecuten. Morse logr con puntos, rayas e intervalos, enviar mensajes a grandes distancias. El lenguaje de las computadoras es mucho ms sencillo y simple que los anteriores. Tiene slo dos signos: el uno (1) y el cero (0) y le gana al de Morse, no slo porque se suprime la pausa como distintivo, sino porque con ellos se ha inventado un idioma (lenguaje) de poqusimas palabras con que resuelven todo tipo de problemas: se escribe, se habla, se interpreta msica, se dibuja, se hacen clculos complicados, se guarda y se busca informacin, se estructuran planos y se hacen vallas y avisos publicitarios.

Alfabeto Binario: 0110 0001 = 97 a 0110 0010 = 98 b 0110 0101 = 101 e 0110 0110 = 102 f 0110 1001 = 105 i 0110 1010 = 106 j 0110 1101 = 109 m 0110 1110 = 110 n 0111 0001 = 113 q 0111 0010 = 114 r

0110 0011 = 99 0110 0111 = 103 0110 1011 = 107 0110 1111 = 111 0111 0011 = 115

c g k o s

0110 0100 = 100 0110 1000 = 104 0110 1100 = 108 0111 0000 = 112 0111 0100 = 116

d h l p t

Pgina 7 de 74

0111 0101 = 117 u 0111 0110 = 118 v 0111 0111 = 119 w 0111 1000 = 120 x 0111 1001 = 121 y 0111 1010 = 122 z La ventaja del sistema binario sobre el Morse es que si vamos a escribir amor sin espacio entre los smbolos, en Morse sera imposible descifrarlo pues son indispensables las pausas para distinguir la M de la O. En cambio en binario: 01100001011011010110111101110010 como todas las letras tienen ocho dgitos, basta cortar la tira cada ocho letras y se sabe de qu letras est compuesto el mensaje. De hecho en el computador, todos los mensajes van en una sola tira y un contador, cada ocho dgitos la corta y la lee. Todos estos lenguajes, a pesar de su sencillez, requieren un entrenamiento para dominarlos. Vamos por lo tanto a hacer un plan para que repase algunas nociones necesarias y as pueda entender y vivir cmo funciona un computador. Plan a seguir para comprender cmo funciona un computador Vamos 1) a familiarizarnos con el sistema binario de numeracin recordando algunas nociones y haciendo algunos ejercicios. 2) vamos a resolver algunos problemas sencillos con operadores lgicos, para entrar de lleno en la forma como el ordenador resuelve los problemas. 3) veremos algunas nociones elementales sobre circuitos electrnicos que lleven a cabo las operaciones AND, OR y NOT. Explicaremos dos programas en lenguaje Basic y un programa sencillo en lenguaje Assembly, para que tenga una idea cmo se le dan rdenes a un computador. Siga con paciencia todos los ejercicios. Son fciles y amenos. Hgase de cuenta que est andando con un nio pues el comportamiento de un computador es muy elemental, y cualquier problema que resuelve sigue pasos sencillos aunque rapidsimos. Repaso de sistemas de numeracin Las manos fueron el primer baco que emple el hombre para contar, y un soldado romano, como un gran maestro, nos hubiera mostrado una mano y dos dedos (VII) para representar el siete, y dos manos y dos dedos (XII) para representar el doce. Los romanos eran expertos para contar con los dedos y sus nmeros son de una lgica maravillosa: IXX (diez y nueve) son cuatro manos menos un dedo y XXXIII (treinta y tres) son seis manos, o sea tres parejas de dos manos invertidas y tres dedos. En un IX se ve perfecto la lgica del diez menos uno, contrapuesto al XI = diez + 1. A la izquierda el I resta y a la derecha suma. Este modo tan lgico y sencillo es muy til en cantidades que lleguen hasta XXXIX. De ah para delante la lgica del cinco desaparece. Nmeros como MMCC, CL, DM no tienen que ver nada con el V. El acarreo
Pgina 8 de 74

En los sistemas modernos de numeracin existe el acarreo que los romanos no conocan. Para explicar en qu consiste el acarreo, partimos de estas nociones conocidas por usted. Recordemos que: 10 x 10 x 10 = 103 Y recordemos que:

Las operaciones anteriores se pueden hacer con cualquier nmero base y se deduce que: 1. Todo nmero elevado a la cero potencia, da uno. Ejemplos: 100 = 1, como qued demostrado

2. Todo nmero elevado a potencia uno es igual a s mismo. Ejemplo: 21 = 2, lo que qued demostrado arriba.

Todo nmero elevado a una potencia negativa, equivale a 1 dividido por el mismo nmero elevado a la potencia positiva, as: 2-2 = 1 / 22, como qued demostrado arriba. 3-7 = 1 / 37, y lo demostramos as: 32 /39 = 3x3 / 3x3x3x3x3x3x3x3x3 = 32-9 = 1/37 3. Todo nmero decimal se puede escribir en potencias de diez as: Sea 543710 un nmero decimal (lo que indicamos con el subndice 10). Lo podemos escribir: 5437,03 = 5x103 + 4x102 + 3x101 + 7x100 + 0x10-1 + 3x10-2 Comprobemos: 5x103 = 5000 4x102 = 400 3x101 = 30 7x100 = 7
Pgina 9 de 74

0x10-1 = 0 -2 3x10 = 0.03 Total 5437.03 Para explicar la suma de dos nmeros decimales 5437 + 3963 visualicemos las casillas del sistema decimal como potencias de 10 as:
4

10

centenas decenas unidades dcimas centsimas 10 102 101 100 10-1 10-2
3

5 4 3 7 3 9 6 3 -----------------------------------------------------------------La suma de 5437 + 3963 es supremamente sencilla: cada vez que en una casilla ajustemos diez, anulamos con cero (escribo cero) y llevamos uno (acarreo) a la siguiente casilla. Fjese bien 7+3 es igual a diez, entonces coloco cero (0), - como quien dice no tengo unidades en esta casilla - y lleva uno a la siguiente casilla- ese 1 en realidad son 10 unidades y queda encasillado en la siguiente columna como una decena -. Eso lo expresamos as: 10 donde el cero indica que no hay unidades, y el 1 ya no significa 1, sino 1 decena. Esto se conoce como acarreo. Sumamos el 1 que acarreamos con las 3 decenas y las 6 decenas que haba en esa columna: 1+3+6= y nos da 10 decenas. Por lo tanto colocamos 0 y estas diez decenas las convertimos en una centena, o sea acarreamos uno a la siguiente casilla. El 1 que acarreamos, subi con diez paquetes de diez, o sea una centena. En las otras dos columnas no hay acarreo pues no alcanzan a sumar 10.

El acarreo es la operacin de poner cero y llevar uno a la siguiente casilla cuando en el sistema que se est contando no alcanza a escribirse el nmero de que se trata. No hay que inventar nuevos signos como hicieron los romanos. En el sistema decimal el acarreo ocurre cada vez que en cualquier columna se llega al tope de diez como lo hicimos en las tres ltimas casillas. En las sumadoras antiguas haba un enganche cada 10 dientes en todos los rodillos. Al dar manivela arrastraba el siguiente cilindro un diente.
Pgina 10 de 74

Acarreo al contar y al sumar en el sistema Binario Cuando contamos estamos sumando uno as 1+1=2; 2+1=3; 3+1=4 y en el sistema decimal hay acarreo cada 9 sumandos 9 + 1 =10 29+1=30 39+1=40. En el sistema binario es ms fcil contar pues siempre que hay dos unos, se coloca cero y se sube un escaln lo que llamamos acarreo: comencemos a contar en binario (los 6 primeros nmeros binarios van en verde y la cantidad que representan en el parntesis): 0 (cero); 0+1=1 (uno); 1+1 hay acarreo porque hay dos unos =10 (dos); 10+1=11 (tres ); 11+1=100 hay acarreo doble. En la unidades hay acarreo, se coloca 0 y sube un 1 que al encontrar otro 1 se convierte en 0 y sube una escala ms (cuatro); 100+1=101 (cinco); 101+1=110 (seis) hay acarreo en las unidades. Vamos a emplear la columna de potencias del 2 para que se d cuenta del acarreo y cmo sube el valor de la unidad binaria. Recuerde que en el sistema decimal el valor sube 10, 100, 1000, 10.000 al acarrear, o sea que el acarreo lleva 10 paquetes de la escala anterior. En el binario sube 2, 4, 8,16, 32, o sea que duplica la escala anterior. (En rojo van los primeros 8 binarios)

Ahora, escribe como ejercicio los nmeros 9, 10, 11, 12 en binario. Para resolver el ejercicio puede emplear dos mtodos: puede mirar el equivalente en cada casilla, o mejor, a partir del ocho binario = 1000 ir sumando unidades. Es el mtodo que debes emplear para acostumbrarte a trabajar como lo hace el computador. Respuestas: 1001,
1010, 1011, 1100

Vamos a sumar los nmeros binarios 10012 y 11012. Para ello visualizamos las potencias del dos y el valor de cada casilla en decimal. Los colocamos debajo del encasillado para sumarlos:

Pgina 11 de 74

Como puede darse cuenta, slo hay acarreo en la primera y en la ltima columna. En ellas se coloca cero y se lleva un uno a la siguiente columna. Para conocer el valor de los nmeros binarios, basta que mire el valor de la potencia del 2 en la columna donde haya un 1 as: El nmero binario 10012 equivale al 9 decimal porque tiene una unidad en la columna de unidades, cero en los grupos de 2 y de 4 unidades, y un paquete en el de 8. En total 8+1 = 9 El binario 11012 corresponde al 13 decimal porque sus columnas suman: 8 + 4 + 0 + 1 = 13. El resultado 10110 tendr que dar 13+9 = 22 en decimal. Probemos sumando el valor de cada columna: 101102 = 16 + 0 + 4 + 2 + 0 = 22 Ejercicio de suma binaria Haga las siguientes sumas de nmeros binarios, y convierta despus todos los sumandos y los resultados a decimal. Constate as que las sumas quedaron bien hechas: 1011 +1 1011 +1001 1111 +1 1011 + 1011 1111 + 111

Respuestas: 11002=11+1=12; 101002=11+9 = 20; 100002=15+1=16; 101102=11+11=22; 101102=15+7=22

Resta binaria Si vamos a hacer la siguiente resta decimal: 83 -79 decimos que el tres presta 1 al 8 para quedar convertido en 13. Realmente lo que presta el tres no es 1 sino un paquete de diez (una decena), por eso queda convertido en 13 y no en 4. Cuando se presta a columna superior, siempre se prestan, en el sistema decimal, diez y no uno como solemos decir por comodidad. Examinando las columnas del sistema decimal vamos a explicar lo que pasa en la siguiente resta: 902 - 327

Pgina 12 de 74

104 103 102 9 --- 3 5

101 0 2 7

100 2 7 5 90

Hemos descompuesto el 902 = 900+0+2 en 800+90+12 = 902 Estas ideas tan elementales, deben quedar claras para que comprenda cmo se resta en binario. Vamos a restar los siguientes binarios: 10102 -- 1012 Para entender esta resta escribimos las columnas del sistema binario 23 22 21 20
8 bajo los 1 de escaln: 4 2 1 y los descompongo as:

23 22
8 4

21 20
2 1

0 1 02 -- 1 0 12

0 1+1 -- 1 0 1

0 1+1 0 0 12 1

0 1 0 1

Observe que el 8 baj prestando dos grupos de 4, y no le qued nada. Y el 2 baj prestando dos 1 y se qued sin nada. Veamos si comprende los resultados de las siguientes restas. Acurdese que al sacar prestado, presta dos y nunca le queda nada al que prest: 1010 -11 111 1001 -11 110 1000 -11 101 1101 -110 111 1111 -1010 101

Ejercicios de resta binaria Trate de hacer las siguientes restas. Convierta los nmeros a decimal y compruebe: 1001 1010 1000 1001 1001 1110 1010 -1 -1 -11 -11 -1 -10 -11
el 2 presta 100 unidades (10 decenas) al 9, toma una decena y queda cona vertido en 12 y deja 9 decenas en la 2 columna. El 902 queda as:

104 103 102 101 100 8 9 12 --- 3 2 7 5 7 5


(1112 = 8 1 = 7); (1112 = 9 2 = 7);

Respuestas: (10002 = 9 - 1= 8); (10012 = 10 1 = 9); (1102 = 9 3 = 6); (10112 = 14 3 = 11); (1112 = 10 3 = 7)

Pgina 13 de 74

Complemento a 1 de un bit A los nmeros del 0 al 9 se les llama dgitos (dedos). Al 0 y 1 (negativo, positivo) del sistema binario se les llama bits (pedacitos). El complemento a 1 de un bit es lo que le falta para llegar a 1. Por lo tanto para hallar el complemento de un bit hay que restarlo de 1 as: el complemento de1 es: 1-1=0 y el complemento de cero es 1-0=1. Para obtener el complemento de un nmero binario basta restar todos sus bits de uno. El complemento de 10000001 ser: 11111111 -10000001 01111110 Para obtener el complemento a uno de cualquier binario, basta cambiar sus ceros por unos y sus unos por ceros. El complemento de 101 ser 010. Convirtamos la resta en suma La metodologa ms correcta para restar, es la de sumar complementos. Por ejemplo: si vamos a restar 14 menos 6, no debemos decir catorce menos seis (14-6), sino salir de 6 hacia adelante buscando el complemento y se dice: a seis le faltan 4 para llegar a 10 y otros 4 para llegar a 14, en total le faltan 4+4=8. Si vamos a restar 29 menos 13, partimos del 13 buscando el complemento y decimos: a 13 le faltan 7 para llegar a 20 y otros 9 para llegar a 29. En total le faltan 7+9=16. La resta de 902-327 que hicimos en la pg 12 es ms fcil hacerla as: 327 a 330 hay 3; a 400 hay 70, y a 900 hay 500. Total 573 y 2 ms para llegar a 902 = 575 Hemos convertido as la resta en una suma. Cuando restamos medimos la distancia que hay entre dos nmeros. Si miramos partiendo del nmero menor hacia delante, es ms fcil apreciarla Con los nmeros binarios se puede hacer el mismo truco: Para restar se colocan tantos unos como cifras tiene el nmero mayor y se saca el complemento del sustraendo (nmero menor) y se le suma al minuendo (nmero mayor). Al resultado se le suma 1 lo que hacemos con un acarreo circular con el resultado. Para hacer las restas anteriores: (1001-1); (1010-1); (1000-1);(1001-10); (1001-11); (111011); (1010-11), procedamos de este modo: 1) Saquemos los complementos de 1,10 y 11 que son los nmeros que se van a restar. Para ello coloquemos cuatro unos que es el nmero de cifras que tiene el minuendo al cual debe alcanzar as: 1111 1111 1111 0001 Complemento 1110 0010 1101 0011 1100

2) Ahora sumamos el complemento al numero de que se va a restar (minuendo) y 3) trasladamos el uno que se recarga a la izquierda a la derecha para sumarlo (acarreo circular). Esta operacin se puede hacer con una orden ROL (Rotate Left), muy usada en Assembly:

Pgina 14 de 74

1001 +1110 10111


3) acarreo

1010 +1110 11000 +1 1001

1000 +1110 10110 +1 111

1001 +1101 10110 +1 111

1001 +1100 10101 +1 110

1110 +1100 11010 +1 1011

1010 +1100 10110 +1 111

+1 1000

Hemos convertido la resta en suma de complemento y acarreo circular. El acarreo circular que veremos se le conoce como complemento a dos. Multiplicar = sumar La multiplicacin equivale a sumar el multiplicando tntas veces como indica el multiplicador. Por Ejemplo: 3 x 5 = 5 + 5 + 5 = 15 Para multiplicar bastara decirle al computador que sumara tantas veces el multiplicando como lo indique el multiplicador. Como el computador puede comparar es fcil programarlo para que haga una multiplicacin como si fuera una suma. Si usted sabe algo de Basic entender este programa para multiplicar 3 x 5: 1. 2. 3. 4. 5. 6. 7. 8. let A = 5 let C = 3
meto en esta casilla el multiplicando meto en esta casilla el multiplicador 3 que va a disminuir en 1 ms abajo

B = C casilla con valor F=A

casilla con valor 5 que va a aumentar en 5 en seguida

F = F + A cada vez que se pase por aqu la F aumenta 5 B = B 1 cada vez que se pase por aqu la B disminuye 1 if B > 1 then go to 5 si lo que hay en B es > 1 debe ir al 5 print A x C = F se imprime el resultado as: 5 x 3 = 15

Explicacin: 1. En la lnea se le dice al computador que en la Casilla A meta un 5. (el multiplicando) 2. Se ordena que en la Casilla C meta un 3. (el multiplicador) 3. En la Casilla B se mete una copia de lo que hay en C. O sea un 3. Este valor va a disminur en 1 cada vez que se pase por el numeral 6. 4. En la Casilla F se mete una copia de lo que hay en A. O sea un 5. Este valor va a aumentar en A , o sea en 5, cada vez que se pase por el numeral 5 5. La Casilla F aumenta el valor en A o sea en 5, ahora F = 10. 6. A lo que hay en la Casilla B, se le saca 1. Ahora el B = 2. 7. Aqu se genera un bucle repetitivo. Si lo que hay en la Casilla B mayor que 1, entonces se le ordena que vuelva a repetir las rdenes dadas desde la lnea 5. El computador repite las rdenes dadas en los numerales 5 y 6, sumando 5 a lo que hay en F y queda 15 y quiPgina 15 de 74

tando 1 a lo que hay en B que queda en 1, entonces el condicional if ya deja pasar porque lo que hay en la Casilla B no es mayorque 1. Mejor dar la orden: if B > C then go to 5 para que funcione con
valores de C<1

8. Se ordena al computador que imprima lo que hay en A, o sea 5. El signo X, lo que hay en C, o sea 3, el signo igual y lo que hay en F. Aparece entonces lo siguiente: 5 X 3 = 15 Por qu es ms fcil multiplicar en binario que en decimal? Vamos a multiplicar los nmeros: 2033 x 1002. Como bien sabe cuando se llega a la multiplicacin por los ceros basta correr a la izquierda tantas cifras como ceros tiene el multiplicador,as: 2033 x 1002 4066 aqu aparece multiplicado por dos el multiplicando + 2033
aqu por cada cero se corre hacia la izquierda un espacio

2037066

Si vamos a multiplicar en binario 11012 por 10012 siga el mismo proceso. Aqu todo se simplifica porque siempre aparecer el multiplicando 1101 uno debajo de otro para ser sumados tantas veces como 1 (unos) tenga el multiplicador 1001, pero corrido hacia la izquierda segn lo exijan los ceros. En computacin esta operacin es muy fcil con una orden que veremos llamada solazar a la izquierda (ASL): 1101 x 1001 1101
el multiplicando aparece multiplicado por 1

1101 aparece multiplicado por el otro1 corrido segn los 0 1110101

Como puede ver es ms fcil multiplicar en binario que en decimal, pues basta sumar el multiplicando tntas veces como 1 (unos) tenga el multiplicador cuidando antes de colocarlos hacia la izquierda tal como se hace en la multiplicacin decimal. Dividir = Restar As como la multiplicacin es una suma repetitiva, como lo vimos arriba, la divisin se puede reducir a restas sucesivas. Dividamos 32/8. Para ello restamos de 32 un ocho. Nos quedan 24. Restamos de 24 otro ocho. Nos quedan 16. Restamos de 16 el tercer 8. Y nos quedan 8. Y sacamos el cuarto y
Pgina 16 de 74

ltimo ocho. O sea que de 32 pudimos sacar cuatro ochos. Por lo tanto en 32 hay cuatro ochos, as: 32 8 = 24 24 8 = 16 16 8 = 8 8 8=0 De 32 se pueden sacar 4 ochos o sea que en 32 hay en total 4 ochos.

El siguiente programa en BASIC para dividir 34/6 sigue el proceso de restas que acabamos de ver: 1. 2. 3. 4. 5. 6. 7. 8. 9. let A = 34 archivamos en la casilla A el dividendo let B = 6 Let R = 0 F= A F= FB R= R+1
archivamos en la casilla B el divisor meto en R un 0. Este es un contador, cada vez le agregaremos 1. en F metemos el dividendo al cual le iremos restando el 6 a F le restamos el divisor subimos 1 al contador para indicar las veces que se pasa por aqu F 6

if F > B or F = B then go to 5 bucle repetitivo: volver al 5 si Print A / B = R


se imprime 32 / 8 = 4

Print y sobra como residuo: F

Explicacin: 1. En la Casilla identificada como A ponemos el valor del dividendo o sea 34. 2. En la Casilla identificada como B se coloca el valor del divisor o sea 6. 3. En la Casilla identificada como R metemos un cero. Vamos a emplear la casilla como un contador. 4. Se coloca una copia de lo que hay en la Casilla A en una Casilla identificada como F, o sea un 34. Esta casilla cada que se pase por el paso 5 se le resta el divisor 6 5. A lo que hay en la Casilla F se le quita lo que hay en la Casilla B. En el primer bucle en F quedara consignado un 28, o sea 34 6 = 28 6. Al contador R se le suma 1. O sea R = 1 al pasar por primera vez el bucle. 7. Aqu se genera un bucle repetitivo: Si lo que hay en F es mayor o igual a lo que hay en la Casilla B, o sea 6, se obliga al computador a volver a la lnea 5 y repetir las rdenes dadas desde ese numeral. Por lo tanto a F = 28 se le vuelve a quitar 6 y queda F = 286=22 y el contador R se le suma 1 o sea R = 2. El bucle se repetir tres veces ms, y entonces F rebaja sus valores a 16, 10, y 4 y el contador cuenta en total 5 restas. Al ser F menor que el divisor B , se le da permiso que pase al numeral 8. 8. Se imprimen los valores de A B y el contador R as: 34/6 = 5. 9. Se imprime lo que qued en F que es el residuo de todas las restas, en este caso 4.
Pgina 17 de 74

A las personas que se les ha olvidado cmo se hace una divisin, pueden seguir este proceso de restas sucesivas para dividir. Cmo convertir un decimal a binario Tenga en cuenta la tabla binaria 27=128 26=64 25=32 24=16 23=8 22=4 21=2 20=1

Si usted quiere saber cmo se convierten a binario, los 8410 y 8510, opere de este modo: A 84 se le pueden quitar 64 que corresponden a la casilla 26.. Colocamos 1 debajo de la casilla 26 y ya del 84 nos quedan 84 - 64 = 20. En la columna 25 que vale 32 colocamos un cero 0 pues de 20 que sobraron, no se puede sacar un paquete de 32. En la casilla 24 colocamos un 1 equivalente a 16 que sacamos de los 20 que nos sobraron, o sea nos quedan 20 16 = 4. Con estos 4 metemos un 1 en la casilla 22 ; As el 84 en binario queda 10101002. Comprobemos: 64+0+16+0+4+0+0=84 Convirtamos ahora el 8510 (el subndice 10 = nmero decimal) a binario: 85 - 64. Sacamos un 1 paquete de 64 y sobran 21 en la columna de 32 no queda nada pues el sobrante 21 no da para un 32 21 - 16. Sacamos un 1 paquete de 16 y quedan 5 en la columna de 8 no queda nada pues el sobrante 5 no da para un paquete de 8. 5 - 4. Queda un paquete en la columna de 4 y sobra 1 en la columna de dos no queda nada pues el sobrante 1 no da para sacar 2 1 es la unidad que sobr y queda de ltima. Luego 8510 en binario es 10101012, Comprobemos sumando columnas: 64+0+16+0+4+0+1=85. Trate de convertir a binario estos nmeros: 2; 3; 8; 9; 17; 32; 24; 64; 34; 65; 16; 20; 10; 12; 14; 15
Respuestas: 102; 112; 10002; 10012; 10102; 11002; 11102; 11112 100012; 1000002; 110002; 10000002; 1000102: 10000012; 100002; 101002:

La coma en el binario Sea el binario 1001.011 que debemos leer. Para ello recordemos las columnas del encasillado binario: 23=8 22=4 21=2 20=1 2-1=1/2 2-2=1/4 2-3=1/8 Si vamos a convertir este binario a decimal bastara sumar columnas as: 8 + 0 + 0 + 1 + 0 + 1/4 + 1/8 = 8 + 1 + + 1/8 = 9 3/8 = 75/8 = 9,38 Si en el sistema decimal corremos la coma, el nmero queda multiplicado o dividido por 10. Si corremos la coma en un binario queda multiplicado o dividido por 2. Hagamos el ensayo con el anterior nmero 1001,011: 10010.11 = 16 + 2 + 1/2 + 1/4 = 18 3/4 = 18.75 = 9.38x2 100.1011 = 4 + 1/2 + 1/8 + 1/16 = 4 11/16 = 4.69 =9.38/2

Pgina 18 de 74

No es muy necesario que usted domine las operaciones binarias, pero es bueno que se familiarice con los nmeros binarios hasta llegar a comprender que el sistema binario es ms sencillo y perfecto que el sistema decimal, pero que conlleva tantos acarreos que slo la velocidad de la luz lo hace prctico. Si usted ha captado la simpleza de este tipo de operaciones aunque por falta de costumbre se le dificulte un poco al inicio, ha logrado el objetivo de este pequeo ensayo de matemtica binaria. Es muy importante que entienda bien lo que viene en seguida.

El sistema binario, octal, hexadecimal Con un sistema de dos seales (binario) que permita la presencia de una sola seal, se pueden dar dos (21=2) seales nada ms. Sean esas dos seales el cero y el uno. Hay un cero o hay un uno: 0 1 Con un sistema de dos seales (binario) que tenga posibilidad de la presencia de las dos seales a la vez, se pueden hacer 22=4 combinaciones. Basta tomar cada uno de los dos signos anteriores y combinarlos consigo y con el otro as: El cero consigo El cero con el uno El uno con el cero Y el uno consigo 00 01 10 11

1
2

Con dos bits se pueden hacer cuatro (2 =4) seales a las cuales se les puede dar cualquier significado arbitrario. Por ejemplo: 00 no hay enemigos 01 hay enemigos a la derecha 10 hay enemigos a la izquierda 11 hay enemigos al frente

Pgina 19 de 74

Un sistema de dos seales donde se permita poner cuatro seales (nyble), dara la posibilidad de 24=16 combinaciones distintas. Para lograrlas basta tomar las cuatro anteriores y cada una combinarla consigo misma, con las otras as: el grupo 00 combinado consigo y con todos los dems da: 00 00 00 00 00 01 10 11 digamos que es digamos que es digamos que es digamos que es 0 1 2 3

el grupo 01 combinado con todos incluyndose a s mismo da: 01 01 01 01 00 01 10 11 digamos que es digamos que es digamos que es digamos que es 4 5 6 7

Los dos grupos que faltan 10 y 11 dan las siguientes combinaciones: 10 10 10 10 00 01 10 11 digamos que es 8 digamos que es 9 digamos que es A digamos que es B 11 00 11 01 11 10 11 11 digamos que es C digamos que es D digamos que es E digamos que es F

Si se permitiera en total 8 seales, las combinaciones posibles seran 2 8=256. Habra que combinar cada una de las 16 anteriores consigo mismo y con las dems comenzando con el 0000 y terminando con el 1111 as: 0) 0000 0000 48) 0011 0000 0110 0000 . 1) 0000 0001 49) 0011 0001 . 2) 0000 0010 50) 0011 0010 El disco, los CD, las USB son bodegas con millones de puntos donde se almacenan 16) 0001 0000 64) 0100 0000 voltajes positivos (1) y negativos (0). La RAM es un chip donde se trae una copia 17) 0001 0001 65) 0100 0001 de esos puntos para interpretarlos y trabajarlos. Esto se hace comparndolos con 18) 0001 0010 66) 0100 0010 Las ROM que son chips con una tabla fija de las palabras, sonidos, colores y oficios bsicos del computador como son buscar, guardar, borrar, trasladar. Por ... ejemplo : Si llega el byte 01001010 a la ROM del teclado, el computador la inter32) 0010 0000 80) 0101 0000 preta como S. El computador maneja un bosque de 0 y 1 011011011 y con su monotona crea un mundo virtual maravilloso de colores, sonidos, trazos, clculos y 33) 0010 0001 81) 0101 0001 leyendas 34) 0010 0010 82) 0101 0010 . ... . 256) 1111 1111

Pgina 20 de 74

Ahora s, imaginmonos al computador recibiendo rdenes de ceros y unos seguidos. S se sincroniza para que reciba un solo bit, ese bit podra decir s o no. La lectura de un slo bit (positivo o negativo) tiene algunas aplicaciones en programacin. Por ejemplo para colocarle el signo positivo o negativo a un nmero. Tambin se emplea para las llamadas banderas. Pero si programamos al computador para que lea 3 seales, tenemos la posibilidad de decirle 23=8 cosas diferentes y emplearlas arbitrariamente para muchas cosas como son hacer msica o contar en sistema octal. Para obtener las posibilidades comenzamos desde cero (000) y fuimos sumando uno. As obtuvimos las ocho posibilidades. Si yo fuera a escribir el nmero octal 725438, con esas tres combinaciones, o a escribir la escala musical, sera muy sencillo: 7 2 5 4 3 111 010 101 100 011 si re sol fa mi En La ROM se le dice al computador que se trata de un nmero octal. As puede escribir cualquier nmero octal por largo que sea. Ahora bien, en vez de nmeros podemos programar una ROM para decirle que nuestros 8 signos son las siete notas musicales, y el cero es un silencio. Podemos enviarlas al computador combinndolas como queramos. Usted puede hacer toda una meloda. Es en la Tabla de la ROM donde el computador sabe cmo interpretar el byte que ha llegado. Un sistema muy empleado es el cortar la tira de ceros y unos cada 4 toques as: 1010/ 1101/ 0011/ Tenemos as una numeracin hexadecimal que en total nos da 24=16 combinaciones posibles. La numeracin hexadecimal es la empleada como cdigo de rdenes en lenguaje mquina. Como se trata de una numeracin con diecisis signos includo el cero, se han empleado para representarla, los nueve dgitos y las seis primeras letras, as: 0 = 0000 5 = 0101 A = 1010 E = 1110 1 = 0001 6 = 0110 B = 1011 F = 1111 2 = 0010 7 = 0111 C = 1100 3 = 0011 8 = 1000 D = 1101 4 = 0100 9 = 1001

RDENES PARA EL COMPUTADOR El sistema hexadecimal: cdigos para dar rdenes al computador Para dar rdenes a un computador, se emplean diferentes lenguajes (basic, cobol, fortran, pascal, logo). Estos lenguajes son compilaciones de una serie de rutinas escritas en assembly, un lenguaje elemental, muy cercano a lo que realmente recibe el computador. Por eso para entender el funcionamiento del computador se debe esPgina 21 de 74

tudiar assembly. Este lenguaje utiliza una serie de cdigos mnemotcnicos que facilitan el manejo de los nmeros binarios con que se alimenta al computador y que constituyen el lenguaje mquina. El lenguaje mquina se escribe en numeracin hexadecimal que se mete al computador a travs del teclado, despus de prepararlo con una pequea orden. Si usted est por ejemplo programando en basic, y quiere meter lenguaje mquina al computador, da la orden poke que le permite meter nmeros hexadecimales en la RAM. Cuando se est escribiendo un programa en el lenguaje mquina, el programador teclea las rdenes en forma de nmeros hexadecimales como con A9. El computador traduce esos nmeros en pulsos binarios as: A 9 1010 1001 El programador da rdenes en sistema hexadecimal para lo cual utiliza un programa ensamblador, y el computador las convierte a binario y las lee por nybles, o sea en bloques de 4. Una orden como la anterior: A9 (cargar el acumulador), solo ocupa un byte, o sea que se puede meter en una Casilla de 8 bits. Hay rdenes que pueden ocupar 2 o tres bytes y el computador tiene que leer dos o tres Casillas que son como tres renglones donde se le dice qu debe hacer. Un computador se maneja con un promedio de 140 rdenes similares a la anterior. Por ejemplo sta: 8D0439: 8 D 0 4 3 9 1000 1101 0000 0100 0011 1001 Como puede ver esta orden ocupa 3 bytes, y con ella se le dice al computador que coloque en la Casilla identificada como 0439 lo que en ese momento tiene en el acumulador. El acumulador es el registro principal del computador, y junto con otros dos registros X y Y, son como las manos que cogen los bytes y los direccionan a grandes velocidades ya sea a la pantalla, ya a la impresora, o los archivan en el disco o en la RAM. Las 140 rdenes que constituyen el llamado Assembly (ensamblador) se pueden sintetizar en unas 60 palabras y sus nemotcnicos. Con 140 claves o cdigos un computador puede hacer todas las cosas que hace. Podemos pues decir que el computador maneja el idioma ms fcil de aprender pues su diccionario no pasa de 200 palabras. Estos Mnemotcnicos se pueden juntar en grupos de operaciones similares que facilitan su aprendizaje como son: load: LD = cargar; push: PH = empujar; transfer: T = transferir; incrementar: IN; store: ST = guardar. Vamos a ver este lenguaje tan simple con el que se da rdenes al computador, pero primero aclaremos algo importante: Los registros En la Unidad Central de Procesamiento (CPU) hay 7 registros muy importantes. Los registros son el alma de computador. Constan de Casillas de memoria con puntos pequesimos donde se guarda voltaje positivo o negativo algunas de 16 bits otros de 8 y un pequeo programa que lo capacita para su funcin. 1. El registro de direcciones o contador PC. El computador es una bodega de almacenamiento con billones de casillas, su nmero actualmente se mide en Gigas. Estas bodegas
Pgina 22 de 74

unas estn en el disco duro, otras en los CD o en las memorias USB, otras en la memoria RAM. Cada casilla de memoria almacena 16 bits y est conectada por un

doble cableado, 1. el bus de direcciones que indica la posicin de la casilla y que la conecta con el Registro Contador encargado de abrirla y cerrarla, y 2. el bus de datos por donde sale y entra la informacin. El registro de direcciones es el encargado de abrirlas ya sea para sacar, ya para meter informacin. Cuando se enciende el computador, el registro de direcciones o contador comienza a contar todas las memorias siguiendo un orden estricto de la primera hasta la ltima. Cuando usted aplica Reset o Ctr/Alt/Del, el registro vuelve a recontar desde el inicio todas las memorias. Este registro es por lo tanto el encargado de numerar todas las memorias que hay en el computador. Toda bodega, o sea directorio, donde haya guardado un programa o un archivo est etiquetada por un nombre que indica el nmero correspondiente de la casilla en que est ubicado, y con estos datos, el registro contador la puede hallar. Este registro al comenzar el conteo de las priPgina 23 de 74

meras casillas, las abre pues all se encuentra el sistema operativo (DOS, Windows) que inmediatamente sube a la RAM desde donde comienza a operar. 2. Registro de bandera (Procesor Status PS) permite saber si ha habido acarreo en una suma o resta, o si el nmero que se origin en una operacin es negativo o positivo, o si una comparacin es verdadera o falsa. Es el registro de las condiciones (if then). Estas cosas se pueden saber leyendo cada uno de los 8 bits del registro con un proceso llamado enmascarado. 3. El acumulador (A) es tal vez el registro ms importante porque mueve casi toda la informacin que va a ser procesada. Cuando el Contador PC abre y cierra Casillas, el que recibe o mete informacin en ellas, es el Acumulador ayudado por el par de registros X y Y que tambin tienen la misin de sostener por breve tiempo en sus Celdillas los datos procedentes de las memorias que van a ser procesados en los circuitos (chips de lgica) del computador. El acumulador ayudado por estos dos auxiliares (los registros X y Y) recoge los datos procedentes de las Casillas de memoria que se abren una a una, y los enva a los circuitos de la ALU (Unidad de Lgica cableada, ver figura) para que all sean procesados. De regreso los recibe ya transformados y los vuelve a archivar en sus Casillas. Estos tres registros son como bandejas, manos agilsimas de prestidigitador, que reciben los datos y los envan a la ALU para procesarlo, y a velocidades no imaginables, los vuelven a colocar en sus estantes. 4. El registro de Pila SP (stack pointer), guarda ciertas direcciones que le entrega el Contador cuando se ve obligado a dejar el orden que llevaba y tiene que ir a abrir Casillas en otros corredores y bloques lejanos. Al volver, el registro de pila le recuerda el nmero de la ltima Casilla que abri, pues como dijimos las Casillas se abren en orden para que de cada una de ellas salga la orden o el dato que all se archiv. 5. Registro de instrucciones, all se carga la orden que debe ejecutar el computador en ese momento, se compara en la tabla de una ROM para interpretarla, y se enva a la ALU a travs de un cableado que se llama buses de control para que la lleva a cabo. Estos registros, como queda dicho, son Casillas cuya informacin no es esttica sino que constantemente estn recibiendo datos archivados en la RAM, los cuales meten en los circuitos lgicos que los procesan y despus los vuelven a entregar a la RAM, y finalmente los guardan en unidades como CD o USB o en el disco duro. Operaciones principales y sus Mnemotcnicos 1) Cargar: una de las rdenes ms comunes, es la de cargar estos registros. Para cargar el acumulador, el registro X o Y, el registro de banderas, la Pila se emplean palabras fciles de recordar: Load (cargar), Push (empujar) y Pull (sacar), Los Mnemotcnicos son: LDA (cargar acumulador), LDX, LDY (cargar registros X y Y), PHA (empujar el acumulador en la Pila), PHP (empujar el acumulador en el registro de banderas), PLA, PLP (sacar: pull, hacia el acumulador, la Pila y el registro de banderas). O se emplea la Palabra TRANSFERIR lo que quiere decir que el contenido que tiene un registro, pasa a otro registro as: TAX (Transfer Accumulator to X); pase lo que hay en el Acumulador al registro X. De idntica manera TAY (pasar del Acumulador a Y), TXA (pase lo que hay en X al Acumulador). TSX y
Pgina 24 de 74

TXS (pase lo que hay en X a la Pila o viceversa). Tambin se emplea la palabra Store (guardar) STA, STX, STY (store acumulator, store register X o Y) que ordena guardar lo que hay en cualquiera de esos registros, en alguna parte de la RAM. Mejor dicho gran parte de las rdenes tratan del traslado de los datos entre registros y memorias. Usted se puede imaginar el computador como un constante correo de datos a travs de los buses, donde los datos pasan por diferentes registros y vuelven a las memorias. 2) Incrementar o disminuir: Los registros X y Y estn diseados para que su contenido pueda ser aumentado o disminuido de uno en uno con las rdenes INX, INY (incremente X o Y) y la orden DEX, DEY (disminuya X o Y). Esta orden es muy til y ya la empleamos en nuestro programa de divisin cuando incrementamos el contador R. Sirve para repetir varias veces un bucle. Equivale al For to Next del Basic. 3) Comparar: operacin muy til en donde funciona el registro de banderas que es el encardado de decir si la comparacin fue verdadera (1) o falsa (0). Esta orden aparece as: CMP, CPX, CPY y Comparan el contenido de lo que hay en el acumulador o en el registro X, o en el registro Y, con el contenido de cualquier Casilla de la RAM que se indique. 4) Saltar: Se dice que un programa salta, cuando se rompe el orden en que el Contador est abriendo las Casillas. Por ejemplo el Reset es un salto, porque el Contador vuelve a comenzar a contar las casillas desde un principio. Cuando se resetea se borra todo lo escrito en la RAM: o sea se descarga el programa. Hay otros saltos que no borran la RAM y que permiten al Contador volver al sitio desde donde salt. Se emplea el Mnemotcnico ingls BRANCH (rama o desvo). Para saber cmo opera, hay que mirar cada uno de los 8 bits del Registro de Banderas que es el que pone las condiciones del salto. He aqu algunas: BCC: salte si no ha habido acarreo. BCS: salte si hay acarreo (branch on Carry Clear o Set). BEQ (Branch on result Equal zero): salte si el resultado fue cero (verdadero: 1). BNE (Branch on result Not Equal zero): saltar si dio 1 (resultado falso). Hay un salto definitivo que no permite devolverse al sitio desde donde se salt y es JMP (jump). En Basic se utiliza Goto y Gosub.

ROR

5) Rotar: rotar un byte a la izquierda o a la derecha o hacerlo girar por el lado derecho o izquierdo, fue lo que empleamos al explicar la multiplicacin que dijimos que cuando se multiplica por cero basta correr hacia la izquierda. El Mnemotcnico es ROL (rotate left), ROR (rotate right).

Pgina 25 de 74

Vamos a escribir un programa sencillo en ASSEMBLY. Para entenderlo mejor escribimos en la primera columna los nemotcnicos que acabamos de explicar (LDX, LDA , STA, INC), en otra columna escribimos la misma orden escrita en numeracin hexadecimal (A2, A9, 9D, E8), en la tercera columna va lo que realmente est leyendo el computador, o sea el nmero binario indicado por voltaje (1) y ausencia de voltaje (0). La ltima columna indica el sitio donde hemos metido el programa, o sea la numeracin las casillas de la RAM donde se encuentra el programa. Con esto lograremos conocer cmo un computador leyendo ceros y unos hace oficios rapidsimo y con habilidad. Este pequeo programa contiene una rutina muy empleada en todos los lenguajes que limpia la pantalla del computador. Todo computador tiene una reserva de memoria que va conectada a la pantalla, de tal forma que lo que ntre en esa memoria, inmediatamente se ve en la pantalla. Supongamos que en su pantalla caben 24 renglones de 40 letras, o sea un total de 24X40=960 letras. En la MEMORIA debe haber 960 bytes reservados para cada punto de su pantalla. Es lo que se llama Mapa de Pantalla (Screen Map). Voy a suponer que el Mapa de Pantalla (Screen Map) de su pantalla est colocado entre las casillas 400 y 1360 de la memoria RAM, lo que da en total 1360 400 = 960 bytes. Para limpiar la pantalla se deben llenar esos 960 bytes del Screen Map con un espacio en blanco (ASCII 32) lo que ejecutar el siguiente programa: Explicacin: La orden LDX 00 (load el registro X con cero) nos carga el registro X con un cero. En numeracin hexadecimal la misma orden se escribe as A2 00, pero en realidad el computador est recibiendo una serie de pulsos elctricos que nosotros representamos por ceros y son 1010 que corresponden a la A y 0010 = 2. Estos 8 bits los metemos en la casilla nmero 2000. El 00 de la orden A2 00 lo tenemos que meter en la siguiente casilla. Esta orden ocupa dos bytes (casillas). La orden LDA 32, nos carga el acumulador con un 32 que corresponde en ASCII al espacio en blanco. Con ese espacio en blanco vamos a limpiar la pantalla. O sea vamos a poner ese blanco en todos los sitios de la pantalla para que borre lo que hay en ella. Suponemos que la pantalla tiene 24 lneas de 40 columnas y que el Screem Map (Mapa de Pantalla) comienza en la casilla 400. La orPgina 26 de 74

den STA 400,X coloca el espacio en blanco que hay en el acumulador en la casilla 400 y as la primera letra del primer rengln de la pantalla, queda borrada. Las rdenes STA 655,X; STA 910,X: y STA 1105,X, colocan el mismo signo a una distancia de 255 casillas adelante una de otra, o sea que la primera letra de los renglones sexto, duodcimo (12) y decimoctavo (18) de la pantalla quedan borrados La orden INX incrementa lo que hay en el Registro X en uno. Como haba cero ahora el Registro X contiene un uno. La orden BNE ordena que si el registro X no es igual a Cero, d un salto a la casilla 2004. Como el registro est en uno, brinca de nuevo a la orden STA 400,X. Ahora la X es uno y la posicin 400,X sube a 401. Lo mismo ocurre con los dems STA cuyas posiciones suben uno, o sea que quedan borradas las casillas 401, 656, 911 y 1106. Vuelve a incrementarse la X. Ahora la X es 2 y la posicin 400, X sube a 402. Lo mismo ocurre con los dems STA cuyas posiciones suben uno, o sea que quedan borradas las casillas 402, 657, 912 y 1107.Se repite el ciclo borrando posiciones sucesivas de la pantalla. Este ciclo se repetir 225 veces entonces todos los bits del Registro X se llenan 11111111 = 225, al incrementarlo una vez ms, hay acarreo as: 11111111 + 1 = 1 00000000 y todos los bits quedan en cero. El condicional BNE al captar el 0 del registro deja pasar el programa a la siguiente casilla 2018 donde acaba el programa despus de haber borrado toda la pantalla. El programa anterior visto desde dentro El dibujo trata de visualizar lo que est pasando dentro del computador cuando va a ejecutar el anterior programa. En el mostramos los diferentes registros y un esquema cmo van conectados, a travs de los buses de control, entre s y al mapa de Video de la RAM (screen map). Podemos ver el registro de instrucciones que es el encargado de recibir los datos y enviarlos a la ROM decodificadora. All hay una tabla o diccionario con todas las rdenes que puede recibir un computador, donde se comPgina 27 de 74

para el dato recibido y al encontrarlo en la tabla, lo manda a ejecutar. Vemos tambin el Registro Contador que movido cclicamente por un reloj cuya velocidad va en megahertzios, es el encargado de abrir las casillas donde se encuentra nuestro programa. 1 El registro Contador, sincronizado por los pulsos de un reloj, abre la casilla 2000 de la RAM y el dato que contiene A2 es recibido por el registro de instrucciones al pie del cual est la ROM decodificadora, en donde hay un diccionario de palabras. Se busca la palabra A2, la interpreta y de inmediato la ejecuta abriendo el registro X. 2.El Contador, movido por el siguiente pulso de reloj, abre la casilla 2001 y de all sale el 0 que entra al registro-X al encontrarlo abierto. 3. El Contador, movido por el ciclo del reloj, abre la casilla 2003 y el Registro de instrucciones recibe el A9. Ayudado de la ROM lo interpreta y lo ejecuta abriendo el acumulador. 4 El Contador, sincronizado por el reloj, abre la casilla 2003 donde est el cdigo ASCII 32 y ste entra al Acumulador al encontrarlo abierto. 5. El Contador siempre movido por los pulsos del reloj, abre la casilla 2004 donde est la orden 9D y el Registro de instrucciones y la ROM codificadora la interpretan y la ejecutan. All se ordena abrir la casilla 400, orden ejecutada por el Registro Contador, y meter en ella el cdigo de borrado ASCII 32 cargado por el Acumulador. Las siguientes instrucciones contenidas en las casillas2007 al 2014 son idnticas a la anterior, lo nico que cambian son las casillas que se abren para recibir el cdigo de borrado ASCII 32. La pantalla comienza a borrarse rapidsimamente. Cuando el contador abre la casilla 2016 el Registro de instrucciones ayudado de la ROM descifran la orden E8, inmediatamente el Registro X que haba sido cargado con un cero se incrementa a 1. El Contador abre la casilla 2017 y all encuentra un condicional y se genera un bucle de repeticiones que devuelven varias veces el programa a la casilla 2004. En cada pasada se va incrementando el contenido del Registro X en una unidad por la orden E8. El constante acarreo de 1 al cabo de 255 repeticiones del bucle llena el registro X con ese nmero 11111111 y al sumarle 1, el acarreo da 00000000 o sea que el registro X queda descargado en 0 lo que permite el paso del programa a la casilla 2018 donde finaliza. Este cambio del valor de la X desde cero hasta 225, hace que el STA de las rdenes dadas en las casillas 2004, 2007, 2011, 2013 aumente tambin subiendo los valores de las casillas del Mapa de caracteres 400, 6555, 910, 1005 donde se va almacenando el cdigo ASCII que borra totalmente la pantalla.

La ROM del teclado se asemeja a los relojes y avisos luminosos encendiendo pequeos LEDs para reproducir las letras. Apenas entra un cdigo en la tabla de la ROM encontrar qu LEDs se deben encender.

Pgina 28 de 74

En la RAM hay una zona reservada para la pantalla llamada Mapa de Video. Todo lo que entre en esa zona, aparecer en la pantalla. A cada posicin en la pantalla le corresponde un byte. Suponemos que en el mapa de video comienza en la casilla 400 de la RAM y termina en la 1360. JAI ocupa las tres primeras casillas o bytes (400 401 y 402). Si su pantalla es de 40 caracteres, ME ocupar las casillas 44O y 441. Si metemos JOSE en las casillas 1357 a 1360, aparecer en el fondo de su pantalla si esta tiene 40 caracteres y 24 lneas. La letra C en pantalla y en la ROM

Cmo Trabaja la ALU

Operaciones lgicas AND, OR, NOT

Ahora s entramos de lleno al alma del computador: La ALU (arithmetic logic unit), unidad
aritmtico lgica, encargada de operaciones como sumar, restar, multiplicar y de ejecutar las rdenes dadas al computador. Vamos a entrar a un tema, muy

sencillo y fcil de entender, de mucha importancia para que usted comprenda cmo es que el computador a travs de la ALU, resuelve con un lenguaje elemental, los oficios tan diversos que debe ejecutar. Para entender la sencillez de las operaciones lgicas AND y OR, miremos las dos tuberas que hemos dibujado. Un 1 quiere decir que pasa el agua, la llave est abierta y un 0, no est pasando o saliendo agua porque alguna llave est cerrada. El agua circular en el primer circuito s y nicamente s ambas llaves estn abiertas. Este tipo de circuito se le llama AND y su tabla de combinaciones es la siguiente: Llave A llave B salida 1 posibilidad: 0 0 0 2 posibilidad: 0 1 0 El smbolo es 3 posibilidad: 1 0 0 4 posibilidad: 1 1 1

Pgina 29 de 74

Hemos analizado las cuatro posibilidades en que pueden estar combinadas las posiciones de las llaves y el resultado. La conclusin es que sale agua si la llave A y (AND) la llave B estn abiertas. En el segundo circuito el agua circular si alguna de las dos o las dos juntas estn abiertas. A este tipo de circuito se le llama OR y su tabla de combinaciones es la siguiente: Llave A llave B salida 1 posibilidad: 0 0 0 2 posibilidad: 0 1 1 3 posibilidad: 1 0 1 4 posibilidad: 1 1 1 Y leemos: saldr agua si la llave A o (OR) la llave B, o si ambas llaves estn abiertas.

El smbolo es

Se pueden construr circuitos NOT y ellos se encargan de apagar cuando se enciende un interruptor. Si analiza el interruptor del circuito A, ver que si se enciende, A = 1, se activa el electroimn, atrae el interruptor del circuito a, y se apaga el bombillo: a = 0. Cuando el interruptor del circuito A, est apagado, A = 0, deja de funcionar el electroimn, se cae el interruptor del circuito a que sostena elevado el electroimn y se enciende el bombillo, a = 1 .

Como el NOT se aplica a un solo interruptor su tabla de combinaciones es esta: NOT A: A salida Primera posibilidad 0 1 El smbolo es Segunda posibilidad 1 0 O sea que el circuito NOT de 1 es siempre 0 y el de 0 es siempre 1. El circuito NOT entrega por lo tanto el complemento del bit. El complemento de A lo representamos con a, el de B con b y en general el complemento de cualquier bit F lo representamos con f . S F=0 entonces f =1. Si F = 1 entonces f = 0. Tambin lo llaman Negado y se dice el Negado de A es A o tambin , el Negado de E es E o tambin

Pgina 30 de 74

Hay un circuito llamado NAND y simplemente es un NOT AND, o sea que a la salida AND se le aade un NOT que invierte el resultado: si sali positivo se vuelve negativo, y si sali negativo, se le aade un circuito que lo vuelva positivo. Hay un circuito llamado NOR y simplemente es un NOT OR, o sea a la salida OR se le aade un NOT que invierte el resultado: si sali positivo se vuelve negativo, y si sali negativo, se le aade un circuito que lo vuelve positivo.

El smbolo: AND y una bolita en la punta

NAND

El smbolo: OR y una bolita en la punta

NOR

Con los anteriores circuitos se puede hacer otro tipo de operaciones lgicas. Una de ellas se llama XOR y su tabla de combinaciones es la siguiente: Interruptor A interruptor B salida Primera posibilidad: 0 0 0 Segunda posibilidad: 0 1 1 Tercera posibilidad: 1 0 1 Cuarta posibilidad: 1 1 0 Permite salir la corriente nicamente si uno de los dos interruptores est encendido. No pasa si ambos estn encendidos o ambos apagados.

Smbolo:

Las operaciones anteriores se pueden hacer con ms de dos entradas. El diagrama muestra circuitos AND y OR de tres entradas (interruptores) y sus correspondientes smbolos.

Salimos del mundo de las matemticas y entramos ahora al mundo maravilloso del lgebra boleana donde si A = 1; B = 1 y C = 1, A+B+C = 1. Ya no da 3 como en aritmtica pues el ms (+) significa que los interruptores estn en paralelo (fig 2) y si A,B,C estn encendidos (1) o alguno de ellos est encendido, pasa la corriente (1). No son 3 bombillos que se encienden. La siguiente operacin A(B+C) = 1(1+1) no es igual a 1(2)=2 como en aritmtica, sino que da 1, pues A(B+C) indica que la corriente est pasando por tres interruptores, uno en serie A y dos (B C) en paralelo. Se tiene que acostumbrar a ver igualdades como sta: A = AB+Ab, lo que ver lgico si piensa en interruptores de corriente elctrica ya sea en serie A.B =(AND) ya sea en paralelo A+B =(OR). Es importante que elabore los ejercicios que le vamos a proponer para que se acostumbre a esta nueva lgebra.

Pgina 31 de 74

Pgina 32 de 74

Lgica negativa Sea A=1010 y B=1100 dos nmeros de 2 o ms bits a los que le aplicamos el operador AND: A AND B a OR b 1 1=1 0 0=0 0 1=0 1 0=1 1 0=0 0 1=1 0 0=0 1 1=1 Si mira la tabla del frente en la que hemos cambiado todos los unos por ceros y todos los ceros por unos, ver que la tabla AND, se convirti en una tabla OR. Ahora bien, si en una tabla OR cambiamos todos los 1 por ceros y todos los ceros por 1, nos sale una tabla AND. Hagamos el ensayo. Sean los mismos nmeros y apliquemos un OR. Al frente copiamos una tabla que tenga los complementos de la primera, o sea ceros donde hay unos y unos donde hay ceros: A OR B a AND b 1 1=1 0 0=0 0 1=1 1 0=0 1 0=1 0 1=0 0 0=0 1 1=1 De lo anterior deducimos que es lo mismo aplicar un AND entre A y B que un NOR entre sus complementarios a y b. La solucin que sigue el segundo camino se llama Lgica Negativa. Frmulas Cuando varias entradas se aplican a un circuito AND, decimos que esas entradas se multiplican. Sean las entradas A=1; B=1 y C=1. Si se les aplica un AND tenemos que:

Si alguna de ellas es de valor cero, por ejemplo C=0, entonces: AxBxC = ABC = 1x1x0 = 0 O sea que el circuito AND equivale a una multiplicacin. De idntica manera el circuito OR se le compara a una suma. Sin embargo la suma booleana no coincide con la suma aritmtica. A OR B lo vamos a representar como A+B. O sea que podemos hacer la siguiente equivalencia:

Podemos sintetizar las dos anteriores operaciones de multiplicacin y de suma booleana diciendo que si alguna de las entradas a un circuito AND es cero, el resultado es cero. Si una de las entradas a un circuito OR es uno, el resultado es uno.

Pgina 33 de 74

Ejercicios sobre frmulas AND OR Los siguientes ejercicios lo van acostumbrando a pensar de manera sencilla cmo resuelve problemas un computador. Recuerde que el complemento de A es a. Si A = 1 entonces su complemento es a = 0 y si A = 0 entonces su complemento a = 1. D l resultado de las siguientes operaciones: 1) A.a= 2) A+a= 3) A.a+ B.b= 4) (A+a) + (B+b)= 5) A+1= 6) B.0= 7) (A+a)(B+b)= Respuestas: 1) A.a= 0 porque si A=1 entonces, A.a=1x0=0 y si A=0, entonces A.a=0x1=0: todo nmero multiplicado por su complemento da cero. 2) A+a=1 porque si A=1 entonces, A+a= 1+0=1 y si A=0 entonces, A+a=0+1=1: todo nmero sumado con su complemento da 1. 3) Segn lo dicho da 0 pues A.a= 0 y B.b=0 y 0+0=0. 4) Da 1. Resolvamos cada parntesis (A+a)=1; (B+b)=1 y 1+1=1. Recuerde que se trata de un OR o suma booleana y cuyo principio es: si una de las entradas es 1, o si las dos entradas son 1, la salida es 1. No confunda el OR con la suma binaria que en este caso dara 102 y que despus veremos. 5) Por lo dicho anteriormente, da 1, pues es un OR con una entrada de uno y aunque la A valga 1, los dos 1 en un OR dan 1. 6) Da cero segn queda dicho que en toda multiplicacin (AND) si uno de los factores es cero, da cero. 7) Da 1 porque A+a=1 y B+b=1 y uno por uno da uno. Tablas y operadores lgicos Vamos a dibujar los operadores lgicos y a mostrar las tablas de los ejercicios que acabamos de hacer. Es muy importante que aprenda a leer las siguientes tablas y a dibujar los operadores. Leamos la tabla 1) F=A.a. Debajo de la A hay un 1 y un O nicos valores que puede tener la A. El primer rengln se lee: si la A vale 1 entonces a=0 y la multiplicacin A.a da 1x0=0. El segundo rengln se lee: si la A vale 0, entonces a = 1 y la multiplicacin A.a = 0. La tabla muestra todos los valores y resultados posibles de la funcin: F=A.a. Si mira el dibujo el AND est alimentado por A y su complemento. El circuito dibujado resuelve tambin todos los valores posibles de la misma funcin. Leamos la funcin 3) F=A.a + B.b Debajo de AB estn todos los valores posibles de estas letras 00 01 10 11. El primer rengln de la tabla se lee: Si A=0 y B=0 entonces a=1; b=1; Aa=0x1=0; Bb=1x0=0; Aa+Bb=0+0=0. Leamos el ltimo rengln: Si A=1 y B=1 entonces a=0 y b=0; Aa=0 y
Pgina 34 de 74

Bb=0 y por supuesto Aa+Bb=0. L a tabla contiene todos los valores posibles de la funcin F=A.a+ B.b, y el circuito dibujado da la solucin a todas esas posibilidades. Lea como ejercicio, y compruebe la veracidad de las siguientes tablas y sus circuitos: .

Aplicaciones prcticas: 1) Comparacin de bytes Supongamos que en el registro X tenemos el siguiente byte 11100111 y en el acumulador tenemos otro byte. Queremos saber si ambos bytes son iguales o no. Para saberlo enviaremos ambos bytes a un circuito XOR y luego los bits del byte que salga, los procesaremos con la tcnica conocida como cascada: 1) coloquemos en el acumulador un byte igual al que hay en el Registro X: 11100111 y enviemos ambos bytes a un circuito XOR:

A los bits del byte resultante 00000000 le aplicamos OR tomndolos por parejas en cascada as: El resultado fue cero. O sea que cuando ambos bits son iguales, esta tcnica nos dar cero como resultado.
Pgina 35 de 74

Ahora apliquemos la misma tcnica pero carguemos el acumulador con un byte diferente: Registro X 11100111 Acumulador 01110101 X XOR Acumulador 10010010 Apliquemos a los bits de este byte resultante un OR en Cascada. Si da 1 entonces los bytes que haba en el Acumulador y en el Registro X eran diferentes: La comparacin nos dio un 1, o sea que los bytes son diferentes. 2) Un sumador de dos bits Vamos a ver otra aplicacin sencilla: Tenemos dos seales A y B de un solo bit. Queremos sumarlas con suma aritmtica (en la suma aritmtica 1+1 = 102 , hay acarreo), no booleana. ( en la booleana 1+1= 1 no hay acarreo) . He aqu las cuatro posibilidades y el resultado: Seal A seal B resultado Primera posibilidad 0 + 0 = 0 Segunda posibilidad 0 + 1 = 1 Tercera posibilidad 1 + 0 = 1 Cuarta posibilidad 1 + 1 = 2 (102, o sea O y acarreo). En la tabla se encuentran todos los valores y resultados posibles de la suma de los dos bits. Leamos el primer rengln de la tabla: Si A=B=0, la suma A+B=0, y AxB=0. El segundo rengln: Si A=0 y B=1, la suma A+B=1, y AxB=0. El tercer rengln A=1 y B=0 entonces A+B=1, y AxB=0. Hasta este rengln no hay acarreo, el cual detectaremos con la columna A.B. En el ltimo rengln AB=11 la suma A+B da 0 porque hay acarreo (o sea el 1+1=0 y acarreo). La tabla A.B es un AND que nos detecta el acarreo y lo coloca en el del segundo nivel 10. Los cuatro resultados posibles de la suma de los dos bits (0+0; 1+0;0+1;1+1) salen representados por los nmeros 00 01 01 10 por las puntas del AND y del XOR as:. AB A+B A.B 00 01 10 11 0 0 0 1 0 1 1 0

Como puede ver el chip tiene dos salidas XOR para unidades y AND, segundo nivel por si hay acarreo

Pgina 36 de 74

Para aprender a resolver problemas con los operadores lgicos AND OR y NOT debe familiarizarse con las tablas de combinaciones, las frmulas y los operadores que las representan. 3) Enmascaramiento Veamos la aplicacin de la tcnica de enmascarado. Tenemos en el registro de Banderas cualquier byte que desconocemos. Por ejemplo el 01011101. Deseamos conocer si en el ltimo bit de la derecha, llamado de Acarreo, hay un cero o un uno. Aplicamos un AND con el nmero uno (00000001) con el fin de borrar todos los dems bits: Registro Banderas = 01011101 nmero 1 = 00000001 Registro Banderas AND 1 00000001 El resultado nos dar uno si hay un uno, o cero si hay un cero. En este caso nos ha dado un uno. La tcnica del enmascarado es muy empleada para leer los bits del Registro de Banderas. Nos parece importante que usted conozca ms sobre lo que hace cada bit del Registro de Banderas, y por qu el inters de conocer si hay un = 0 o un 1 en alguno de los 8 bits de ese registro. El Registro de Banderas PS (Procesor Status) o simplemente P (Procesor), no est diseado para recibir datos de la RAM sino de la ALU. Sus ochos bits enumerados del 0 al 7 se les distingue con las siguientes letras: 7 N 6 V 5 4 B 3 D 2 I 1 0

Z C

El bit 0 Carry Flag, bandera de acarreo se pone en 1 cuando hay un acarreo de suma y en cero cuando el acarreo es de resta. Antes de sumar se le debe colocar en cero con la orden CLC (Clear Carry). Y antes de restar se le debe colocar en uno con la orden SEC (Set Carry). Las rdenes BCC (Branch on Carry Clear) o la orden BCS (Branch on Carry Set) son muy empleadas en programacin y se ejecutan al leer este bit que acta como una bandera que da o prohbe el paso en un bucle Goto. Nosotros la empleamos en nuestro programa para limpiar la pantalla. El bit 1: Zero Flag. Este bit se pone en 1 siempre que una suma, una resta, una comparacin, dan 0. O sea, toma como verdadera la comparacin. Si el resultado es otro, se pone en cero. La orden BNE (Branch if Not Equal) es un condicional muy empleado y ejecutar un salto si el bit se mantiene en 0. La orden BEQ (Branch if Equal) dar como verdadera la comparacin si muestra un 1 y entonces el bit acta como una bandera que ordena un salto.

Pgina 37 de 74

El bit 2: Interrupt Disable, Bandera de interrupciones. Cuando un computador est trabajando, a veces se le puede interrumpir en su tarea para que emprenda otra: otras veces no porque esto causara una catstrofe. Para que esto no suceda se emplea este bit. Bit 3: Decimal Mode Flag. Este bit sirve para colocar el Modo Decimal y de coma flotante. Bit 6: Overflow Flag. Bandera de acarreo entre el bit 6 y 7. Cuando se estn empleando signos en los nmeros, se debe tomar el acarreo entre el bit 6 y 7 y no en el bit 7. Bit 7: Negative flaq. Esta bandera se pone en 1 si el resultado de una operacin es negativo y en 0 si es positivo. Se utiliza mucho en condicionales. Todos los condicionales que se emplean en programacin Basic, tienen que ver con este registro. En los pequeos programas que hemos explicado tanto de Basic como el de lenguaje Assembly, haba condicionales que devolvan el programa y hacan repetir rdenes ya ejecutadas (bucle). Por eso nos detuvimos a explicar este utilsimo recurso que emplea la ALU para dar ciertos resultados. Ahora bien para leer cualquier bit de este registro, se le aplica la operacin lgica AND (enmascarar) y un nmero segn el bit que se desee leer as: Para leer el bit cero AND 1 (00000001) Para leer el bit dos AND 2 (00000010) Para leer el bit tres AND 4 (00000100) Para leer el bit cuatro AND 8 (00001000) Para leer el bit cinco AND 16 (00100000) Para leer el bit sptimo AND 128 (10000000) Pues con ese AND se suprimirn todos los dems bits, menos el que se pretende leer que si es cero, con el AND dar cero, y si es uno dar uno. Hemos visto as otra sencilla aplicacin del AND. Repasemos Qu es un registro Un registro es una casilla normalmente de 8 bits en los micros que est en la CPU. Cada registro cumple una misin diferente. El contador que tiene 16 bits a travs de los buses de direcciones, enumera, reconoce y abre un total de 216=6556 casillas. El registro de instrucciones es el primero que se abre. All guarda la orden que a travs de un decodificador (ROM o tabla fija de instrucciones) es interpretada y llevada hasta la ALU por unos buses internos, llamados buses de control para que la ejecuten. El acumulador y los registros X y Y reciben, a travs de los buses de datos, los contenidos de las casillas de la RAM que ha abierto el registro contador, los envan a la ALU, los recogen ya procesados, y los guardan. El registro de Banderas est conectado con la ALU y avisa si ha habido acaPgina 38 de 74

rreo, si al comparar dos bytes resultan iguales. Se utiliza para comparar el byte recogido por el acumulador y sus dos registros auxiliares X y Y, con las rdenes o caracteres escritos en la ROM e interpretarlo. Es un registro muy importante pues con l se aplican las condiciones if then (si tal bit est en 0 o en 1 vaya a tal casilla). Le dice a la ALU si debe leer los nmeros en binario o en decimal. Para leer cada bit del registro de banderas, se le aplica a su contenido un AND con los nmeros 1,2,4,8,16 en binario segn el bit que se desee leer, para saber si la condicin sigue vigente. El registro Pila recuerda al registro contador, la casilla en que iba, cuando por alguna circunstancia se va a buscar rdenes en casillas lejanas. Si nos metiramos dentro del computador, veramos traspasar continuamente datos de las Memorias a los Registros y de stos a la ALU, cortados en paquetes de bits por el ciclo rtmico de un reloj, con una precisin y velocidad impresionantes. Bsicamente la operacin fundamental de un computador es trasladar cargas de un lado para otro. Las mete en unos circuitos lgicos en determinado orden segn el efecto que se desee. Estos circuitos que estn en la ALU, hacen las operaciones lgicas XOR, OR, AND, NOT. A travs de ellas comparan, suman, restan. Normalmente a la ALU entran dos bytes que son sumados, restados, comparados, girados; y se entrega un resultado. Por eso se le representa como una V, con dos entradas y una salida. Todo este movimiento se hace a travs de unas 140 palabras claves escritas en hexadecimal (A9, 8D0) e interpretadas en binario por el computador (1010 1001; 1000 1101 000) que se pueden reducir a unos 10 esquemas que contienen las funciones principales como cargar, incrementar, comparar, saltar, rotar, sumar, restar. Ejercicios sobre tablas y operadores lgicos Complete los siguientes esquemas:

Respuestas: a) 1; b) 1; c) 1; d) 0 f) 0;

g) 1; h) 1.

Complete los siguientes esquemas y escriba sus frmulas con los resultados: a) b) c)

d)

Pgina 39 de 74

Respuestas: a) A.A = A; b) A+A = A; c) a.A = 0; d) a+A = 1.

Escriba las frmulas y haga la correspondiente tabla de todos los valores posibles de los siguientes esquemas: a) b)

c)

d)

Respuestas:

Los siguientes son teoremas del lgebra booleana muy empleados para simplificar expresiones: 1) X = XY + Xy 2) X= X + XY 3) X = (X+Y) (X+y) 4) X = X (X+y) 5) XY = (X+y)Y 6) X+Y = Xy+Y Si elaboramos las tablas de combinaciones, y dibujamos los diagramas de las anteriores ecuaciones nos daremos cuenta de que es cierta la igualdad que enuncian: Inclumos algunas respuestas:

Pgina 40 de 74

Pgina 41 de 74

Conocida la tabla, buscar la frmula Ya hemos aprendido, dada una funcin, a desarrollar la tabla con todos los valores posibles y dibujar los operadores que la ejecutan. Vamos ahora, conocida la tabla, a buscar la frmula y dibujar los operadores que la ejecutan. Este paso es bsico para comprender cmo se solucionan los problemas a travs de un computador. Comencemos con un sencillo problema que le vamos a entregar al computador para que lo solucione: Por las puertas A y B de un almacn, estn constantemente entrando personas y necesitamos saber cundo se abre la puerta A, lo que indicaremos encendiendo un bombillo F siempre que la puerta se abra. Escribamos la tabla que representa todas las posibilidades en que se pueden encontrar las puertas y la reaccin que tendra el bombillo F. El 1 indica AB F que se abri la puerta A o 1. 0 0 0 a.b = 0 al frente de cada lnea va el producto A.B 2. 0 1 0 a.B = 0 fjese que cuando A = 0, colocamos a B y el 0 indica que la 3. 1 0 1 A.b = 1 fjese que cuando B = 0, colocamos b puerta est cerrada y que 4. 1 1 1 A.B = 1 el bombillo est apagado. Una vez elaborada la tabla de todas las posibilidades, para resolverla, se escribe delante de cada rengln el producto del valor de A por el de B. Hechas las multiplicaciones y su resultado, se puede resolver la funcin de dos maneras: 1) Se suman todos los productos que den 1. En el ejemplo seran las lneas 3. y 4. y la solucin sera: F = A.b + A.B. La solucin nos est diciendo que el bombillo F da 1 (est encendido) slo en dos casos: Cuando A est abierta y b cerrada, o cuando A y B estn abiertas. 2) Se suman todos los productos parciales que den 0 que en el ejemplo corresponden a las lneas 1. y 2. y la respuesta sera el complemento de la anterior: f= a.b+ a.B. La frmula nos dice que el bombillo f est apagado, slo en dos ocasiones: Cuando a y b estn cerradas o cuando a est cerrada y B abierta. Ejercicio: escriba las frmulas que resuelven las siguientes tablas: 1) A B
00 01 10 11 F 1 1 0 0

2) A B
00 01 10 11

F 0 0 0 1

3) A B
00 01 10 11

F 1 1 0 1

Respuestas 1) F = ab + aB; 2) F = AB; 3) F = ab+ aB + AB, o si usted prefiere saca las frmulas complementarias: 1) f = Ab + AB; 2) f = ab + aB + Ab; 3) f = Ab.

Pgina 42 de 74

Solucin de algunos problemas sencillos El procedimiento para resolver problemas con operadores lgicos, puede ser el siguiente: 1) Se hace una tabla de todas las combinaciones posibles. 2) Se buscan las frmulas que den 1. 2A) Si usted prefiere busca las frmulas que den 0, y sigue la lgica complementaria. 3) Se simplifican las frmulas. Hay varios mtodos para ello. Un mtodo muy conocido son los mapas de Karnaugh. Mostraremos algunos. No los explicamos; slo lo dibujamos como memorndum para quienes los estudiaron. Si usted no est muy familiarizado con la simplificacin, le recomendamos el libro de Charles Roth que citamos en la Bibliografa, o consulte en Youtube: Karnaugh, o pase por alto este punto y estudie los diagramas de los operadores y analice las tablas correspondientes que dibujamos. All encontrar el problema resuelto en forma fcil de comprender. 4) Para comprobar resultados, se hace el diagrama de los operadores y la correspondiente tabla de combinaciones. Primer problema: Cmo montar un XOR El XOR lo podemos construr con AND y un OR, por eso su signo tiene un + metido en crculo (suma y multiplicacin). 1) El primer paso es hacer la tabla de combinaciones de un XOR. 2) Al frente de cada lnea colocar el producto correspondiente que luego aparecer en la frmula: 3) Para resolver la tabla sume todos los productos que dan 1 o sea las lneas 2) y 3): F = aB + Ab
3A) O si prefiere, sume productos que dieron 0, o sea la lnea primera y ltima: f = ab+ AB

4) Dibujar la tabla y el diagrama de los operadores de la frmula: F = aB + Ab

Como ejercicio dibujemos ahora la tabla y el diagrama de los operadores de la de la segunda frmula: f = ab + AB

Pgina 43 de 74

f Como puede ver, la segunda solucin da como resultado los complementos de la anterior. Es un NOT XOR. Para que esta solucin coincida con la anterior, basta aplicar un NOT al resultado final. Segundo problema: Un contador binario Sean A B C tres bombillos que se encienden y apagan, y D E los dos bit de un contador binario que nos dice cuntos bombillos hay encendidos. 1) Para resolver el problema, primero hacemos una tabla de tres entradas (ABC) que nos indique todas las combinaciones posibles en el encendido de los bombillos y de dos salidas o funciones que representen la respuesta del contador D E. Si no hay ningn bombillo encendido, el contador marcar el cero binario (002), si hay un bombillo marcar 012, si hay dos marcar 102 ,y si hay tres marcar 112, o sea el tres binario. Estos nmeros aparecen debajo la columna D E. La tabla nos muestra todas las posibilidades desde cuando no hay ningn bombillo encendido 1) 000 hasta cuando estn los 3 encendidos 8) 111. En total 8 posibilidades. 2) El segundo paso consiste en hallar las frmulas. Como hay dos salidas, D y E primero resolvemos la D y luego la salida E. ABC 1) 0 0 0 2) 0 0 1 3) 0 1 0 4) 0 1 1 5) 1 0 0 6) 1 0 1 7) 1 1 0 8) 1 1 1 D E 0 0 0 1 0 1 1 0 0 1 1 0 1 0 1 1 Como podemos ver la D se puede resolver por la suma de las frmulas de las filas 4, 6, 7,8 que dan 1. La funcin total es: D = aBC + AbC + ABc+ ABC
Si usted prefiere resuelve por las filas que dan cero (1,2,3,5): d= abc+ abC + aBc+ Abc

De idntica manera la funcin para resolver la E y la e son las siguientes: E = abC + aBc + Abc+ ABC
e= abc + aBC + AbC + ABc

3) Las funciones anteriores se pueden simplificar por un proceso que se llama mapas de Karnaugh. El tema de cmo simplificar una funcin con los mapas de Karnaugh lo puede encontrar en Youtube, o pasarlo por alto. En seguida le damos algunos link que le ensearn a utilizar la tcnica de los mapas de Karnaugh para simplificar funciones booleanas:
http://www.youtube.com/watch?v=afzcRErfIGI http://www.youtube.com/watch?v=QJOnkyXJBc4&feature=related http://www.youtube.com/watch?v=QJOnkyXJBc4&feature=related Pgina 44 de 74

Para aprender a simplificar las funciones tiene que ver varios videos o como puede darse cuenta por uno de los links, hay programas que le simplifican la funcin. No es necesario que aprenda la tcnica de simplificar funciones para el propsito que nos hemos propuesto de entender cmo es que funciona un computador y cmo resuelve los problemas que se le proponen. Las dos funciones que en seguida le presentamos, equivalen a las de arriba y han sido simplificadas. Como sera largo explicar cmo se simplificaron, mtodos que puede hallar en youtube si busca la palabra Karnaugh, nos contentaremos con evaluar su veracidad, lo que haremos en el punto 4. D=AB+BC+AC

E=abC+aBc+Abc+ABC

4) El ltimo paso es hacer las tablas con todos los valores posibles y dibujar las correspondientes puertas AND y OR. En la pgina siguiente le indicamos paso por paso cmo dibujar las puertas. All se puede dar cuenta, el proceso sencillo a seguir para construr un chip que una vez acabado, es difcil de entender. Mientras lo vamos dibujando, lo entendemos, pero una vez dibujado, es imposible interpretarlo. Como la tabla completa de valores es demasiado larga, vamos a conformarnos con verificar la veracidad del resultado en las mismas frmulas. Supongamos que los bombillos A y B estn encendidos, o sea que A=B=1, y C est apagado: C=0. DE tiene que dar el dos binario, o sea que la D=1 y la E=0 para que el resultado sea 102. Para verificar, coloquemos estos valores en las frmulas: D = AB + BC + AC = 1x1 + 1x0 + 1x0 = 1 E = abC + aBc+ Abc+ ABC = 0x0x0 + 0x1x1 + 1x0x1 + 1x1x0 = 0 Si va a verificar el problema por las frmulas complementarias, tiene que tener en cuenta que los resultados dan un NOT, o sea dan d y e. Si lemos DE como dos (10 2), en los complementarios d e nos dar: 012, que es el complemento o sea un bombillo apagado.

Pgina 45 de 74

Pgina 46 de 74

Tercer problema: Selector para el cdigo BCD Dijimos que el sistema hexadecimal no es compatible con el decimal. Un cdigo hexadecimal consta de cuatro entradas A B C D. Todo lo que entre por A se considera que es un 8, por B se considera que es un 4, por C un 2 y por D una unidad. As 1011 equivale a 8+0+2+1=11, nmero dgito hexadecimal que se representa con una B. En decimal no existe un dgito para el 11 y este nmero hay que anularlo para que no entre en clculos hechos en cdigo BCD. Todos los nmeros que suban de 9 deben anularse. Otra forma del cdigo Hexadecimal es darle a A B C D estos valores 6, 3, 1, 1. O sea todo lo que entre por A se considera un 6, lo que entre por B equivale a un 3 y lo que entre por C y D son unidades. As el nmero 1011 que antes anulamos, dara: 6+0+1+1=8, tendra entrada en la nueva tabla. Hagamos dos tablas para ambos sistemas, y un detector que anule las entradas no permitidas:

La F1 la G1 nos dicen cundo el nmero pertenece al sistema. La F2 o la G2 lanzarn una seal cuando detecten que el nmero no pertenece al sistema. El detector de error lo haremos con la G2. Si por ejemplo G2=1001 o sea 6+0+0+1=7, lo dejar pasar. Pero si detecta G2=1010 que da tambin 7=(6+0+1+0) no lo dejar pasar pues no puede haber dos cdigos que tengan el mismo valor. G2 = abCd+ aBCd+ AbCd+ ABcD + ABCd+ ABCD Despus de simplificar por los mtodos de Karnaugh, la frmula y el esquema de puertas es el siguiente:
Pgina 47 de 74

Como ejercicio puede hacer una tabla para el BCD 5 2 1 1, en que todo lo que entre por A valga 5, lo que entre por B valga 2 y lo que entre por C y D valga 1. Puede hacer otra tabla BCD 2 4 2 1. Respuesta: En la tabla BCD 5 2 1 1, los nmeros del 0 al 9 seran: el 0000, 0001, 0011, 0101, 0111, 1000, 1001, 1011, 1101, 1111. Los dems deben anularse por repetidos. Cuarto problema: Un interruptor selector, multiplxer Sean dos entradas A y B y un interruptor C que consideramos tambin como una entrada que puede ser la seal de un reloj. Y una salida F. Cuando el pulso del reloj sea 1, F tendr el valor de B, y cuando el F pulso del reloj sea 0, F ten- A B C 0 F = aBC + Abc + ABc + ABC dr el valor de A. Hagamos 0 0 0 001 0 f = abc + abC + aBc + AbC la tabla de combinaciones 010 0 de lo propuesto: 011 1 100 1 101 0 110 1 111 1

La simplificacin de la frmula y el correspondiente esquema: Adicionamos el esquema del multiplxer

En seguida presentamos varios multiplxer en serie donde la entrada del reloj aparece por un lado, operando como un interruptor. El funcionamiento es el siguiente: Cada que el reloj est con seal uno, saldrn
Pgina 48 de 74

las seales B1 B2 B3 B4. Cuando la seal sea cero, saldrn las seales guardadas en A1 A2 A3 A4. Recordemos que los pulsos del reloj son importantsimos para el funcionamiento del computador y como decamos al inicio van medidos en Megahertzios.

Un multiplxer puede tener dos, tres o ms interruptores. Si tiene dos interruptores puede manejar 22=4 entradas, y si 3 puede manejar 23=8. Quinto problema: Un decodificador Tenemos cuatro entradas que van a dar los nmeros del 0 al 9. Con un selector de error, slo se va a permitir las diez primeras entradas y se anula el resto de entradas posibles que son en total 24 = 16. Dibujemos la tabla con las 16 posibilidades y coloquemos al frente las 10 posibles as: Si se enciende la salida cero, diremos que es el cero. Si la dos, diremos que es el dos. Y as la salida 4=4... y si se enciende la salida 9 es aviso de que ha entrado el nmero 9. He aqu la tabla de las combinaciones posibles de las cuatro entradas que dan como resultado el BCD (cdigo decimal binario). DCBA S0 0000 1 0001 0 0010 0 0011 0 0100 0 0101 0 0110 0 0111 0 1000 0 1001 0 1010 0 1011 0 1100 0 1101 0 1110 0 1111 0 S1 S2 S3 S4 S5 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 S6 S7 S8 S9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Pgina 49 de 74

Al desarrollar la frmula sale una estructura que podemos simplificar con el siguiente esquema de un decodificador de tres entradas y ocho salidas: S0 = abc S1 = abC A S2 = aB c S3 = aBC B S4 = Abc S5 = AbC C S6 = ABc S7 = ABC Un contador hasta tres Para ver el proceso cmo se elabora un decodificador vamos a hacer un contador de 2 entradas y 4 salidas que slo puede contar hasta tres. Cuando est en cero (00), se encender S0, cuando indique uno (01) se encendeA B A B S0 S1 S2 S 3 r S1, cuando indique 2 se encender S2, y 00 1 0 0 0 S0 = ab el tres se indicar al 01 0 1 0 0 S1 = aB encender la salida S3. 10 0 0 1 0 S2 = Ab He aqu la tabla de combinaciones que 11 0 0 0 1 S3 = AB plantea lo propuesto: S1 S2 S0

S3

El dibujo de la derecha muestra el esquema de operadores lgicos que resuelve el problema y junto a la tabla, el smbolo con que se representa un decodificador de 2 entradas y 4 salidas.

Pgina 50 de 74

Problema sexto: Una ROM

Ya hemos elaborado un decodificador de 4. Ahora le vamos a decir que cuando salga el uno encienda una luz, cuando salga el dos, encienda dos, y cuando salga tres, encienda tres, y cuando salga el cuatro, encienda cuatro luces. Para ello necesitamos una ROM. Una ROM es una Plantilla ya elaborada segn determinado patrn para lograr un efecto. Sean S0, S1, S3, S4, las cuatro salidas del decodificador que acabamos de elaborar y que podemos manejar a travs de las dos entradas A y B. Si A=B=0, se activar S0. Si A=B=1, se activar S3. O sea que se puede activar cualquiera de las cuatro S. Sean K L M N cuatro alambres cargados de electricidad con sus respectivos bombillos pero sin salida a tierra. Si la salida S que est activada manipula un interruptor, se encendern los bombillos que estn conectados a ese hilo. En el dibujo est activada S1 y se han encendido los bombillos K L. En la realidad una ROM a cambio de interruptores, tiene diodos, y a cambio de bombillos tiene bits.

Problema sptimo: Un basculador (flip flop) Si analiza los dos esquemas el primer inversor es inestable porque si le entra una seal 1, sale una seal cero retro-alimentadora inversa (A a) y anula el 1 que entr. En cambio al combinar los dos inversores, segundo esquema, (A a A) la seal retro-alimentadora es del mismo signo de la que entr, y por lo tanto reafirma y hace estable y firme la seal que entr. Esta tcnica se llama feedback (retroalimentacin) y es muy empleada para guardar en memoria informacin estable.

Pgina 51 de 74

S R 1) 2) 3) 4) 0 0 1 1 0 1 0 1

q Q 1 1 0 0 0 0 1 0

Analice esquema donde las entradas son S y R. S (Set) es la entrada principal, o sea la informacin que queremos guardar por largo rato. R (Reset) es la llave que utilizaremos para borrar y dejar la anterior memoria en 0. Si observa la tabla de valores, mientras R es 0, se reafirma el valor entr S=Q. Pero si R=1, borra el contenido que tena S. Esto es lo que se llama un basculador cuya tabla, el chip de operadores , y el esquema o smbolo, mostramos. Cmo escribir en un basculador. Seal de reloj

Para escribir una memoria estable como la del basculador, se aaden dos puertas AND a las entradas del basculador, y se conecta un pulso de reloj. Al basculador slo podr entrar seal, si se enva una seal 1 por cualquiera de sus dos entradas, que coincida y sea simultnea con la seal 1 del reloj.

Basculadores en serie Es muy importante que entienda cmo funciona una serie de basculadores, pues este mecanismo es el alma de todo computador. Conectemos cuatro basculadores en serie tal como lo muestra la figura.

Todo lo que entre por la S, ser reproducido en Q1. Si S=1, entonces Q1=1= S1. Si S=0, entonces Q1=0=S1. En general toda informacin que se vaya a archivar, entrar por S y queda establecida en Q1 y en S1.que es la entrada al siguiente basculador. Si se quiere borrar la seal S1, metemos un 1 por R. Q1 bascula y pasa a ser cero. O sea que siempre que R=1, Q1=0. Si conectamos la serie de basculadores unos con otros de manera que cada salida
Pgina 52 de 74

Q este conectada con la entrada S del siguiente y conectamos todas las R a un solo alambre, cualquier informacin que entre por S, ser repetida y archivada en todas las Q y en todas las S. Los basculadores reproducirn el mismo valor, o sea que Si S = 1 entonces Q1 = S1 = Q2 = S2 = Q3 = S4 = Q4 = S4 = 1. Si entra una seal positiva por R pasar al alambre donde estn conectadas las R, y todas las salidas S se convertirn en cero, o sea, son borradas o reseteadas. Recuerde que es necesario el pulso positivo de un reloj, para que entre la seal S. Si colocamos un NOT en los basculadores 2 y 4 que inviertan el pulso del reloj, la informacin no puede pasar a esos basculadores pues el pulso 1,que da la orden de entrada al basculador 1 y 3, en el mismo instante, aparece como 0 en los basculadores 2 y 4 debido al NOT. O sea el 1 y 3 se abren y en el mismo instante se cierran el 2 y el 4. Cuando los pulsos del reloj sean negativos, suceder lo contrario, el 1 y 3 estn cerrados y en ese instante se abren el 2 y 4 permitiendo la entrada a ellos de lo que, en el pulso anterior qued almacenado en el 1 y 3. .Esto nos permite trasladar la seal paso por paso de basculador a basculador, sin que quede la misma informacin en todos a la vez. Para entender lo que decimos, lancemos una seal por el alambre de reseteo para que todos los basculadores queden en cero. Ahora junto al impulso positivo del reloj, metamos S=1. Queda S=Q1=S1=1 pero no puede pasar adelante porque el pulso del reloj, en ese mismo instante aparece como 0 en el segundo basculador. Cuando el pulso sea negativo, aparecer como positivo en el segundo y cuarto basculador debido al NOT. Entonces al segundo basculador entra el 1 que haba en el primero y lo mismo en el cuarto entrar el 0 que por reseteo habamos colocado que en el tercero. As vamos corriendo en cada ciclo del reloj los datos uno por uno hacia el basculador que est a la derecha. Un contador, al cabo de 4 ciclos de reloj, correspondientes al tiempo de carga de los 4 basculadores de nuestro registro, enva una seal avisando que el registro ya est cargado, y detiene la entrada de bits, mientras llega la orden que indique qu se debe hacer con los 4 bits almacenados. Si el basculador es una memoria RAM, se da orden que se abra la siguiente casilla de la RAM para almacenar la prxima tanda de 4 bits. Si el basculador es un registro, se espera la orden que llegue para ver hacia dnde se deben direccionar los datos recogidos. Cumplida la orden se limpian los basculadores con un reseteo, lanzando un 1 por R. Este ingenioso mecanismo constituye el alma del computador. Cada registro tiene 8,16 o ms basculadores en serie que son como los dedos de una mano que se cargan de bits en millonsimas de segundo para ser descargados cuando el contador determine que el registro se llen. La RAM es a la vez, una serie de 8,16 basculadores donde quedan guardados los bytes (tandas de 8 bits o los nybles: tandas de 4 bits). Los pulsos de un reloj conectado en AND con la seal S abren el basculador como se explic arriba. Ahora puede entender mejor la descripcin de rdenes que hicimos en el captulo: El programa anterior visto desde dentro pag 27. Antes de proseguir conviene que lo lea . Dado el diagrama del chip, hallar las frmulas y dibujar la tabla Si nos ha seguido paso a paso, a esta altura usted puede comprender cmo el computador con las puertas lgicas OR, AND y NOT, resuelve los problemas. Para finalizar el tema de las compuertas lgicas y el diagrama de los chips, vamos a plantear el siguiente problema, a modo de repaso de lo visto: Dado el diagrama del chip, hallar las frmulas y
Pgina 53 de 74

dibujar la tabla. En seguida encontrar un diagrama de un sumador con acarreo. El nos servira para sumar por ejemplo: A=10102 + B = 112

1101 El sumador har la operacin bit por bit tal como nosotros la hacemos. Tiene dos entradas A y B por donde van entrando en orden cada bit de A y el bit correspondiente de B. En caso que se origine un D=0 en el XOR debido a que A=B=1, detectamos los dos 1 que entraron por A y B con el AND cuya salida es E. o sea que el 1 del acarreo queda registrado en S2. Hay una entrada adicional C. Es la entrada del acarreo.. Todo acarreo que se origine en S2, tiene que entrar de nuevo por C pero en la siguiente ronda, por eso no conectamos directamente S2 con C, pues primero debe entrar la orden del contador que nos certifique que comenzamos la suma de los dos bits siguientes. Los resultados estn dados por estas frmulas parciales y la tabla de todas las posibilidades.:

En seguida le doy algunos sus conocimientos. Para el ensamble y diferenvea el siguiente link: http://www.youtube.com/watch?v=5BpZZaCELiw&NR=1 Para ver cmo se montan los chips en un protoboard:
http://www.youtube.com/watch?v=Ah-Nl-iycwM&feature=related http://www.youtube.com/watch?v=SgqqthZAazQ

link para que complemente tes tipos y marcas de chips

Y para un repaso del algebra booleana busque en youtube: algebra pulsador vistomau. LGICA TRANSISTORIZADA

Pgina 54 de 74

Electricidad Antes de proseguir debo aclarar que lo que hemos dicho hasta aqu sobre el modo como trabaja un computador, ms que algo real, es una forma de entender su funcionamiento, por cierto muy til, pues nos ayuda a mejorar su rendimiento. De idntica manera las cosas que vamos a repasar, y que se nos ensearon como reales cuando estudiamos bachillerato, son formas de entender el comportamiento de la materia y de la electricidad, muy tiles para aprovecharnos de ellas. Hasta ahora se ha tratado de explicar la constitucin de la materia por combinacin de dos elementos contradictorios llamados protones (cargas positivas) y electrones (cargas negativas). Aunque esta concepcin es demasiado elemental para dar razn de toda la

ARGN 2,8,8 materia que nos circunda, ha sido fundamental para explicar los componentes qumicos y el modo como reaccionan entre s de tal forma que es muy difcil prescindir de ella pues la qumica y electricidad actual se fundamentan en ella. Cualquier cientfico sabe que la reduccin de toda la materia a meras cargas positivas y negativas (protn, electrn), ms que una verdad, es un supuesto til, actualmente indispensable, para entender su comportamiento. Hay en la naturaleza los llamados gases nobles: el helio, el nen, el argn, el criptn... que muestran una gran estabilidad y se encuentran en estado natural, cosa particular, pues exceptuando unos pocos como el oro y la plata, la mayora de los elementos qumicos se encuentran en combinacin con otros. La ltima esfera de estos gases est constituida por ocho electrones que vienen dispuestos en parejas, dos de ellos en rbita circular: s, y los dems en rbitas ovaladas: p. Se da por supuesto que todo elemento de la naturaleza tiende a la estabilidad que muestran los gases nobles y por lo tanto busca tener en su ltima esfera ocho electrones. El hidrgeno y el helio salen de esta ley porque tienen apenas un nivel de electrones, y en el primer nivel mximo puede haber dos electrones. sta es pues nuestra primera conclusin: Todo elemento qumico busca tener ocho electrones en su ltima esfera A algunos elementos, como son los llamados lcalis, les es muy fcil adquirir la constitucin de gas noble, cediendo el nico electrn que tienen en la capa exterior. Al ceder este electrn queda como ltima una capa que en casi todos ellos es de 8 electrones. En cambio a otros, como son los halgenos que tienen 7 electrones en la capa exterior, les es ms fcil tomar un electrn, y as ajustar los 8 que necesitan para llegar a tener las virtudes de un gas noble (ver figura: sodio+cloro = cloruro sdico)

HELIO 2

NEN 2,8

Pgina 55 de 74

Cuando un elemento pierde electrones para adquirir la configuracin de gas noble, queda descompensado en sus cargas y forma lo que se llama un in positivo: catin. Y si adquiere electrones queda cargado negativamente formando un in negativo: anin. Los cationes y aniones se buscan mutuamente para formar los componentes qumicos en una unin llamada unin inica. Hay otro tipo de unin y es la llamada unin covalente, y es aquella en que se comparten los electrones. Por ejemplo dos tomos de cloro que tienen siete electrones en la capa externa, comparten cada uno con el otro un electrn ajustando los ocho (ver figura Cloro+Cloro=Cl2) Cmo generar electricidad Todos los elementos qumicos de la tabla peridica, unos ms, otros menos, pueden perder o ganar electrones. Al hacerlo se generan dos tipos de electricidad. Una inica debida a que el tomo al ganar o perder un electrn queda descompensado en su carga primera y de alguna manera trata de recuperarla, y otra de electrones. Todo electrn que es liberado de su rbita queda libre y puede ser atrado por una carga positiva. Para liberar un electrn de su rbita, hay que aplicar una fuerza. Esta fuerza se puede obtener por calor, por magnetismo, o por reaccin qumica. Las formas ms corrientes de obtener corriente elctrica son las llamadas pilas y bateras que emplean las reacciones qumicas, y el dnamo que hace girar un metal conductor en medio de un campo magntico. Al girar un embobinado de alambres conductores a travs de un fuerte campo magntico, los electrones ms externos son sacados violentamente de sus rbitas y lanzados a un extremo (el negativo), y los iones positivos, al lado opuesto. Se generan as dos tipos de tensin o voltaje: uno positivo: escasez de electrones, y otro negativo: abundancia de ellos. Si se conecta cualquiera de los dos polos a tierra, se producir una descarga (vase figura).

Pgina 56 de 74

Al principio se crey que la corriente flua del polo positivo al negativo. Este sentido convencional de la corriente se indica con una flecha de trazo continuado. Muchas veces para comprender el funcionamiento de un circuito, es mejor imaginarnos la corriente de electrones. El flujo de electrones lo indicaremos con una flecha fraccionada:

Los electrones que sobran en el polo negativo irn a tierra, y los que faltan en el polo positivo, sern sacados de tierra. Si se conectan los dos polos entre s, se producir una descarga de ms violencia que la anterior donde los electrones que abundan en el polo negativo irn a llenar los espacios vacos de los cationes que hay en el polo positivo. Valga la aclaracin que esta es una forma de entender y no lo que en realidad sucede. Dada esta aclaracin, proseguimos la explicacin presumiendo como verdaderos todos los postulados de la qumica que aceptamos, ms que como verdades, como explicaciones que facilitan el dominio de los elementos, pero que nunca darn la razn profunda de la materia en s. Voltaje o Amperaje?, Cmo generar un bit En la corriente elctrica hay tres factores muy importantes: Voltaje, intensidad y resistencia: Estos tres factores vienen regulados por la ley de Ohm: I=V/R = Intensidad = Voltaje/Resistencia La intensidad se mide en amperios y la resistencia en ohmios. La frmula anterior se puede por lo tanto expresar as: Amperaje=Voltaje/Ohmios. Para entender la relacin de estos tres factores podemos imaginarnos la pila como una jeringa con agua. El voltaje equivale a la fuerza que se aplica al mbolo. La resistencia viene dada por el grosor de la aguja o del agujero por donde va a salir el agua, y el amperaje o

Pgina 57 de 74

intensidad, a la cantidad de agua que sale por el orificio. La cantidad de agua depende del tamao del orificio y de la presin que se haga. Las pilas o fuentes de energa producen una tensin entre sus dos polos. Si los dos polos se unen entre s directamente, se produce una descarga total o corto circuito. Todo el voltaje se convierte en amperaje posible. Es como si la jeringa no tuviera orificio, sino que estuviera totalmente destapada, se derramara el agua sin necesidad de ninguna presin. O sea que en un corto circuito desaparece el voltaje al no haber resistencia. Si R = 0 tenemos: Voltaje = R x I = 0 x I = 0 = (voltaje nulo si la resistencia = 0). Para evitar que se derrame toda la corriente que hay en la pila, se deben colocar cargas o resistencias. Si no hay resistencia, todo el voltaje se convertir en amperaje. Si nuestra jeringa est totalmente destapada o tiene un agujero tan grande como el cilindro donde est el agua, se derramar el agua sin necesidad de hacer ninguna presin (ver figura). El voltaje se puede mantener, colocando resistencias en el circuito. Es muy importante que entienda esto pues los bits se indican con presencia de voltaje y no con paso de corriente. Recuerde que cuando hay corto en alguna parte, desaparece el voltaje. Vamos analizar un circuito para aclarar estas ideas. Supongamos que tenemos una fuente de 10 voltios. Si el circuito est abierto leeremos 10 voltios entre los extremos A y B. Si unimos los dos extremos, se produce un corto, o sea que los 10 voltios se convierten todos en amperios. Este amperaje depende de una resistencia que siempre existe en los circuitos y que se llama resistencia interna (RE). Se supone que toda batera tiene una resistencia interna pues si la resistencia fuera nula, el amperaje sera infinito segn la frmula: I= V/R en nuestro caso: I = 10/0=infinito. Al unir dos polos de una batera sin ningn tipo de resistencia, se produce una descarga total. Pasa todo el amperaje que puede dar, y el voltaje desaparece. Si colocamos una resistencia de 5 ohmios, comienza a pasar una corriente de: amperaje = 10/5 = 2 amperios. En este caso mantenemos en el punto A un voltaje de 10 que empuja una corriente de 2 amperios a travs de la resistencia de 5 ohmios. En el punto A tenemos un bit positivo, o sea un voltaje de 10. Ahora aadamos una resistencia variable al circuito. Supongamos que esta resistencia tenga otros 5 ohmios. La corriente se reduce a la mitad segn la frmula: I = V/R = 10/(5+5) = 1 amperio Decimos que el voltaje en A es de 10, y en B ha cado a 5. Probmoslo: I = V/R = 1: de donde V=I x R. Ahora bien R en el punto A=r1+r2=5+5=10. Por lo tanto: V = I x R = 1 x 10 = 10 Y en B donde r2 = 5; V = I x R; V = 1 x (5) = 5 Tenemos ahora dos bits positivos: uno de 10 voltios en A y otro de 5 voltios en B. Al poner las dos resistencias en serie, podemos hacer desaparecer el segundo bit positivo, sin producir un corto. Para ello basta que tomemos la resistencia variable y la anulemos.
Pgina 58 de 74

El bit de B pasa de 5 a 0 voltios; desaparece al desaparecer la resistencia que lo produca. Para encender o apagar el bit B basta correr la resistencia de 0 a 5 Ohmios y viceversa. En casi todos los circuitos de computadores encontrar una resistencia. El objeto de esta resistencia es evitar un corto cuando se va a anular la tensin que est haciendo de bit positivo.

En la corriente elctrica hay tres factores muy importantes: Voltaje, intensidad y resistencia: Para entender la relacin de estos tres factores podemos imaginarnos la pila como una jeringa con agua Todo circuito debe tener una resistencia, de lo contrario se produce un corto y se derrama toda la corriente tal como ocurre con una jeringa sin fondo. El contenido se derrama sin necesidad de presin. La resistencia viene dada por el grosor de la aguja o del agujero por donde va a salir el agua, y el amperaje o intensidad, a la cantidad de agua que sale por el orificio. La cantidad de agua depende del tamao del orificio y de la presin que se haga. En un corto el voltaje desaparece . Al colocar una resistencia, la cantidad de corriente que fluye va regida por la ley de Ohm: corriente=voltaje/resistencia. Por eso al poner una resistencia mayor el flujo de corriente se disminuye. Si colocamos dos resistencias en serie, se generan dos bits positivos: A=10 y B=5. Si la resistencia en B es variable, podemos prender y apagar el segundo Pgina sin de 74 un corto total. bit (B) 59 producir
.

Disposicin covalente y dopado del silicio El silicio slo tiene cuatro tomos en su rbita externa. Le faltan cuatro para ajustar los ocho y adquirir la configuracin de un gas noble que es a lo que tiende todo tomo como qued dicho. Para lograrlo, el silicio se agrupa en cristales de 5 tomos. Todos los tomos comparten los cuatro electrones del tomo central, y a su vez participan uno de sus electrones con l. As todos los tomos completan la configuracin de ocho electrones. Esta forma de unin de tomos se conoce en qumica como unin covalente (ver figura). A los cristales de silicio se les puede dopar, o sea meterles impurezas. Se les puede inyectar tomos que tienen 5 electrones en su rbita exterior como el fsforo y el antimonio. En ese momento el fsforo suelta un electrn y pasa a hacer las veces del tomo que estaba en la mitad. El silicio se convierte as en conductor pues tiene un electrn suelto que puede ser orientado en forma de corriente elctrica. Como el silicio ha sido dopado con electrones sueltos, se le llama silicio tipo n (negativo) o sea, rico en electrones. Al silicio tambin se le puede dopar con tomos que tienen apenas tres electrones en su capa exterior como el aluminio o el boro. Este elemento entra a reemplazar el tomo central del cristal pero como slo tiene tres tomos, el cristal queda descompensado con un hueco o falta de electrn. Es decir queda cargado como un ion positivo. Tenemos entonces un silicio tipo p (positivo), o sea, necesitado de electrones. Diodo bipolar de silicio Tomemos ahora un trozo de cristal de silicio y a la mitad la dopamos con impurezas negativas, y a la otra con impurezas positivas. Los electrones fluyen hacia los iones positivos que se los absorben para llenar sus huecos. En el centro se va formando una coraza neutra donde las cargas quedan balanceadas (vase figura). Llega un momento en que hay una

Pgina 60 de 74

resistencia al paso de ms electrones por la pared que se ha formado de cargas balanceadas. Para romper esa barrera se le aplica al diodo, una carga directa, de ms de 0.7 voltios dada por una pila que tiene el polo positivo aplicado al lado positivo del cristal, as sern atrados los electrones que estn en la barrera y detrs de ella. A su vez el polo negativo, aplicado al polo negativo del cristal, ayuda a repeler las cargas negativas hacia el polo positivo. Con la ayuda del voltaje de la pila se rompe la pared neutra (resistencia) que se haba formado en la mitad. A este tipo de conexin se le llama polarizacin directa. Si se invierte la conexin aplicando el polo positivo de la pila al lado n del diodo, y el negativo al lado p del cristal, tenemos la llamada polarizacin inversa. En este caso es muy difcil que pase la corriente pues la banda de escasez de electrones crece y todo electrn que trate de pasar, ser absorbido por los iones positivos y por otro lado los electrones del dopado son solicitados por la carga positiva de la pila. Se tendra que aplicar un voltaje superior a los 50 voltios para pasar puente tan ancho. Como conclusin deducimos que todo diodo acta como un interruptor. Si se aplica una pequea tensin con polarizacin directa de 0.7 voltios, permite pasar la corriente en un sentido, pero hay que aplicarle un voltaje muy elevado (50 voltios) para hacer pasar la corriente si la polarizacin es inversa. Todo diodo se representa con una flecha indicando el sentido convencional en que deja pasar la corriente, y una lnea en la punta.

Para asuntos de clculos, cuando la corriente pasa a travs de un diodo, se considera que no hay cada de voltaje. En realidad hay una pequea cada de 0,7 voltios, o sea que si en un diodo entran 5 voltios, al otro lado aparecern 4,3 voltios, pero si metemos el diodo en un circuito que tenga 0.7 voltios de tensin, aparecern completos pues el diodo en ese momento ha dejado de poner resistencia y est dejando pasar la corriente. En la figura si aplicamos 5 voltios en A, aparecern intactos al otro lado del diodo, en A2 porque el diodo est alimentado por una batera de 0,7v que rompe su resistencia. Puerta AND con diodos Hagamos un circuito tal que el voltaje de V1 sea mayor que el de V2 (V1>V2). Los diodos estn dejando escapar la corriente y por lo tanto el bit C se leer como cero. Para que deje de escaparse la corriente y se mantenga un voltaje alto en C, tenemos que aplicar en A y en B un voltaje ms alto que el que hay en V1 (V1<V2).

Pgina 61 de 74

En ese momento tendremos un bit positivo en C, pues al no poder pasar la corriente por ninguno de los dos diodos, queda represado el voltaje. Pero si en A o en B hay un voltaje ms bajo que en V1, por all se escapar la corriente. El circuito anterior tiene que ser implementado con algunos elementos para un correcto funcionamiento. Puerta OR con diodos Hagamos un circuito en que el voltaje en V2 sea igual o ligeramente menor que en V1. O sea: en V2 hay un bit negativo respecto a V1. Si aplicamos en A un voltaje alto, este al no poder pasar por la resistencia, buscara salida por el diodo hacia C, A y C quedarn con voltaje alto. Si aplicamos en B un voltaje alto, pasar lo mismo: B y C quedarn con voltaje alto. Y si tanto en A como en B aplicamos un voltaje elevado, en C se elevar el voltaje. Tenemos por lo tanto una puerta OR. Para descargar a C una vez que en A y B haya voltajes negativos, hay que completar el circuito. Transistor de silicio El empleo de los transistores comenz hacia 1950 y reemplaz a los tubos o vlvulas de vaco aligerando el tamao y la alimentacin de los aparatos elctricos. El dopado del silicio para obtener un transistor que nos va a hacer las veces de una vlvula trodo (tubo de vaco con rejilla) se puede hacer de dos formas: el transistor npn o el de tipo pnp. Enseguida explicamos en qu consiste un transistor bipolar.

Todo transistor consta de tres partes que hacen las veces del ctodo, rejilla y nodo de los antiguos tubos de vaco: un emisor, una base (puerta) y un colector. El emisor est altamente dopado y es de tamao mediano. La base (puerta) es delgada y est ligeramente dopada y sirve de puente entre el emisor y el colector. Debe estar dopada con signo
Pgina 62 de 74

contrario a ellos. Y el colector que es el de tamao ms grande pues sirve de disipador de energa, es el menos dopado. Si se dopa al emisor y al colector con tomos pentavalentes y a la base con tomos trivalentes, tenemos el transistor tipo npn (negativo positivo negativo). Si dopamos al emisor y el colector con trivalentes y a la base con pentavalentes tenemos el transistor tipo pnp (positivo negativo positivo) que es un poco ms lento porque las cargas de iones positivos corren ms lentas que las de electrones. Se suelen emplear dos smbolos para representar al transistor. Se indica con una flecha el sentido convencional de la corriente segn su base sea positiva o negativa, (tipo pnp o npn). Para nuestros propsitos, ambos transistores funcionan lo mismo. Cmo conectar un transistor Si polarizamos en forma directa, fluir una corriente intensa hacia la base (puerta) porque V1>V2 (figura a). Y si se polariza en forma inversa, tal como lo muestra la figura b, no pasa corriente porque V1<V2; hay escape mnimo y alto voltaje. Este comportamiento es normal

pues si nos fijamos se trata de dos diodos con una parte en comn. Pero si polarizamos con corrientes distintas el emisor y el colector, se generar una corriente intensa entre ellos dos y un pequeo escape por la base (vase c). Un transistor se puede conectar de diferentes maneras. En la siguiente figura se muestra la forma como se debe instalar un transistor cuando se va a emplear como interruptor. Las

convenciones empleadas son: VBB: Voltaje de Base a Base, o sea de la pila de la Base; VBE:
Pgina 63 de 74

Voltaje entre Base y Emisor; RB: Resistencia de Base. VCB Voltaje entre Colector y Base; VCE: Voltaje entre Colector y Emisor; RC: Resistencia del Colector. VCC: Voltaje de Colector a Colector, o sea de la pila que alimenta al Colector. RE: Resistencia interna de cualquier fuente. Circuitos lgicos con transistores Puerta NOT Vamos a analizar el comportamiento de un transistor tipo NPN. Sea la entrada A1 y la salida (bit) B2. El voltaje (tensin) entre el colector C y emisor E est calculado para que no pase corriente debido a la resistencia que opone el transistor. El transistor se comporta como un interruptor abierto. Si en la puerta A1 aparece una seal positiva, la solicitud de ms electrones rompe la resistencia del transistor y se cierra el circuito. La resistencia R2 evita el corto total, pero desaparece el bit que haba en B2. El voltaje en B2 pasa de 1 a 0. Si en la entrada A1 no hay seal (0), no pasa corriente, y se genera una tensin entre B2 y tierra, o sea que el bit en B2 es 1. Tenemos por lo tanto una puerta NOT. Ahora analicemos un transistor tipo PNP. El comportamiento es idntico pero en este caso tenemos que utilizar un voltaje negativo. En B2 tenemos abundancia de electrones que no pueden fluir hacia tierra por la resistencia que ofrece el transistor. Si en A1 aplicamos un voltaje negativo habr sobreabundancia de electrones que buscarn salida junto con los que hay en B2 hacia tierra. Se genera una descarga y el bit en B2 desaparece. R2 evita un corto total. Cuando se emplean transistores tipo PNP se utiliza corriente de voltaje negativo y los resultados son los mismos.

Pgina 64 de 74

Puerta NOR con transistores Normalmente con transistores se fabrican circuitos invertidos: NOR y NAND. A1 A2 0 0 0 1 0 0 1 1 1 B2 0 0 0 descarga descarga descarga B3 1 1 1

1 no descarga 0

Si analiza el circuito que presentamos ver que da un NOR pues basta que una de las entradas tenga seal positiva para dejar descargar la tensin que hay en B2. O sea que si en A1 y/o en A2 hay 1, en B2 habr 0. Para convertir esta seal en un OR basta que coloque un transistor en B2 y entonces en B3 aparecer el OR. Puerta NAND con transistores Si analiza los circuitos que le presentamos, ver un NAND al cual si se le aade un transistor en la salida, se convertir, en un AND A1 A2 1 0 0 1 0 0 1 1 1 B2 1 1 1 0 B3 0 0 0 1

Slo si en A1 y en A2 entra seal positiva (1), podr descargarse el voltaje retenido en B2 hacia tierra. Habr cambio en B2 que pasara de 1 a 0 al haber corto, y aparecer una seal positiva en B3.

Pgina 65 de 74

Un basculador El basculador consta de dos transistores T1 y T2 cuyas entradas se acoplan en cruz. Sea S la entrada de T1.Al volverla positiva se enciende T1 y atrae electrones que llenan la falta de electrones que se detectaba en q e inundan la puerta R que se vuelve negativa y bloquea al transistor T2, apagndolo. Al mismo tiempo Q se vuelve ms positiva porque est conectada a S. S quiere obtener el efecto contrario, debe meter una carga positiva por R. Entonces se descarga Q, se bloquea T1 y q quedar ms positiva. He aqu la tabla de combinaciones:

Fabricacin de transistores Los anteriores transistores se les llaman bipolares porque estn dopados con dos tipos de impurezas. El smbolo de los transistores unipolares es diferente: Vamos a explicar cmo se fabrica un MOS (Metal xido Semiconductor). La tcnica ms exitosas con la cual se dopa al silicio utiliza un slo tipo de impurezas. Si se emplean impurezas negativas (pentavalentes como el fsforo), se le denomina: NMOS (MOS negativo tipo npn); y si se emplean las trivalentes: PMOS (MOS Positivo tipo pnp). En seguida pasamos a explicar los pasos fundamentales para fabricar un chip: Se recubre el silicio con una capa de xido. Se abre un surco a travs del xido que deje destapada una parte del silicio y un puente en la mitad. Se dopa el canal abierto. Y se le coloca encima un puente de aluminio y los dos terminales.

Pgina 66 de 74

Tenemos as nuestro trodo o transistor con un emisor, una base y un colector. Siempre que en la base o puerta A1 haya una entrada positiva, pasar corriente entre el Colector C y el Emisor E, pues ella atrae los electrones que seguirn derecho venciendo la resistencia mnima que les opone el silicio puro (no dopado) que se encuentra debajo del puente. Tipos de circuitos

RTL (Resistor, Transitor Logic), es la primera tecnologa que se emple y se utilizaban resistencias y transistores. Por lo fcil de comprender, es la que emplean todos los textos para explicar los esquemas de las puertas lgicas. En la figura hay un NOR, un NAND y un NOT.

DTL (Diode, Transistor Logic). Como lo dice su nombre utiliza diodos y transistores. En el esquema se ve un NAND simplificado para ms fcil comprensin y al lado derecho, mejorado. Si alguna de las entradas A,B,C es 0, la tensin en B2 rompe la escasa resistencia de los diodos (D1, D2, D3) que estn en 0, y se descarga totalmente a travs de ellos. El transistor T2, por lo tanto, no recibe carga en su base. Si las tres entradas A, B, C, estn cargadas de tal manera que ninguna permita el escape de la corriente, esta trata de salir por la resistencia Rb, y al encontrar la resistencia de emisor RE y no poder escapar, enciende el transistor T2, para salir por all lo que produce la descarga del bit S. En el esquema mejorado, la resistencia Rb ha sido sustituida por un transistor T y un diodo que agiliza el proceso.

Pgina 67 de 74

Esta es la tabla de cargas digitales del circuito:

TTL (Transistor, Transitor Logic). Aqu vemos un NAND. Las entradas ABC estn conectadas al Emisor de T1 que como puede ver, est siempre encendido.

Todo transistor encendido descarga su colector. El colector de T 1 est conectado a la puerta de T2 y por lo tanto T2 permanecer apagado pues su puerta est siendo constantemente descargada. Slo si las tres entradas ABC tienen carga positiva, dejar de haber escape por aquel lado. Entonces la corriente trata de salir por T2 encendindolo con la consabida descarga del bit S. A la derecha est mejorado con transistores adicionales. Tabla de cargas digitales del TTL

Pgina 68 de 74

Fotorreproduccin y chips Aunque el chip parece una cucaracha de 7 cms, en realidad es una pastillita que escasamente ocupa 2 cm. En ella van impresos 10, 100, 1000 o ms transistores y adems pequesimos caminos o tirillas de impurezas que hacen las veces de resistencias. Una resistencia de 100 ohmios viene impresa en un hilillo de apenas 12 micromilmetros. Adems van impresos finsimos condensadores y diodos. Si furamos a emplear el proceso manual que explicamos arriba, ni las manos ms expertas podran obtener tal cantidad de puentes y surcos en una pastilla tan pequea. El trazado de todas esas lneas se lleva a cabo por medios fotomecnicos. Para ello se recubre primero el silicio con el xido. Encima se le coloca una capa sensible a la luz (fotosensible). A travs de un negativo que tiene dibujado todos los canales (este negativo se puede obtener de un dibujo grande que se reduce al tamao de la pastilla), se imprimen en la pastilla los canales y se fijan. Con mtodos sucesivos de emulsiones sensibles a la luz y negativos que contengan los esquemas de los puentes y conexiones, se pueden ir superponiendo los puentes de aluminio y las conexiones.

Con mtodos fotogrficos se pueden reducir al mximo los esquemas de puentes y conexiones que tiene un transistor. Esto permite que en una pequea tableta de silicio se puedan imprimir centenares y miles de transistores. La tableta de silicio se reviste con sustancias sensibles a la luz sobre ella se proyecta una reduccin del diseo de todos los circuitos dibujados a escala grande.

Pgina 69 de 74

Decodificadores e interfaces Ya para terminar, dos esquemas. Recordemos cuando hablamos de los registros (pags 27 y 38) que el registro de instrucciones, ayudado de una ROM, recibe las instrucciones y abre los circuitos que la ejecutan. Para resolver un problema, el computador tiene que pasar los datos por diferentes operadores lgicos y all procesarlos. Por ejemplo: Decamos que para sumar dos bits, el procesador tena que pasar dichos bits por un circuito XOR y AND y entregar el resultado (pag 36). Si se trata de multiplicar esos dos bits, decamos que la multiplicacin es una suma repetida (pag 15). Entonces el computador debe pasar dichos datos varias veces por el mismo circuito. Para decirle al computador qu circuitos de la ALU debe abrir se emplea un decodificador y una ROM impresa. Un pequeo ejemplo nos dar idea cmo se le dice al computador qu circuitos debe abrir o sea cmo trabaja el registro de instrucciones para identificar las rdenes que le llegan. Para simplificar vamos a dibujar un decodificador de slo dos bits: A y B que nos permitirn 22=4 rdenes, las

Arriba tenemos dos bit A y B unidos a un decodificador por el cual podemos encender una de las salidas S1, S2, S3, S4. Al encenderse la salida descarga a tierra los diodos que estn conectados al cable correspondiente. En la figura se ha descargado S2 dando origen en los terminales de la ROM al cdigo 0110. Con dos bits y un 2 decodificador en total podemos obtener 2 =4 palabras o cdigos diferentes, los cuales a su vez pueden abrir los circuitos correspondientes a cuatro operaciones, que podran ser: sacar de la memoria, sumar, restar, vol4 ver a meter en memoria. Con cuatro bits podramos manejar una ROM de 2 =16 palabras y con 8 podramos 8 manejar una ROM de 2 =256, suficientes palabras para registrar todas las rdenes del lenguaje Assembly.

Pgina 70 de 74

que suponemos que son: 00=S1=sacar de una memoria. 01= S2= sumar. 10=S3=restar 11=S4=meter en memoria: La ROM se encargar de traducir nuestro mensaje y por un cableado de 4 buses, abrir las compuertas de la ALU que hacen dichas operaciones. En la figura hemos descargado los diodos conectados a la fila S2 y sale la palabra ABCD=0110 cuyo cableado abrir los operadores que para nuestro ejemplo podran ser los de suma. Observe que la ROM tiene una estructura diferente a la que empleamos en el ejemplo de los bombillos (ver: Problema sexto: Una ROM, pg. 51), y en vez de luces empleamos bits que se descargan a travs de los diodos que estn conectados a tierra por el hilo por donde entra la orden. Un traductor de rdenes compuesto por un decodificador y una ROM es lo que se llama una interface. Las interfaces pueden tener ms de 2 entradas y manejar un sumario de palabras ms amplio. Si con 2 bits manejamos 22=4 palabras, con 4 manejamos 24=16 y con 8 tenemos un diccionario posible de 2 8 = 256 palabras, suficientes para registrar todas las rdenes del lenguaje ASSEMBLY. El registro de instrucciones al llegarle un byte, por comparacin consulta la ROM e interpreta lo que le lleg. Hemos cumplido Esperamos haber cumplido con el objetivo propuesto: darle una idea cmo es un computador por dentro, y cmo trabaja. Es muy probable que queden muchas dudas, pero lo hemos preparado para que siga leyendo e investigando si quiere llegar ms a fondo o aclarar algunas cosas no comprendidas. Si ha tenido paciencia para hacer todos los ejercicios propuestos, y los ha entendido, se lleva una cultura amplia sobre lo que es un computador. Si no, lo que ha ledo lo ir entendiendo a medida que vaya complementando con otras lecturas. Este es un esfuerzo ms para acercarlo a la comprensin de un computador. Muchos libros han tratado este tema, y debido a ellos hemos podido elaborar este folleto. Agradecimientos a usted, amable lector por llegar hasta aqu, y a todos los que hemos consultado ,y que con sus explicaciones nos han permitido llegar un poco ms a este fascinante mundo del computador. En la pgina siguiente encontrar a modo de resumen el esquema de un reloj digital, donde se condensan todos los conocimientos que ha adquirido, con los cuales podr comprender su funcionamiento. En internet en Youtube si busca: protoboard encontrar la forma prctica como puede llevar a cabo algunos circuitos.

Pgina 71 de 74

ROM

Si usted nos ha seguido hasta aqu, se le facilita entender cmo funciona el tablero del reloj que le mostramos. El esquema nos muestra un pulso elctrico S controlado por un cristal, que es la seal que se emplea en los rel ojes elctricos. Este pulso mueve los cuatro basculadores Q contadores que marcan en sistema binario desde cero a nueve. Cuando las salidas ABCD de los 4 basculadores sealan la cifra binaria 1010 (nueve decimal), se descargan a cero por medio de un AND conectado a BD y cuya salida Resetea los basculadores que comienzan de nuevo a contar del 0 al 9. Un decodificador toma las cuatro salidas ABCD e interpreta los nmeros del 0 al 9. A cada nmero le corresponde un canal de la ROM que actualmente descarga una serie de diodos y mantiene encendido el tablero. Estos al no poderse descargar, debido a la seal positiva que en una de las nueve salidas da el decodificador, apagan una, dos o ms de las 7 unidades del tablero segn sean uno, dos o ms los diodos afectados.

Pgina 72 de 74

BIBLIOGRAFA Y AGRADECIMIENTOS Introduccin a los microprocesadores, Conferencia. Apuntes personales UN (UNIVERSIDAD NACIONAL). Se consult tipo de transistores, su fabricacin y funcionamiento del microprocesador. Sntesis global en castellano. Del microprocesador al ordenador H Lilen - Marcombo. Centro de documentacin de Artes Grficas. Libro muy completo sobre caractersticas y funcionamiento de transistores y microprocesadores. De all se sac la idea del sumador con acarreo. (Castellano). Principios de electrnica. Melvin. Biblioteca del centro Colombo-Italiano. A nivel elctrico, un completo anlisis sobre diodos y transistores. De all se extrajo la idea del cmo se comportan las cargas dentro de un diodo y un transistor. (Castellano). Fundamentals of logic desion. Charles H Roth. JR. Libro muy completo, sencillo pero lento con un mtodo muy similar al que conocemos en el lgebra y Aritmtica de Baldor donde se ensea el lgebra booleana: Tablas de combinaciones, mapas de Karnaugh, ejercicios con operadores. Fue fuente de inspiracin de todos los ejercicios y de los problemas propuestos. Texto de universidades. Informtica para todos. Peter Laurie. Libro de divulgacin que nos aport la idea de llaves de agua para explicar los operadores lgicos, la solucin en cascada de la comparacin y el cmo elaborar un chip. Biblioteca personal. Basic-enciclopedia Planeta. Primer volumen. De all naci la idea de ir llevando los problemas hasta lograr el tablero de un reloj digital. Colliers Enciclopedia. En ingls. Se consultaron las siguientes palabras: Computers, Electricity, chemistry, electronics, circuits, elements, chemical. Sntesis muy bien elaborada sobre cualquier tema que se consulte. Biblioteca personal. Circuitos integrados. R G Hibberd. Paraninfo No. 27. Biblioteca personal. Una sntesis apretada y muy bien llevada de todos los circuitos integrados. Cmo funcionan, Cmo se elaboran. De all se sacaron explicaciones cmo funcionan los basculadores, los RTL, DTL, TLT. AGRADECIMIENTOS: a todos los que han escrito sobre el tema, aportando ideas para explicarnos este mundo maravilloso de los computadores. Siguiendo sus pasos, hemos pretendido exponer de una manera ms clara lo que ellos han tratado en sus escritos para poner al alcance del profano las mismas ideas evitando en lo posible los conceptos obscuros y el que tenga que leer varios libros como lo hemos hecho nosotros. Gracias a Rgulo Meja que fue el inspirador de esta idea y que tuvo la intuicin de elegirme para llevarla a cabo. Lo que hemos escrito no es una mera copia, es un esfuerzo ms para poner al alcance del profano una serie de ideas que hagan ms familiar este instrumento que parece

Pgina 73 de 74

ser capaz de muchas cosas y que nos deja atnitos. Agradezco en esta segunda edicin a Ruth Zuluaga que hizo la transcripcin del texto y junto con su padre Alberto Zuluaga mejoraron los dibujos

Pgina 74 de 74

Você também pode gostar