Sei sulla pagina 1di 12

Captulo I: INTRODUCCIN

1.1. - NUMEROS BINARIOS, OCTALES Y HEXADECIMALES. El sistema de numeracin utilizado habitualmente es la base 10; es decir, consta de 10 dgitos (09) que podemos colocar en grupos, ordenados de izquierda a derecha y de mayor a menor. Cada posicin tiene un valor o peso de 10n donde n representa el lugar contado por la derecha: 1357 = 1 x 103 + 3 x 102 + 5 x 101 + 7 x 100 Explcitamente, se indica la base de numeracin como 135710. En un ordenador el sistema de numeracin es binario -en base 2, utilizando el 0 y el 1- hecho propiciado por ser precisamente dos los estados estables en los dispositivos digitales que componen una computadora. Anlogamente a la base 10, cada posicin tiene un valor de 2n donde n es la posicin contando desde la derecha y empezando por 0: 1012 = 1 x 22 + 0 x 21 + 1 x 20 Adems, por su importancia y utilidad, es necesario conocer otros sistemas de numeracin como pueden ser el octal (base 8) y el hexadecimal (base 16). En este ltimo tenemos, adems de los nmeros del 0 al 9, letras -normalmente en maysculas- de la A a la F. Llegar a un nmero en estos sistemas desde base 2 es realmente sencillo si agrupamos las cifras binarias de 3 en 3 (octal) o de 4 en 4 (hexadecimal): Base 2 a base 8: 101 0112 = 538 Base 2 a base 16: 0010 10112 = 2B16 A la inversa, basta convertir cada dgito octal o hexadecimal en binario: Base 8 a base 2: 248 = 010 1002 Base 16 a base 2: 2416 = 0010 01002 De ahora en adelante, se utilizarn una serie de sufijos para determinar el sistema de numeracin empleado: Sufijo Base Ejemplos b o,q d h 2 8 10 16 01101010b 175o 789d 6A5h

En caso de que no aparezca el sufijo, el nmero se considera decimal; es decir, en base 10. 1.2. - CAMBIO DE BASE. Pese a que las conversiones entre base 2 y base 8 y 16 son prcticamente directas, existe un sistema general para realizar el cambio de una base a otra. El paso de cualquier base a base 10 lo vimos antes: 6A5h = 6 x 162 + 10 x 161 + 5 x 160 Inversamente, si queremos pasar de base 10 a cualquier otra habr que realizar sucesivas divisiones por la base y tomar los restos:

donde 4 es el ltimo cociente (menor que la base) y los restantes dgitos son los restos en orden inverso. 1.3. - ESTRUCTURA ELEMENTAL DE LA MEMORIA. 1.3.1. - BIT. Toda la memoria del ordenador se compone de dispositivos electrnicos que pueden adoptar nicamente dos estados, que representamos matemticamente por 0 y 1. Cualquiera de estas unidades de informacin se denomina BIT, contraccin de binary digit en ingls. 1.3.2. - BYTE. Cada grupo de 8 bits se conoce como byte u octeto. Es la unidad de almacenamiento en memoria, la cual est constituida por un elevado nmero de posiciones que almacenan bytes. La cantidad de memoria de que dispone un sistema se mide en Kilobytes (1 Kb = 1024 bytes), en Megabytes (1 Mb = 1024 Kb), Gigabytes (1 Gb = 1024 Mb), Terabytes (1 Tb = 1024 Gb) o Petabytes (1 Pb = 1024 Tb). Los bits en un byte se numeran de derecha a izquierda y de 0 a 7, correspondiendo con los exponentes de las potencias de 2 que reflejan el valor de cada posicin. Un byte nos permite, por tanto, representar 256 estados (de 0 a 255) segn la combinacin de bits que tomemos. 1.3.3. - NIBBLE. Cada grupo de cuatro bits de un byte constituye un nibble, de forma que los dos nibbles de un byte se llaman nibble superior (el compuesto por los bits 4 a 7) e inferior (el compuesto por los bits 0 a 3). El nibble tiene gran utilidad debido a que cada uno almacena un dgito hexadecimal:

Binario Hex. Decimal Binario Hex. Decimal 0000 0001 0010 0011 0100 0101 0110 0111 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 1000 1001 1010 1011 1100 1101 1110 1111 8 9 A B C D E F 8 9 10 11 12 13 14 15

1.4. - OPERACIONES ARITMTICAS SENCILLAS EN BINARIO. Para sumar nmeros, tanto en base 2 como hexadecimal, se sigue el mismo proceso que en base 10:
1010 1010b + 0011 1100b -------------1110 0110b Podemos observar que la suma se desarrolla de la forma tradicional; es decir: sumamos normalmente, salvo en el caso de 1 + 1 = 102 , en cuyo caso tenemos un acarreo de 1 (lo que nos llevamos).

1.5. - COMPLEMENTO A DOS. En general, se define como valor negativo de un nmero el que necesitamos sumarlo para obtener 00h, por ejemplo:
FFh + 01h -----100h Como en un byte solo tenemos dos nibbles, es decir, dos dgitos hexadecimales, el resultado es 0 (observar cmo el 1 ms significativo subrayado es ignorado). Luego FFh=-1. Normalmente, el bit 7 se considera como de signo y, si est activo (a 1) el nmero es negativo.

Por esta razn, el nmero 80h, cuyo complemento a dos es l mismo, se considera negativo (128) y el nmero 00h, positivo. En general, para hallar el complemento a dos de un nmero cualquiera basta con calcular primero su complemento a uno, que consiste en cambiar los unos por ceros y los ceros por unos en su notacin binaria; a continuacin se le suma una unidad para calcular el complemento a dos. Con una calculadora, la operacin es ms sencilla: el complemento a dos de un nmero A de n bits es 2n-A. Otro factor a considerar es cuando se pasa de operar con un nmero de cierto tamao (ej., 8 bits) a otro mayor (pongamos de 16 bits). Si el nmero es positivo, la parte que se aade por la izquierda son bits a 0. Sin embargo, si era negativo (bit ms significativo activo) la parte que se

aade por la izquierda son bits a 1. Este fenmeno, en cuya demostracin matemtica no entraremos, se puede resumir en que el bit ms significativo se copia en todos los aadidos: es lo que se denomina la extensin del signo: los dos siguientes nmeros son realmente el mismo nmero (el -310): 11012 (4 bits) y 111111012 (8 bits). 1.6. - AGRUPACIONES DE BYTES. Tipo Palabra Doble palabra Prrafo Pgina Segmento Definicin 2 bytes contiguos 2 palabras contiguas (4 bytes) 16 bytes 256 bytes, 16 Kb, etc. 64 Kbytes

Cudruple palabra 4 palabras contiguas (8 bytes)

1.7. - REPRESENTACIN DE LOS DATOS EN MEMORIA. 1.7.1. - NUMEROS BINARIOS: mximo nmero representable: Tipo 1 byte 2 bytes 4 bytes Sin signo 255 65.535 4.294.967.295

8 bytes 18.446.744.073.709.551.615 Tipo 1 byte 2 bytes 4 bytes Positivo 127 32.767 2.147.483.647 Negativo -128 -32.768 -2.147.483.648

8 bytes 9.223.372.036.854.775.807 -9.223.372.036.854.775.808

Los nmeros binarios de ms de un byte se almacenan en la memoria en los procesadores de Intel en orden inverso: 01234567h se almacenara: 67h, 45h, 23h, 01h. 1.7.2. - NUMEROS BINARIOS CODIFICADOS EN DECIMAL (BCD). Consiste en emplear cuatro bits para codificar los dgitos del 0 al 9 (desperdiciando las seis combinaciones que van de la 1010 a la 1111). La ventaja es la simplicidad de conversin a/de base 10, que resulta inmediata. Los nmeros BCD pueden almacenarse desempaquetados, en

cuyo caso cada byte contiene un dgito BCD (Binary-Coded Decimal); o empaquetados, almacenando dos dgitos por byte (para construir los nmeros que van del 00 al 99). La notacin BCD ocupa cuatro bits -un nibble- por cifra, de forma que en el formato desempaquetado el nibble superior siempre es 0. 1.7.3. - NUMEROS EN PUNTO FLOTANTE. Son grupos de bytes en los que una parte se emplea para guardar las cifras del nmero (mantisa) y otra para indicar la posicin del punto flotante (exponente), de modo equivalente a la notacin cientfica. Esto permite trabajar con nmeros de muy elevado tamao -segn el exponente- y con una mayor o menor precisin en funcin de los bits empleados para codificar la mantisa. 1.7.4. - CDIGO ASCII. El cdigo A.S.C.I.I. (American Standard Code for Information Interchange) es un convenio adoptado para asignar a cada carcter un valor numrico; su origen est en los comienzos de la Informtica tomando como muestra algunos cdigos de la transmisin de informacin de radioteletipo. Se trata de un cdigo de 7 bits con capacidad para 128 smbolos que incluyen todos los caracteres alfanumricos del ingls, con smbolos de puntuacin y algunos caracteres de control de la transmisin. Con posterioridad, con la aparicin de los microordenadores y la gran expansin entre ellos de los IBM-PC y compatibles, la ampliacin del cdigo ASCII realizada por esta marca a 8 bits, con capacidad para 128 smbolos adicionales, experimenta un considerable auge, siendo en la actualidad muy utilizada y recibiendo la denominacin oficial de pgina de cdigos 437 (EEUU). Se puede consultar al final de este libro. Es habitualmente la nica pgina soportada por las BIOS de los PC. Para ciertas nacionalidades se han diseado otras pginas especficas que requieren de un software externo. En las lenguas del estado espaol y en las de la mayora de los dems pases de la UE, esta tabla cubre todas las necesidades del idioma.

1.8. - OPERACIONES LGICAS EN BINARIO. Se realizan a nivel de bit y pueden ser de uno o dos operandos: x NOT (x) 0 1 00 01 10 11 1 0 0 0 0 1 0 1 1 1 0 1 1 0

x y x AND y x OR y x XOR y

Operaciones con nmeros binarios


[editar] Suma de nmeros binarios
La tabla de sumar para nmeros binarios es la siguiente: +0 1 001 1 1 10 Las posibles combinaciones al sumar dos bits son:

0+0=0 0+1=1 1+0=1 1 + 1 = 10

Note que al sumar 1 + 1 es 102, es decir, llevamos 1 a la siguiente posicin de la izquierda (acarreo). Esto es equivalente, en el sistema decimal a sumar 9 + 1, que da 10: cero en la posicin que estamos sumando y un 1 de acarreo a la siguiente posicin. Ejemplo
1 10011000 + 00010101 10101101

Se puede convertir la operacin binaria en una operacin decimal, resolver la decimal, y despus transformar el resultado en un (nmero) binario. Operamos como en el sistema decimal: comenzamos a sumar desde la derecha, en nuestro ejemplo, 1 + 1 = 10, entonces escribimos 0 en la fila del resultado y llevamos 1 (este "1" se llama acarreo o arrastre). A continuacin se suma el acarreo a la siguiente columna: 1 + 0 + 0 = 1, y seguimos hasta terminar todas la columnas (exactamente como en decimal).

[editar] Resta de nmeros binarios


El algoritmo de la resta en sistema binario es el mismo que en el sistema decimal. Pero conviene repasar la operacin de restar en decimal para comprender la operacin binaria, que es ms sencilla. Los trminos que intervienen en la resta se llaman minuendo, sustraendo y diferencia. Las restas bsicas 0 - 0, 1 - 0 y 1 - 1 son evidentes:

0-0=0 1-0=1 1-1=0

0 - 1 = 1 (se transforma en 10 - 1 = 1) (en sistema decimal equivale a 2 - 1 = 1)

La resta 0 - 1 se resuelve igual que en el sistema decimal, tomando una unidad prestada de la posicin siguiente: 0 - 1 = 1 y me llevo 1, lo que equivale a decir en el sistema decimal, 2 - 1 = 1. Ejemplos
10001 -01010 00111 11011001 -10101011 00101110

En sistema decimal sera: 17 - 10 = 7 y 217 - 171 = 46. Para simplificar las restas y reducir la posibilidad de cometer errores hay varios mtodos:

Dividir los nmeros largos en grupos. En el siguiente ejemplo, vemos cmo se divide una resta larga en tres restas cortas:
100110011101 -010101110010 010000101011 1001 -0101 0100 1001 -0111 0010 1101 -0010 1011

Utilizando el complemento a dos (C2). La resta de dos nmeros binarios puede obtenerse sumando al minuendo el complemento a dos del sustraendo.

Ejemplo La siguiente resta, 91 - 46 = 45, en binario es:


1011011 -0101110 0101101 el C2 de 0101110 es 1010010 1011011 +1010010 10101101

En el resultado nos sobra un bit, que se desborda por la izquierda. Pero, como el nmero resultante no puede ser ms largo que el minuendo, el bit sobrante se desprecia. Un ltimo ejemplo: vamos a restar 219 - 23 = 196, directamente y utilizando el complemento a dos:
11011011 -00010111 11000100 el C2 de 00010111 es 11101001 11011011 +11101001 111000100

Y, despreciando el bit que se desborda por la izquierda, llegamos al resultado correcto: 11000100 en binario, 196 en decimal.

Utilizando el complemento a uno. La resta de dos nmeros binarios puede obtenerse sumando al minuendo el complemento a uno del sustraendo y a su vez sumarle el bit que se desborda.

[editar] Producto de nmeros binarios


La tabla de multiplicar para nmeros binarios es la siguiente: 01 000 101 El algoritmo del producto en binario es igual que en nmeros decimales; aunque se lleva a cabo con ms sencillez, ya que el 0 multiplicado por cualquier nmero da 0, y el 1 es el elemento neutro del producto. Por ejemplo, multipliquemos 10110 por 1001:
10110 1001 10110 00000 00000 10110 11000110

En sistemas electrnicos, donde suelen usarse nmeros mayores, se utiliza el mtodo llamado algoritmo de Booth.
11101111 111011 __________ 11101111 11101111 00000000 11101111 11101111 11101111 ______________ 11011100010101

[editar] Divisin de nmeros binarios


La divisin en binario es similar a la decimal; la nica diferencia es que a la hora de hacer las restas, dentro de la divisin, stas deben ser realizadas en binario. Ejemplo

Dividir 100010010 (274) entre 1101 (13):


100010010 |1101 -0000 010101 10001 -1101 01000 - 0000 10000 - 1101 00111 - 0000 01110 - 1101 00001

[editar] Conversin entre sistema binario y octal


[editar] Sistema Binario a octal
Debido a que el sistema octal tiene como base 8, que es la tercera potencia de 2, y que dos es la base del sistema binario, es posible establecer un mtodo directo para convertir de la base dos a la base ocho, sin tener que convertir de binario a decimal y luego de decimal a octal. Este mtodo se describe a continuacin: Para realizar la conversin de binario a octal, realice lo siguiente: 1) Agrupe la cantidad binaria en grupos de 3 en 3 iniciando por el lado derecho. Si al terminar de agrupar no completa 3 dgitos, entonces agregue ceros a la izquierda. 2) Posteriormente vea el valor que corresponde de acuerdo a la tabla: Nmero en binario 000 001 010 011 100 101 110 111 Nmero en octal 0 1 2 3 4 5 6 7

3) La cantidad correspondiente en octal se agrupa de izquierda a derecha. Ejemplos

110111 (binario) = 67 (octal). Proceso:

111 = 7

110 = 6 Agrupe de izquierda a derecha: 67

11001111 (binario) = 317 (octal). Proceso:

111 = 7 001 = 1 11 entonces agregue un cero, con lo que se obtiene 011 = 3 Agrupe de izquierda a derecha: 317

1000011 (binario) = 103 (octal). Proceso:

011 = 3 000 = 0 1 entonces agregue 001 = 1 Agrupe de izquierda a derecha: 103

Si el nmero binario tiene parte decimal, se agrupa de tres en tres desde el punto decimal hacia la derecha siguiendo los mismos criterios establecidos anteriormente para nmeros enteros. Por ejemplo: 0.01101 (binario) = 0.32 (octal) Proceso: 011 = 3 01 entonces agrege 010 = 2 Agrupe de izquierda a derecha: 32 Agrege la parte entera: 0.32

[editar] Octal a binario


Cada dgito octal se convierte en su binario equivalente de 3 bits y se juntan en el mismo orden. Ejemplo

247 (octal) = 010100111 (binario). El 2 en binario es 10, pero en binario de 3 bits es Oc(2) = B(010); el Oc(4) = B(100) y el Oc(7) = (111), luego el nmero en binario ser 010100111.

[editar] Conversin entre binario y hexadecimal


[editar] Binario a hexadecimal
Para realizar la conversin de binario a hexadecimal, realice lo siguiente: 1) Agrupe la cantidad binaria en grupos de 4 en 4 iniciando por el lado derecho. Si al terminar de agrupar no completa 4 dgitos, entonces agregue ceros a la izquierda. 2) Posteriormente vea el valor que corresponde de acuerdo a la tabla: Nmero 000 000 001 001 010 010 011 011 100 100 101 101 110 110 111 111 en binario 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Nmero en hexadecim 0 al

3) La cantidad correspondiente en hexadecimal se agrupa de derecha a izquierda. Ejemplos

110111010 (binario) = 1BA (hexadecimal). Proceso:

1010 = A 1011 = B 1 entonces agregue 0001 = 1 Agrupe de derecha a izquierda: 1BA

11011110101 (binario) = 6F5 (hexadecimal). Proceso:

0101 = 5 1111 = F 110 entonces agregue 0110 = 6 Agrupe de derecha a izquierda: 6F5

[editar] Hexadecimal a binario


Note que para pasar de Hexadecimal a binario, se remplaza el nmero Hexadecimal por el equivalente de 4 bits, de forma similar a como se hace de octal a binario.

[editar] Tabla de conversin entre decimal, binario, hexadecimal, octal, BCD, Exceso 3 y Gray o Reflejado
Decimal Binario Hexadecimal Octal 0 1 2 3 4 5 6 7 8 9 10 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 0 1 2 3 4 5 6 7 8 9 A 0 1 2 3 4 5 6 7 10 11 12 BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0011 0100 0101 0110 0111 1000 1001 Exceso 3 Gray o Reflejado 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 1111

0001 0000 1010

11 12 13 14 15

1011 1100 1101 1110 1111

B C D E F

13 14 15 16 17

0001 0001 1011 0001 0010 1100 0001 0011 0001 0100 0001 0101

1110 1010 1011 1001 1011

[editar] Factorializacin

Tabla de conversin entre binario, factor binario, hexadecimal, octal y decimal

Binario Factor binario Hexadecimal Octal Decimal 0000 0010 21 0000 0100 2 0000 1000 2 0001 0000 2 0010 0000 2 0100 0000 2 1000 0000 2
2 3 4 5 6 7

2 4 8 10 20 40 80

2 4 10 20 40 100 200

2 4 8 16 32 64 128

Potrebbero piacerti anche