Autor Tema: consulta sobre multiplicacion de numeros mayores a 100 bits  (Leído 4538 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado flecha

  • PIC10
  • *
  • Mensajes: 15
consulta sobre multiplicacion de numeros mayores a 100 bits
« en: 13 de Marzo de 2007, 20:45:55 »
hola
soy estudiante de electronica y tengo una tarea hacer un codigo en ASM con el cual pueda multiplicar numeros que sean mayores a 100bits e igualmente otro programa que me permita hallar el factorial de un numero de este tamaño ya que como el maximo tamaño de los registros de proposito general son de 8,16,32 no se como implementarlo
gracias por su colaboracion
 :-/

Desconectado manwenwe

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2211
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #1 en: 14 de Marzo de 2007, 00:22:41 »
Hola flecha, microchip, en su web, tiene ejemplos de rutinas en asm para realizar multiplicación de registros en asm. Partiendo de esta base y calentandote el coco con la algoritmia(creo que serían unos cuantos bucles :D) creo que podrías llegar a conseguir la multiplicación. En cuanto a lo del factorial, más que una tarea de clase o un reto... lo que parece es una broma de mal gusto :D :D :D. No creo que esté al alcance de la capaciad de computación de un pic... como ejemplo, la mayoría de calculadoras "normalitas" (tipo casio fx) no calculan factoriales mayores al de  69 y tu estas hablando de calcular el factorial de numeros del orden de 1.26*10^31...

Con esto no intento desanimarte, sino que reflexiones un poco acerca de la viabilidad de lo que tienes en mente, antes de que te pongas con ello...

Saludos y suerte!
Ojo por ojo y todo el mundo acabará ciego - Mahatma Gandhi -

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #2 en: 14 de Marzo de 2007, 09:14:24 »
hola
soy estudiante de electronica y tengo una tarea hacer un codigo en ASM con el cual pueda multiplicar numeros que sean mayores a 100bits e igualmente otro programa que me permita hallar el factorial de un numero de este tamaño ya que como el maximo tamaño de los registros de proposito general son de 8,16,32 no se como implementarlo
gracias por su colaboracion
 :-/


Más allá de que no es un problema de simple solución, creo que sería posible resolverlo pensando en usar un pic con unos cuantos bytes de RAM!  Ahora bien, es probable que le demande mucho tiempo hacer esos cálculos jeje.

Lo que me sorprende más es:
¿En qué estará pensando ese profesor cuando da a sus alumnos esas tareas?
¿Realmente cree que así van a aprender a programar o de pics? 
¿Realmente cree que esos son los pasos adecuados para enseñar a programar?
Sinceramente me gustaría conocer sus argumentos porque me parece que le está errando el camino.  No me parece que sea necesario reinventar la rueda salvo que el profesor en cuestión necesite resolver eso para un trabajo particular putual ( :P)

- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #3 en: 14 de Marzo de 2007, 10:34:30 »
Citar
Ahora bien, es probable que le demande mucho tiempo hacer esos cálculos jeje.

Pseeee!!!! Estuve sacando cuentas "en el aire" con la calc. de Windows, y para factoriales mas alla de 100! con un micro de 20Mhz (puedo estar errado) superaba el año de proceso!  :shock:
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #4 en: 14 de Marzo de 2007, 11:11:33 »
Sera mayor a 100 decimal??  :?

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #5 en: 14 de Marzo de 2007, 11:14:05 »
No entendi la pregunta, PICMouse....

¿Te referis a que el resultado tiene mas de 100 digitos?

Si, es exactamente 100 ! = 9.33262154 × 10 a la 157 ...o sea, 157 digitos.  :shock:
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #6 en: 14 de Marzo de 2007, 11:16:01 »
El mayor mumero de 100 bits es    2^100 = 1.2676506 × 10 a la 30

O sea...no se puede sacar un factorial tan grande con solo 100 bits.

(como vengo con las cuentas!)
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #7 en: 14 de Marzo de 2007, 11:20:44 »
O sea...ya que estamos, que no se puede meter un numero mas grande que el 29! (= 8.84176199 × 10^30)

¡No jodo más!  :shock:
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado LABmouse

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3575
    • Juntos es mejor
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #8 en: 14 de Marzo de 2007, 11:26:32 »
Holas, no aitopes, es que viendo que es una tarea de un profesor que pretende enseñar a programar con estos ejercicios tan fuera de cualquier contexto. Lo único que se me ocurre es que el profesor pretendía era multiplicar números de hasta el valor de 100 decimal.

Ejemplo máximo 100x100.

Será?? :?

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #9 en: 14 de Marzo de 2007, 11:30:07 »
Si es asi, tiene mucha mejor pinta. :)

Y se arregla con muchos menos bits: 100x100 = 10.000 (decimal) = 10011100010000 (binario), o sea, "solo" 14 bits, o sea, con una variable Word bastaria.


Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #10 en: 14 de Marzo de 2007, 13:51:49 »
...
Lo que me sorprende más es:
¿En qué estará pensando ese profesor cuando da a sus alumnos esas tareas?
¿Realmente cree que así van a aprender a programar o de pics? 
¿Realmente cree que esos son los pasos adecuados para enseñar a programar?
Sinceramente me gustaría conocer sus argumentos porque me parece que le está errando el camino.  No me parece que sea necesario reinventar la rueda salvo que el profesor en cuestión necesite resolver eso para un trabajo particular putual ( :P)


pues creelo Maunix, que si los hay, y he visto a profesores ratas, que ponen a parir a estudiantes que ven por primera vez esta materia :?

Salu2
Pedro
La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: consulta sobre multiplicacion de numeros mayores a 100 bits
« Respuesta #11 en: 14 de Marzo de 2007, 15:16:27 »
pues creelo Maunix, que si los hay, y he visto a profesores ratas, que ponen a parir a estudiantes que ven por primera vez esta materia :?

Si, pues debe haber de todo en este mundo, pero opino que una cosa es exigir con algo útil (por ej. que te pidan que hagas una placa de adquisición de datos cuando aun no sabes ni prender un led) y otra es que te pidan algo que no tiene mayor sentido como calcular el factorial de 100!!

En el primer caso te harán parir a más no poder pero si lo logras hacer andar (aún si es con mucha ayuda de algún gurú o mentor) habrás aprendido algo útil!

En el segundo caso.. no le veo el sentido.   :?    En este mundo hay tantas cosas para aprender y sobre todo muchas cosas útiles y a uno nunca le alcanza el tiempo para aprender estas cuestiones! y que encima lo hagan perder el tiempo a uno con cosas inútiles ... 

 :) :)






- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)