calculatrice > processeur ?????

calculatrice > processeur ????? - Programmation

Marsh Posté le 16-10-2001 à 21:10:08    

voilà, j'ai une TI89 et j'arrive à faire des calculs plus importants que sur un PC ... Comment on fait pour gérer des nombres de plus de 8 octets ????
Merci

Reply

Marsh Posté le 16-10-2001 à 21:10:08   

Reply

Marsh Posté le 16-10-2001 à 21:12:13    

une calculatrice est généralement orientée BCD, un cpu binaire pur.
 
bin faire des additions/sustractions largement supérieurs aux registres du cpu est très facile, fo juste passer par la carry.
mais les multiplications/divisions c'est une autre paire de manche.

Reply

Marsh Posté le 16-10-2001 à 21:25:41    

mais c koi carry ?
en fait, moi je fais juste un peu de Visual Basic mais je ne m'étais jamais posé la question de surmonter les overflows ...
donc concrètement, je fais comment ? :) :)

Reply

Marsh Posté le 16-10-2001 à 21:27:04    

Ben tu codes toi même les opérations arithmétiques sur des grands nombres (exo classique de prog)

Reply

Marsh Posté le 16-10-2001 à 21:28:25    

mais oui ! j'y ai pensé à ça ! mais il faut bien définir un type pour les variables :??:

Reply

Marsh Posté le 16-10-2001 à 23:18:50    

Ben wé, et c'est celui que t'auras créé toi même !

Reply

Marsh Posté le 17-10-2001 à 07:54:22    

Je ferais ça en objet..
Dans une classe, tu définis ton type de 16 octets avec deux membres private de 8 octets, et tu surcharge les opérateurs
+, - / et *


---------------
The best way to accelerate a computer running windows is at 9.8m.s-2
Reply

Marsh Posté le 17-10-2001 à 07:58:53    

bjone a écrit a écrit :

une calculatrice est généralement orientée BCD, un cpu binaire pur.
 
bin faire des additions/sustractions largement supérieurs aux registres du cpu est très facile, fo juste passer par la carry.
mais les multiplications/divisions c'est une autre paire de manche.  




 
heu pour info la ti89 elle a un motorola 6800 qui n'est pas du tout orienté pour le calcul binaire...

Reply

Marsh Posté le 17-10-2001 à 09:49:46    

voilà, j'ai une TI89 et j'arrive à faire des calculs plus importants que sur un PC ... Comment on fait pour gérer des nombres de plus de 8 octets ????  
bjone  
 
Et si tu ne faisais rien de special mais utilisais simplement les types les plus longs genre double ???   :na:  
dim i as double       type 64 bits

Reply

Marsh Posté le 17-10-2001 à 09:57:54    

ben chais po, ça dépends ce qu'il entends pas 8 octets le monsieur :??:

Reply

Marsh Posté le 17-10-2001 à 09:57:54   

Reply

Marsh Posté le 17-10-2001 à 13:47:50    

La 89 a un motorola 68000 (68k pour les intimes)
cadencé à 12MHz pour les HW2 et 10 pour les HW1.

Reply

Marsh Posté le 17-10-2001 à 21:15:34    

idées...
je viens de penser à un truc carrément différent..
si jamais on définit des variables string (255 caractères), on peut leur faire porter des 1 et des 0. il suffit alors de les mettre bout à bout. mais après pour les opérations, c plus compliqué :(
sinon, comment on fait pour créer un type en visual basic ?

Reply

Marsh Posté le 18-10-2001 à 02:16:30    

couitchy a écrit a écrit :

idées...
je viens de penser à un truc carrément différent..
si jamais on définit des variables string (255 caractères), on peut leur faire porter des 1 et des 0. il suffit alors de les mettre bout à bout. mais après pour les opérations, c plus compliqué :(
sinon, comment on fait pour créer un type en visual basic ?  




 
je crois que comme ça, ça va pas le faire...
On peut prendre une liste chaînée d'entiers , et après il faut définir les opérations sur ces deux listes.
Pour écrire les opérations, on fait comme avec les nombres décimaux, sauf qu'on est en base 2^32

Reply

Marsh Posté le 18-10-2001 à 10:19:19    

[Mode Nostalgie ON]
je me rappelle j'avais comme sujet de projet en premiere annee de DUT : 'Les grands entiers : developpez a l'aide de chaines de caracteres une classe GrandEntier qui proposera les 4 operations +,-,*,/'
 
C vieux mais ke de souvenirs  
[Mode Nostalgie OFF]


---------------
Hyndex - Meuaarf !! ReZo !!!
Reply

Marsh Posté le 18-10-2001 à 21:22:08    

evode a écrit a écrit :

[Mode Nostalgie ON]
je me rappelle j'avais comme sujet de projet en premiere annee de DUT : 'Les grands entiers : developpez a l'aide de chaines de caracteres une classe GrandEntier qui proposera les 4 operations +,-,*,/'
 
C vieux mais ke de souvenirs  
[Mode Nostalgie OFF]  




 
Ca m'intéresserait VRAIMENT d'avoir la correction ... :)

Reply

Marsh Posté le 19-10-2001 à 14:35:25    

couitchy a écrit a écrit :

 
 
Ca m'intéresserait VRAIMENT d'avoir la correction ... :)  




moi aussi !

Reply

Marsh Posté le 19-10-2001 à 17:48:09    

stalker a écrit a écrit :

 
 
heu pour info la ti89 elle a un motorola 6800 qui n'est pas du tout orienté pour le calcul binaire...  




 
Il est evident que si tu changes la representation des donnees, il faut egalement redefinir les operations de base ... il suffit donc d'ecrire les routines + - / * en BCD, et c'est tout. Pas besoin d'un CPU dedie : les fonctions qui manquent a ton CPU, tu les programme et basta. Par exemple, la "predecesseuse" de la TI89, la TI85, etait dotee d'un Z80 dans lequel la multiplication n'etait meme pas codee ... et pourtant ma TI85 savait multiplier :D :D :D

Reply

Marsh Posté le 26-10-2001 à 21:49:46    

alors la réponse ??

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed