Your SlideShare is downloading. ×
Ejemplo de algoritmo de booth
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Ejemplo de algoritmo de booth

18,764
views

Published on

Published in: Education, Business, Technology

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
18,764
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
371
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Ejemplo de Algoritmo de Booth<br />CS440 <br />Puntos a recordar<br /> Cuando se utiliza el algoritmo de Booth:<br />Usted necesitará el doble de bits en su producto como que tiene en su original de dos operandos.<br />El bit más a la izquierda de sus operandos (tanto multiplicando y multiplicador) es un bit de signo, y no puede ser utilizado como parte del valor.<br /> Para empezar<br />Decida qué operando será el multiplicador y que será el multiplicando<br />Convertir ambos operandos en complemento a dos la representación utilizando bits X<br />X debe ser al menos un poco más de lo necesario para la representación binaria del operando numéricamente más grande<br />Comience con un producto que consiste en el multiplicador con una X adicional cero bits<br /> Ejemplo<br />Un ejemplo de multiplicación de 2 x (-5)<br />Para nuestro ejemplo, vamos a revertir la operación, y se multiplican (-5) x 2<br /> El operando numéricamente mayor (5) se requieren 3 bits para representar en binario (101).  Así que debemos utilizar al menos 4 bits para representar los operandos, para permitir el bit de signo.<br />Vamos a usar 5-bit complemento a 2:<br />-5 Es 11011 (multiplicador)<br />2 es 00010 (multiplicando)<br /> A partir de productos<br /> El multiplicador es:<br />     11011<br />Añadir 5 ceros a la izquierda para el multiplicador para obtener el producto de principio:<br />    00000 11011<br /> Paso 1 para cada paso<br />Utilice el LSB (bit menos significativo) y el LSB anterior para determinar la acción de la aritmética.<br />Si es el primer paso, utilice 0 como el LSB anterior.<br />Aritmética de las acciones posibles:<br />00  ninguna operación aritmética<br /> 01  añadir multiplicando a la mitad izquierda del producto<br />10  restar multiplicando de la mitad izquierda del producto<br />11  ninguna operación aritmética<br /> Paso 2 para cada paso<br />Realizar un cambio aritmético a la derecha (ASR) en todo el producto.<br />NOTA: Para operandos X-bit, algoritmo de Booth requiere X pasa.<br /> Ejemplo<br />Vamos a continuar con nuestro ejemplo de la multiplicación de (-5) x 2<br />Recuerde:<br />-5 Es 11011 (multiplicador)<br />2 es 00010 (multiplicando)<br />Y hemos añadido 5 ceros a la izquierda para el multiplicador para obtener el producto de principio:<br />         00000 11011<br /> Ejemplo continuación<br />Producto inicial y de las anteriores LSB<br />   00000 11011 0<br />(Nota: Ya que este es el primer paso, se utiliza 0 para el LSB anterior)<br />Paso 1, Paso 1:Examine los últimos 2 bits<br />   00000 1101 1 0 <br />Los dos últimos son de 10 bits, por lo que necesitamos:<br />restar el multiplicando de la mitad izquierda del producto<br /> Ejemplo: Paso 1 continuación<br /> Paso 1, Paso 1: Aritmética de acción<br /> (1) 00.000 (a la izquierda de la mitad de los productos)<br />   -00.010 (Mulitplicand)<br />    11  110 (usa un fantasma prestado)<br />Lugar resultado en la mitad izquierda del producto<br />      11110 11011 0<br /> Ejemplo: Paso 1 continuación<br />Paso 1, Paso 2: ASR (desplazamiento a la derecha aritmética)<br />Antes de ASR<br />           11110 11011 0<br /> Después de ASR<br />   11111 01101 1<br />(a la izquierda-la mayoría fue de 1 bit, de modo que un 1 se desplazó en a la izquierda)<br />Paso 1 está completa.<br /> Ejemplo: Paso 2<br />De productos actuales y anteriores LSB<br />   11111 01101 1   <br />Paso 2, Paso 1: Examine los últimos 2 bits<br />             11111 0110 1 1 <br />Los dos últimos son de 11 bits, por lo que NO es necesario realizar una acción aritmética --<br /> simplemente vaya al paso 2.<br /> Ejemplo: Paso 2 continuación<br />Paso 2, Paso 2: ASR (desplazamiento a la derecha aritmética)<br />Antes de ASR<br />            11111 01101 1<br /> Después de ASR<br />  11111 10110 1<br /> (a la izquierda-la mayoría fue de 1 bit, de modo que un 1 se desplazó en a la izquierda)<br /> Paso 2 está completo.<br /> Ejemplo: Paso 3<br />De productos actuales y anteriores LSB<br />             11111 10110 1   <br /> Paso 3, Paso 1: Examine los últimos 2 bits<br />            11111 1011 0 1 <br />Los dos últimos bits son 01, por lo que necesitamos:<br />Añadir el multiplicando a la mitad izquierda del producto<br /> Ejemplo: Paso 3 continuación<br /> Paso 3, Paso 1: Aritmética de acción<br />  (1) 11.111 (a la izquierda de la mitad de los productos)<br />     00 010 (mulitplicand)<br />     00 001 (caída de llevar a la a la izquierda)<br />Lugar resultado en la mitad izquierda del producto<br />   00001 10110 1<br />Ejemplo: Paso 3 continuación<br />Paso 3, Paso 2: ASR (desplazamiento a la derecha aritmética)<br /> Antes de ASR<br />   00001 10110 1<br /> Después de ASR<br />    00000 11011 0<br /> (a la izquierda-la mayoría poco fue de 0, por lo que se desplazó a 0 en el de la izquierda)<br />Paso 3 está completa.<br /> Ejemplo: Paso 4<br />De productos actuales y anteriores LSB<br />   00000 11011 0<br />Paso 4, Paso 1: Examine los últimos 2 bits<br />             00000 1101 1 0 <br />Los dos últimos son de 10 bits, por lo que necesitamos:<br />restar el multiplicando de la mitad izquierda del producto<br /> Ejemplo: Paso 4 continuación<br /> Paso 4, Paso 1: Aritmética de acción<br />   (1) 00.000 (a la izquierda de la mitad de los productos)<br />     -00.010 (Mulitplicand)<br />      11 110 (usa un fantasma prestado)<br />Lugar resultado en la mitad izquierda del producto<br />    11110 11011 0<br /> Ejemplo: Paso 4 continuación<br />Paso 4, Paso 2: ASR (desplazamiento a la derecha aritmética)<br />Antes de ASR<br />   11110 11011 0<br /> Después de ASR<br />   11111 01101 1<br /> (a la izquierda-la mayoría fue de 1 bit, de modo que un 1 se desplazó en a la izquierda)<br /> Paso 4 es completo.<br />Ejemplo: Pase 5<br />De productos actuales y anteriores LSB<br />                11111 01101 1   <br />Pase 5, Paso 1: Examine los últimos 2 bits<br />                11111 0110 1 1 <br />Los dos últimos son de 11 bits, por lo que NO es necesario realizar una acción aritmética --<br />simplemente vaya al paso 2.<br /> Ejemplo: Pase 5 continuó<br />Pase 5, Paso 2: ASR (desplazamiento a la derecha aritmética)<br /> Antes de ASR<br />    11111 01101 1<br /> Después de ASR<br />   11111 10110 1<br /> (a la izquierda-la mayoría fue de 1 bit, de modo que un 1 se desplazó en a la izquierda)<br /> Paso 5 es completa.<br /> Producto Final<br /> Hemos completado 5 pases de la 5-operandos poco, así que hemos terminado.<br />La eliminación de la LSB anterior, el producto final resultante es:<br />   11111 10110<br /> Verificación<br />Para confirmar que tenemos la respuesta correcta, convertir el complemento a 2 producto final de nuevo a decimal.<br />Producto final: 11111 10110<br />Decimal Valor: -10<br /> que es el producto correcto de:<br />(-5) X 2  <br />http://translate.google.com.ec/translate?hl=es&langpair=en|es&u=http://academic.regis.edu/psmallwo/SitePages/CS440/Presentations/Wk1online-BoothsAlg.ppt<br />