1.4 Operaciones Básicas
En esta sección se establecen algoritmos para las operaciones fundamentales en las bases 2, 8 y 16.
Operaciones en Sistema Binario
Como en el sistema binario sólo hay 2 símbolos (bits) la adición y la multiplicación resultan muy simples:
Adición Multiplicación
| + | 0 | 1 |
| 0 | 0 | 1 |
| 1 | 1 | 1 |
| * | 0 | 1 |
| 0 | 0 | 0 |
| 1 | 0 | 1 |
Para sumar dos números en base 2 utilizamos el mismo procedimiento que en base 10, puesto que el algoritmo se establece por se un sistema posicional.
Suma Binaria:
1 1 1
1 1
10011 2
11011 2
1110 2
1001 2
--------------
------------
101001 2
10100 2
Producto Binario:
1101 2
10101 2
x 110 2
x 101 2
---------------
---------------
0000 2
10 101 2
1 101 2
00000 2
1 1 01 2
101 01 2
---------------
---------------
1 001 1 10 2
1 10 1001 2
Nota: Para la operación de resta veremos un algoritmo en base a complementos y sumas donde no intervienen comparaciones por lo que resulta más simple en computación.
Operaciones en Sistema Octal
Para el sistema octal utilizamos los símbolos {0,1,2,3,4,5,6,7} y por la característica de los sistemas posicionales con conocer las operaciones de adición y multiplicación para estos valores se puede calcular el de los demás con un algoritmo similar al de base 10 o de base 2.
Adición
| + | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 10 |
| 2 | 2 | 3 | 4 | 5 | 6 | 7 | 10 | 11 |
| 3 | 3 | 4 | 5 | 6 | 7 | 10 | 11 | 12 |
| 4 | 4 | 5 | 6 | 7 | 10 | 11 | 12 | 13 |
| 5 | 5 | 6 | 7 | 10 | 11 | 12 | 13 | 14 |
| 6 | 6 | 7 | 10 | 11 | 12 | 13 | 14 | 15 |
| 7 | 7 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
Ejemplos.
1
1
1
1
1
17406 8
4613.524 8
63054 8
261.37 8
---------------
----------------
102560 8
5075.114 8
Nota: En base diez utilizamos el punto decimal para separar las unidades y los dígitos después del punto represntan décimas, centésimas, milésimas, etc. ¿Qué valores representan los símbolos después del punto en base 8?
Multiplicación
| * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 2 | 0 | 2 | 4 | 6 | 10 | 12 | 14 | 16 |
| 3 | 0 | 3 | 6 | 11 | 14 | 17 | 22 | 25 |
| 4 | 0 | 4 | 10 | 14 | 20 | 24 | 30 | 34 |
| 5 | 0 | 5 | 12 | 17 | 24 | 31 | 36 | 43 |
| 6 | 0 | 6 | 14 | 22 | 30 | 36 | 44 | 52 |
| 7 | 0 | 7 | 16 | 25 | 34 | 43 | 52 | 61 |
Ejemplos.
14
25
427 8
* 56 8
----------
3212
2563
------------
31042
Operaciones en Sistema Hexadecimal
Para el sistema hexadecimal utilizamos los símbolos {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F} y por la característica de los sistemas posicionales con conocer las operaciones de adición y multiplicación para estos valores se puede calcular el de los demás con un algoritmo similar al de base 10 , base 8 o de base 2.
Adición
| + | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 |
| 2 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 |
| 3 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 |
| 4 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 |
| 5 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 |
| 6 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 |
| 7 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| 8 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 9 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| A | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| B | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A |
| C | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B |
| D | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C |
| E | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D |
| F | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E |
Ejemplos.
1
1
1
1
1
9A30C 16
7DB11.4C2 16
62F4B.21E 16
16
---------------
----------------
102560 8
5075.114 8
Nota: En base diez utilizamos el punto decimal para separar las unidades y los dígitos después del punto represntan décimas, centésimas, milésimas, etc. ¿Qué valores representan los símbolos después del punto en base 8?
Multiplicación FALTA EDITAR LA TABLA DEL 5 EN ADELANTE
| * | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
| 2 | 0 | 2 | 4 | 6 | 8 | A | C | E | 10 | 12 | 14 | 16 | 18 | 1A | 1C | 1E |
| 3 | 0 | 3 | 6 | 9 | C | F | 12 | 15 | 18 | 1B | 1E | 21 | 24 | 27 | 2A | 2D |
| 4 | 0 | 4 | 8 | C | 10 | 14 | 18 | 1C | 20 | 24 | 28 | 2C | 30 | 34 | 38 | 3C |
| 5 | 05 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 |
| 6 | 0 | C | 12 | 18 | 1E | 24 | 2A | |||||||||
| 7 | 7 | E | ||||||||||||||
| 8 | 0 | 8 | 10 | 18 | 20 | 28 | 30 | 38 | 40 | 48 | 50 | 58 | 60 | 68 | 70 | 78 |
| 9 | 0 | 9 | 12 | 1B | 24 | |||||||||||
| A | 0 | A | 14 | 1E | 28 | |||||||||||
| B | 0 | B | ||||||||||||||
| C | 0 | C | ||||||||||||||
| D | 0 | D | 19 | |||||||||||||
| E | 0 | E | | | |||||||||||||
| F | 0 | F |
Ejemplos. FALTA EDITAR
1
1
1
1
1
427 8
125.46 8
*
56 8
FALTAN 2 RENGLONES
2.5 8
---------------
----------------
8
5075.114 8
Ejercicio MCI 1
Resta
Operaciones basicas.
El sistema numérico decimal
El sistema de numeración decimal es el más usado, tiene como base el número 10, o sea que posee 10 dígitos (o simbolos) diferentes (0, 1, 2, 3, 4, 5, 6, 7, 8, 9). El sistema de numeración decimal fué desarrollado por los hindúes, posteriormente lo introducen los árabes en Europa, donde recibe el nombre de sistema de numeración decimal o arábigo. Si se aplica la notación posicional al sistema de numeración decimal entonces el dígito número n tiene el valor: (10n)* A Este valor es positivo y es mayor o igual que uno si el dígito se localiza a la izquierda del punto decimal y depende del dígito A, en cambio el valor es menor que uno si el dígito se localiza a la derecha del punto decimal. Por ejemplo, el número 3489.125 expresado en la notación posicional es:
primero 9 * (100) = 9 --------- primero 1*(10–1) = 0.1 segundo 8 * (101) = 80 -------- segundo 2*(10–2) = 0.02 tercero 4 * (102) = 400 -------- tercero 5*(10–3) = 0.005 cuarto 3 * (103) = 3000 Por lo tanto el valor del número es: donde: m = posición del dígito que se localiza a la derecha k = posición del dígito que se localiza a la izquierda b = valor de la base n = posición del dígito a evaluar a = dígito a evaluar para el ejemplo: = 5*(10–3) + 2*(10–2) + 1*(10–1) + 9*(100) + 8*(101) + 4*(102) + 3*(103) = 0.005 + 0.02 + 0.1 + 9 + 80 + 400 + 3000 = 3489.125 Notación Posicional del Sistema (10–6) = 0.000001 (10–5) = 0.00001 (10–4) = 0.0001 (10–3) = 0.001 (10–2) = 0.01 (10–1) = 0.1 (100) = 1 (101) = 10 (102) = 100 (103) = 1000 (104) = 10000 (105) = 100000 (106) = 10000000
Sistema binario
Suma binaria
La suma binaria se puede realizar cómodamente siguiendo las tres reglas descritas: 1º Si el número de unos (en sentido vertical) es par el resultado es 0. 2º Si el número de unos (en sentido vertical) es impar el resultado es 1. 3º Acarreo tantos unos como parejas (completas) de números 1 haya. Por ejemplo: Hay que sumar 1010 (que en decimal es 10) y 1111 (que en decimal es 15). 1010 1111 11001 ( que en decimal son 25). + 0 1 0 0 1 1 1 1
- 0 1
0 0 0 1 0 1
Resta binaria Las cuatro reglas básicas para la resta de números binarios son: • 0 - 0 = 0 • 1 – 1 = 0 • 1 – 0 = 1 • 0 – 1 = 1 ( con acarreo negativo de 1) Al restarse números algunas veces se genera un acarreo negativo que pasa a la siguiente columna de la izquierda. En binario solo se produce este acarreo cuando se intenta restar 1 de 0 (4ª regla). Ejemplo sobre esta situación, restar 011 de 101: 101 – 011 = 010 Detalle de la operación:
101
-
011
010 1. en la columna derecha se realiza la resta de 1 – 1 = 0 2. en la columna central se produce un acarreo negativo de 1 a la columna siguiente (4ª regla) que da lugar a 10 en esta columna, luego 10 −1 = 1 con acarreo de 1 a la siguiente columna 3. en la columna izquierda, se resta 1 del acarreo producido en la anterior columna y da como resultado 0, luego se resta 0 – 0 = 0 Multiplicación binaria La multiplicación binaria es tan sencilla como la decimal, y es que funcionan de la misma manera. Aquí tienen un ejemplo de multiplicación binaria. Supongamos que multipliquemos 10110 por 1001: 10110 1001
10110 00000 00000 10110
11000110 Vamos multiplicando por cada dígito de 1001 el conjunto 10110 y luego procedemos a hacer la suma. Hay otro tipo de procedimientos para realizar esta multiplicacion sin signo y es el llamado “Multiplicación por el metodo de Suma-Desplazamiento”. Sistema Octal El sistema de numeración octal es también muy usado en la computación por tener una base que es potencia exacta de 2 o de la numeración binaria. Esta característica hace que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8 dígitos (0,1,2,3,4,5,6,7) y tienen el mismo valor que en el sistema de numeración decimal. Como el sistema de numeración octal usa la notación posicional entonces para el número 3452.32q tenemos: 2*(80) + 5*(81) + 4*(82) + 3*(83) + 3*(8–1) + 2*(8–2) = 2 + 40 + 4*64 + 64 + 3*512 + 3*0.125 + 2*0.015625 = 2 + 40 + 256 + 1536 + 0.375 + 0.03125 = 1834 + 40625dentonces, 3452.32q = 1834.40625d El subindice q indica número octal, se usa la letra q para evitar confusión entre la letra o y el número 0. CONVERSIÓN DE OCTAL A BINARIO: para convertir un numero octal a binario se sustituye cada dígito octal en por sus correspondientes tres dígitos binarios según la siguiente tabla. Dígito Octal Dígito Binario 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 Ej.: Convertir el número octal 1274 en binario.
1 2 7 4 001 010 111 100 Por lo tanto el número octal en binario es igual a: 001010111100 SUMA OCTAL: Se debe restar o dividir la semisuma de cada columna, cuando la misma exceda la base del sistema, y colocar en la columna inmediata del lado izquierdo, el valor del acarreo tantas veces se haya superado la base del sistema. De esta misma forma cada unidad que se acarree equivale a ocho unidades de la columna anterior. Ejemplo: Dado los números binarios: A. 40740647 y B. 25675300, Obtener A+B
1 1 0 0 1 1 1 0 1 MULTIPLICACIÓN OCTAL: Ej: Multiplicar A. 672348 y B. 168
6 7 2 3 4 x 1 6 5 1 3 6 5 0
+ 6 7 2 3 4 1 4 0 6 2 1 0
Sistema Hexadecimal Un gran problema con el sistema binario es la verbosidad. Para representar el valor 20210 se requieren ocho dígitos binarios, la versión decimal sólo requiere de tres dígitos y por lo tanto los números se representan en forma mucho más compacta con respecto al sistema numérico binario. Desafortunadamente las computadoras trabajan en sistema binario y aunque es posible hacer la conversión entre decimal y binario, ya vimos que no es precisamente una tarea cómoda. El sistema de numeración hexadecimal, o sea de base 16, resuelve este problema (es común abreviar hexadecimal como hex aunque hex significa base seis y no base dieciseis). El sistema hexadecimal es compacto y nos proporciona un mecanismo sencillo de conversión hacia el formato binario, debido a ésto, la mayoría del equipo de cómputo actual utiliza el sistema numérico hexadecimal. Como la base del sistema hexadecimal es 16, cada dígito a la izquierda del punto hexadecimal representa tantas veces un valor sucesivo potencia de 16, por ejemplo, el número 123416 es igual a: 1*163 + 2*162 + 3*161 + 4*160 lo que da como resultado: 4096 + 512 + 48 + 4 = 466010 Cada dígito hexadecimal puede representar uno de dieciseis valores entre 0 y 1510. Como sólo tenemos diez dígitos decimales, necesitamos inventar seis dígitos adicionales para representar los valores entre 1010 y 1510. En lugar de crear nuevos simbolos para estos dígitos, utilizamos las letras A a la F. La conversión entre hexadecimal y binario es sencilla, considere la siguiente tabla: Binario Hexadecimal
0000 0 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 A 1011 B 1100 C 1101 D 1110 E 1111 F Esta tabla contiene toda la información necesaria para convertir de binario a hexadecimal y visceversa. Para convertir un número hexadecimal en binario, simplemente sustituya los correspondientes cuatro bits para cada dígito hexadecimal, por ejemplo, para convertir 0ABCDh en un valor binario: 0 A B C D (Hexadecimal) 0000 1010 1011 1100 1101 (Binario) Por comodidad, todos los valores numéricos los empezaremos con un dígito decimal; los valores hexadecimales terminan con la letra h y los valores binarios terminan con la letra b. La conversión de formato binario a hexadecimal es casi igual de fácil, en primer lugar necesitamos asegurar que la cantidad de dígitos en el valor binario es múltiplo de 4, en caso contrario agregaremos ceros a la izquierda del valor, por ejemplo el número binario 1011001010, la primera etapa es agregarle dos ceros a la izquierda para que contenga doce ceros: 001011001010. La siguiente etapa es separar el valor binario en grupos de cuatro bits, así: 0010 1100 1010. Finalmente buscamos en la tabla de arriba los correspondientes valores hexadecimales dando como resultado, 2CA, y siguiendo la convención establecida: 02CAh. SUMA HEXADECIMAL: Se debe restar o dividir la semisuma de cada columna, cuando la misma exceda la base del sistema, y colocar en la columna inmediata del lado izquierdo, el valor del acarreo tantas veces se haya superado la base del sistema. Cada unidad que se acarree equivale a dieciséis unidades de la columna anterior. Ejemplo: Dado los números binarios:
MULTIPLICACIÓN HEXADECIMAL: Ej: Multiplicar A. 67D3416 y B. 1216
6 7 D 3 4 x 1 2 C F A 6 8
+ 6 7 D 3 4
7 4 C D A 8
| <= | Tema Anterior: 1.3 Conversiones |
| => | Siguiente Tema: 1.5 Aritmetica Modular |
| Regresar al TEMARIO: Matematicas para Computacion |
Superscriptdaniel