Blogia
Tio Petros

Multiplicación "a la rusa" (2 de 2)


Segundo y último post de la serie de Jorge Alonso sobre este método de multiplicación

Retomemos el ejemplo anterior:

69 x 13
34 x 26
17 x 52
8 x 104
4 x 208
2 x 416
1 x 832

Pero traduzcámoslo a numeración binaria:

1000101 x 1101
100010 x 11010
10001 x 110100
1000 x 1101000
100 x 11010000
10 x 110100000
1 x 1101000000

Como vemos, en base 2 dividir y multiplicar por 2 es sencillísimo:
basta con tachar la última cifra en el primer caso (recordemos que el
resto se ignora), y añadir un cero en el segundo.

El siguiente paso es tachar las filas cuyo primer término sea par, es
decir, que termine en cero:

1000101 x 1101
--------------------
10001 x 110100
--------------------
--------------------
--------------------
1 x 1101000000

Y por último se suma la segunda columna:

+ 1101
+ 110100
+ 1101000000
============
1110000001

Fijémonos que lo que en realidad hemos hecho ha sido

(1 x 1101) + (100 x 1101) + (1000000 x 1101)

que no es más ni menos que

(1 + 100 + 1000000) x 1101

= 1000101 x 1101

Es decir, lo único que hacemos es aplicar una propiedad básica de la
multiplicación:

1000101 x 1101 = (1 x 1101) + (100 x 1101) + (1000000 x 1101)

Si fuese en base 10, esta propiedad la escribiríamos como:

536 = 500 + 30 + 6

536 x 42 = (500 x 42) + (30 x 42) + (6 x 42)

12 comentarios

Generic Cialis -

Yo pienso que los verdaderos matematicos son aquellos que pueden hacer las operaciones en notacion binaria.

Johel -

jajaja, me pusieron en un examen parcial para un programa en lenguaje dev-pascal! XD

jesus -

heyyyyyyyyyyyy

Estudiante informatico -

Me resultó muy útil para programar en lenguaje ensamblador un programa para multiplicar, era 5 veces más eficiente que liarse a hacer sumas.

erika -

sin tanto rollo cual seria la formula para sacar la multiplicacion rusa señor jorge, gracias

BitFarmer -

Pues a mi hijo creo que le enseñare este metodo ruso, a mi me parece mas simple que el "occidental", y te ahorras las tablas de multiplicar (menos la del dos), que son un toston!

Aqui explican el metodo egipcio, que debe ser preculsor del ruso, digo yo:

http://www.revistaarabe.com.ar/noticias_matematicas_egipto.asp

Toni -

IMPRESIONANTE! Que 'gonito' que es esto de los métodos para realizar la multiplicación. Creo que tengo por el despacho algún viejo número de 'Mundo Científico' o de 'Investigación y Ciencia' donde comentaban algo de los métodos medievales de multiplicación. Si lo encuentro ya miraré de poner alguna reseña o similar en la lista de correo de Tio Petros.

icp -

Sí, si con tontería no me refería a el "metodo ruso".

A lo que me refería es que si pretendiéramos traducirlo a decimal (como hacía yo en el comentario) a ver si encontramos otro sistema para multiplicar, no encontraríamos ningún método nuevo sino lógicamente nuestra forma de multiplicar de toda la vida.

Respecto a lo que comenta Tio Petros acerca de las reglas "mágicas" un ejemplo bastante claro me parece el típico método que enseñan en los colegios para hallar raíces cuadradas. Y es que no es obvio(o al menos a mí no me lo parece) por qué funciona, hay que pensárselo un rato hasta que encuentras la explicación :).

Tio Petros -

En efecto, no es ninguna tontería. Los algoritmos de manejo de números pueden volverse evidentes en determinados sistemas de numeración. Lo que ocurre es que en base 10, que es la que utilizamos, quedan oscurecidos los porqués.

Por otro lado, los algoritmos que cada pueblo ha usado a lo largo de la historia son para las personas que los usan simples reglas mágicas que cumplen su cometido perfectamente. Muy pocos sabrán porqué funciona... ni lo necesitan.

Si el método es correcto, en el fondo no será sino una versión de la misma cosa, aunque los ropajes exteriores sean totalmente diferences.

Dem -

No es ninguna tontería. A los ordenadores le resulta tremendamente fácil multiplicar y dividir por 2 mientras que hacerlo por otros números resulta más costoso (en tiempo). El motivo es que, como explica Jorge Alonso, en realidad estas operaciones sólo son desplazamientos de un bit.

Lo siento, deformación profesional ;)

icp -

Creo que algo parecido se podría hacer en decimal... solo que donde multiplicamos y dividimos por 2 lo haríamos por 10, y luego habría que eliminar sólo las filas con el número de la izquierda múltiplo de 10

Y a la hora de sumar habría que contar cada número que quede en la derecha tantas veces como marquen las unidades del de su izquierda en lugar de una sola vez...

Pero en realidad todo esto es una tontería porque acabas haciendo lo mismo que con el método normal de multiplicar ;).

icp -

Muy bonito :)