Posté le 02/07/2005 à 10:25 Membre depuis le 09/02/2005, 13736 messages
Voila j'ai un prog qui fait 8000 octets et qui sert à créer 1 string de 8000 octets, à priori ça passe sauf que lorsque ça fait "AGFUGUG..............RYTU" -> Str0 , la chaîne de 8000 octets est aussi stockée dans "Ans" et 8000+8000+8000 = 24000 = ERROR MEMORY.
Une solution ?
Posté le 09/07/2005 à 19:21 Membre depuis le 09/07/2003, 21783 messages
heu, je crois qu'il y avait une astuce pour éviter ce genre de problémes......vais chercher voir.
Posté le 26/08/2005 à 15:46 Membre depuis le 09/02/2005, 13736 messages
Pardon de déterrer le post, mais j'ai tjs le meme probleme et tjs pas reussi a trouver la reponse, alors si qq'un sait...
Posté le 26/08/2005 à 15:48 Membre depuis le 09/07/2003, 21783 messages
j'ai toujours pas regardé, mais il me semblais (j'ne suis presque sur) déjà avoir vu un tips sur un vieux site de 83 ou 83+ abandonnée.
( le tips consistant à ne pas stoquer le résultat dans Ans)

T'a essayer:

"chaine"->Str0:0
?
va p-t stoquer 0 en ans, ça doit être une astuce comme ça.
Posté le 08/09/2005 à 17:05 Membre depuis le 09/02/2005, 13736 messages
Dsl j'avais pas vu ta reponse.
En tout cas ca marche tjs pas (t'as raison j'avais vu la solution a ce pb y a longtemps sur un site mais je la retrouves pas...)
Posté le 08/09/2005 à 22:05 Membre depuis le 09/07/2003, 21783 messages
Je suis presque persuadé que c'est une astuce du genre de celle que je t'ai montré...enfin, un truck qui ressemble...
Vais essayer de rechercher vite fait..
Posté le 08/09/2005 à 22:24 Membre depuis le 09/07/2003, 21783 messages
Bingo..
Ne pas saturer sa memoire avec Ans:
Nous l'avons déjà vu : la calculatrice retient strictement toutes les valeurs qu'elle valide dans Ans (à la moindre modification). D'autre part, nous savons que la RAM est limitée à 27 Ko et que les variables string ne sont limitées que par la mémoire disponible. Petit pépin : imaginez que vous utilisez une chaine énorme (prenons 7000caractères soit environ 7Ko), il faut multiplier cette valeur par 2 puisque le contenu est aussi assigné à Ans : celà monte le quota à 14Ko : imaginez que vous avez 15 Ko de programmes, et n'importe quelles autres données en RAM : dès que vous atteindrez le seuil fatidique de 27Ko, vous tenterez de dépasser la RAM disponible et le programme plantera, en retournant le message "ERR:OVERFLOW". Voilà une manip qui permet de leurrer Ans et de lui assigner une valeur de seulement 1octet, ce qui dans ce cas vous fera gagner 7Ko (trouvé sur les83plus.fr.st) :

Nous nommerons l'énorme variable Str1 et supposons que nous voulons rajouter le caractère "A" à la fin : il faudra taper
:Str1+"A"->Str1
Mais dans ce cas la valeur de Str1 sera stokée dans Ans. Maintenant faites un truc balourd genre
:0:Str1+"A"->Str1 En fait, la calculette mettera la valeur 0 dans Ans au lieu de la valeur de Str1 et donc sa cette valeur était énorme, vous épargnerez une deuxieme fois cette valeur dans la RAM... j'espere que vous avez compris...


source: http://83pluspuissante.free.fr/indexast.html , en bas de la page.

Faudrais qu'on réfrence tous ces sites un jour sur une page unique, y'a pleins de trucs interessant qui trainent dessus et qui risquent de se perdre.
( bon, sinon, t'a vu, j'étais pas loin tongue )

Posté le 11/09/2005 à 09:26 Membre depuis le 09/02/2005, 13736 messages
C'est super , merci, sauf que... eh ben ça marche pas ! ^^
:0:"...A..."->Str1 ca fait tjs ERROR MEMORY
Dc y a p-t pas de solution en fait (et puis de toute maniere cette methode, ca fait enregistrer 0 dans Ans puis quand meme Str1).
Posté le 11/09/2005 à 09:58 Membre depuis le 09/07/2003, 21783 messages
HUm...bha, si l'a marqu", c'est que ca devait marcher au moins sur une rom d'un modél hein tongue %°.
Je teste voir...
Pareil sur 83 (VTI, rom 1.07 ) et 83+ (vti, 1.00, 1.03 ), marche pô.
Posté le 21/09/2005 à 17:45 Membre depuis le 16/09/2005, 33 messages
Dsl (encore), mais j'aurai voulu qu'est ce que c'était que les STRING
et encore à quoi ca sert????

Merci de votre sympathie smile

PS:et aussi si vous pouviez nz pas faire attention a l'orthograh défois.. smile
Posté le 21/09/2005 à 18:27 Membre depuis le 09/07/2003, 21783 messages
Bon...
Alors, vite-fait, je vais pas te c/c la charte grin, mais (juste des régles de bonne entente..):

i)on évite de déterer un vieux topic sauf bonne raison => créer un nouveau topic.
( la dernière fois j'ai rien dit par ce que c'était vraiment le sujet...mais même, normalmeent, t'aurais du créer un nouveau topic smile )
ii)on ne fait pas particulièrement attention à l'orth (je suis le premeir à faire pleins de fautes..), tant que ça reste lisible et que ce n'est pas du language SMS..
Sinon, t'a un bouton "éditer" pour corriger si t'y tiens wink