Preparatorio 1

October 23, 2017 | Author: Renato Romero | Category: Binary Coded Decimal, Division (Mathematics), Multiplication, Decimal, Discrete Mathematics
Share Embed Donate


Short Description

Descripción: micros...

Description

ESCUELA POLITÉCNICA NACIONAL FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA

LABORATORIO DE SISTEMAS MICROPROCESADOS

PREPARATORIO DE:

SISTEMAS MICROPROCESADOS

Práctica #: 01

Tema: Algoritmos De Multiplicación Y División

Fecha de Realización: 11 / 03 / 2009

Realizado por: Alumna: Vilma Bonilla S.

Grupo:

Mi- 11 - 13

(Espacio Reservado) Fecha de entrega: ____ / ____ / ____ año

mes

día

f. ___________________ Recibido por:

Período:_________________________________________________ Oct - Mar

Sanción:

Mar - Ago

SISTEMAS MICRIPROCESADOS

TEMA: ALGORITMOS DE MULTIPICACION Y DIVISION

OBJETIVO: Realizar una revisión de la representación de números en un microprocesador, y los algoritmos de multiplicación y división binarios.

DESARROLLO: SISTEMAS DE NUMERACION Y CONVERSIONES: - Representación de de números en binario (enteros y decimales).

DECIMAL 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

COD. BINARIO (4 BITS) 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Ejemplo: 4.375  100.011 2.25  010.010 - Representación de de números en BCD (enteros y decimales). DECIMAL 0 1 2 3 4 5 6 7 8 9

Ejemplo:

COD. BINARIO (4 BITS) 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

13710  BCD

12.2510  BCD

0001 0011 0111

-

Bases Octal y Hexadecimal

Octal Hexadecimal

-

001 010 . 010

Dígitos 0,1,2,…..,7 0,1,2,…..,9 A,B,……..,F

Base 8 16

Ejemplo 714.772 7FA.B2

Indicadores de 7 segmentos Estos componentes son usados para la representación de números en muchos dispositivos electrónicos. Este indicador se ensambla de manera que se pueda activar cada segmento por separado, y gracias a esta combinación se puede representar todos los números en un display.

-

Conversiones: 

De cualquier base  decimal: 1011  B10 1*23 + 0*22 + 1*21 + 1*20 = 11



De decimal a  cualquier base: Entera  divisiones sucesivas Fraccionaria  multiplicaciones sucesivas Ejemplo: 100.2510  B8 100 / 8 = 18 residuo 4 18 / 8 = 1 residuo 4

0.25 * 8 = 2

100.25 10  114.28 Octal  Binario Cada cifra se sustituye por su equivalente binario. 4728  B2 100 111 010 Binario  Octal 100 111 010  B8

4

7

2

Octal  Decimal 7408  7 * 82 + 4 * 81 + 0 * 80 = 48410 Binario  Hexadecimal 1011 1010 0110 B A 6

 B16

Hexadecimal  Binario 9F2  B2 1001 1111 0010 Decimal  BCD 39010  0011 1001 0000 Para la conversión a BCD de decimal se la realiza de diferente manera que la conversión a binario. ARITMÉTICA BINARIA - Algoritmo para la Suma: Para la suma se tiene: 0+0=0 1+0=1 1+1=10 ejemplo: +

01001101 0111001 10000110

- Algoritmo para la Resta: Para la resta se tiene: 0-0=0 1-0=1 1-1=0 0-1= 11 Para representar números negativos se tene el bit de signo: ejemplo: + 4  0 0100 - 2.125  1 010.001

- Algoritmo para la Multiplicación La multiplicación se puede calcular fácilmente mediante un algoritmo de sumas y desplazamientos. Si el multiplicando es de n bits y el multiplicador es de m bits, la multiplicación en binario es muy sencilla ya que se trata de multiplicar por uno y por cero. Ejemplo: Sistema Decimal Sistema Binario multiplicando: 532 multiplicando: 1011 multiplicador: 431 multiplicador: 1101 532 11011 1596 10000 2128 11011 producto 229292 producto 1000111 En operaciones de desplazamiento el uno es el resultado matemático de la división x/x=1, siendo x cualquier valor, en cambio el cero resulta de la resta x-x =0. Primero se nombra con letras a los elementos de la multiplicación. - Se observa el bit menos significativo de Q 1: Se copia M y se suma 0: Se suman todos los ceros - Se desplazan los registros Aux y Q a la derecha. - Se repiten los pasos anteriores tantas veces como bits tenga el multiplicador Q. - El resultado se encuentra en Aux y Q. Siendo Aux un termino auxiliar. M * Q 0110110 * 01011011 = 0010011100011010

+ +

+ +

+

Aux 0000 0000 0110 1110 0110 1110 0011 0111 0110 1110 1010 0101 0101 0010 0010 1001 0110 1110 1001 0111 0100 1011 0110 1110 1011 1001 0101 1100 0010 1110 0110 1110 1001 1100 0100 1110

Q 0101 1011 0101 1011 0010 1101 0010 1101 1001 0110 0100 1011 0100 1011 1010 0101 1010 0101 1101 0010 0110 1001 0110 1001 0011 0100

0010 0111 0001 1010 - Algoritmo para la división: Se puede expresar la división como: Dividendo = Cociente * Divisor + Resto. El resto es más pequeño que el divisor, y hay que reservar el doble del espacio de éste para el dividendo. Ejemplo: 100010010 - 0000 10001 -1101 01000 - 0000 10000 - 1101 00111 - 0000 01110 - 1101 0001

1101 010101

Primero se nombra con letras a los elementos de la multiplicación. 1. M es el divisor, con Aux =0, Q el dividendo. (El número de bits de Aux = el número de bits de M). 2. A lo contrario de la Multiplicación, se añade a M un cero por la izquierda. 3. Al resultado se le suma el complemento de dos del divisor (M) de Aux. 4. Si el resultado cabe se desplazan Aux y Q a la izquierda introduciendo un 1. 5. Si no cabe se restaura Aux y adem}{as se desplazan Aux y Q a la izquierda introduciendo un cero. 6. La operación terminará cuando se ha realizado una operación de desplazamiento más que el número de bits de Q. 7. En Aux y Q estará tanto el resto el cociente de la división. BIBLIOGRAFÍA: Sistemas Digitales: NOVILLO, Carlos www.mitecnologico.com/Mai/multiplicacion_y_division www.emezete.com/artículos/multiplicacion

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF