[C con Clase] multiplicar 2 variables

pepe perez darkmalka en hotmail.com
Mar Feb 17 11:31:21 CET 2015


buh Xd
yo de compiladores ni idea, con decirte q ni di instalado la libreria en win ya t puedes imaginar, la tuve q instalar en linux.
lo q si se es q esta libreria esta hecha en asembler. para manejar numeros de 50 digitos o mas, se la recomiendo a cualkiera.
hice en c++ un bucle para generar un numero de 100000 digitos y tarda como unos 30 segundos, con esta libreria no tarda ni 1
un saludo y gracias por tu tiempo
> Date: Mon, 16 Feb 2015 19:05:32 +0100
> From: juanjolistascorreo en gmail.com
> To: cconclase en listas.conclase.net
> Subject: Re: [C con Clase] multiplicar 2 variables
> 
> el Mon, 16 Feb 2015 10:14:52 +0100
> pepe perez <darkmalka en hotmail.com> dijo:
> 
> > a ver con esto
> > uint64_t a=44444444;uint64_t b=55555555;uint64_t c = a % b;
> > sale el resto de la division.
> > lo q yo kiero es multiplicar a*b y elresultado se supone q da 128
> > bits sobre el papel, en programacion directamente solo t puede dar 64
> > bits, y seran los primeros 64, pero como consigo los 64 ultimos? yo
> > sigo sin saberlo, pero ya no es necesario encontre una libreria hecha
> > por unos suecos q puedes hacer multiplicaciones d tantos bits como
> > disponga tu ram. cualkier operacion aritmetrica realmente
> > 
> > gmplib.org para el q le interese
> > 
> 
> Nunca llegué a usar realmente el ensamblador, y mucho menos a
> dominarlo. Pero recuerdo que los X86 tenian instrucciones específicas
> para trabajar con datos de ancho superior al tamaño de palabra. Creo
> que una de las instrucciones permitia guardar el resultado en 2
> palabras, en lugar de 1 como es lo habitual, y ponia a 1 uno de los
> flags de la CPU.
> 
> En otras palabras, el como se trabaja con datos que puedan exceder del
> tamaño de palabra del procesador depende por completo del compilador, y
> no es portable entre arquitecturas. Esto es uno de los motivos de la
> existencia de librerías como la que comentas: permitir operaciones de
> ancho arbitrario de manera portable.
> 
> Si quieres prescindir de ella, debes mirar la documentación del
> compilador que utilices, o escribir tus propias funciones a mano en
> ensamblador.
> 
> O, tal y como comentas, utilizar librerias escritas para ello ;-)
> 
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ
 		 	   		  
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.conclase.net/pipermail/cconclase_listas.conclase.net/attachments/20150217/13396b95/attachment.html>


Más información sobre la lista de distribución Cconclase