π
<-

Astuces

Astuces

Unread postby tama » 28 Jan 2006, 17:59

Je propose de poster ici toutes les astuces que vous connaissez pour la programmation sur TI z80 ou sur TI z80 tout court

= Pour optimiser un programme :

Exemple :

prgmTEST

code non optimisé
Code: Select all
0-A:0-B:0-C:0-D
Lbl 0
A+1-A
(A+B)x(C+D)-E
Disp E
If A1000
Then
Goto 0
Else
Goto 1
End
Lbl 1
Stop


Nombre total d'octets :
13+54=77 octets

1.Enlever les parenthèses
Code: Select all
(A+B)x(C+D)-E


devient :
Code: Select all
(A+B)x(C+D-E


Gain == 1 octet

2.Utiliser For( et End au lieu des goto (l'instruction Goto cherche le lbl correspondant et cela peut prendre du temps)

Code: Select all
Lbl 0
A+1-A
(A+B)x(C+D)-E
Disp E
If A1000
Then
Goto 0
Else
Goto 1
End


devient :
Code: Select all
For(A,1,1000
(A+B)x(C+D-E
Disp E
End


Gain == 12 octets
Gain total === 13 octets

3.Utiliser DelVar var au lieu de 0-var
Avantage : DelVar A et 0-A prennent autant de place mais on peut enchainer les DelVar (les coller)

Code: Select all
0-A:0-B:0-C:0-D


devient :
Code: Select all
DelVar BDelVar CDelVar D

(DelVar A est inutile puisque A sera utilisé pour faire une boucle)

Gain : 6 octets
Gain total : 19 octets

4.Mettre un "stop" en fin de programme ne sert à rien

Code: Select all
Lbl 1
Stop


devient :
Code: Select all
Lbl 1


Ou dans le cas actuel (suppression des labels et des goto) :
Code: Select all
...
Disp E
End
(plus rien après mais attention à ne pas oublier le End sinon la boucle ne marche plus)


Gain : 1 octet
Gain total : 20 octets

5.Utiliser vos connaissances en maths et en programmation :D:

Code: Select all
(A+B)x(C+D-E


devient

Code: Select all
(A+B)(C+D-E


ou :
Code: Select all
AC+AD+BC+BD-E


Gain : 1 octet
Gain total : 21 octets

6 (facultatif) : Installer Omnicalc ==http://www.ticalc.org/archives/files/fileinfo/226/22626.html


voilà :)

Bilan final :
+ Le programme a 21 octets de moins et la vitesse en plus correspondante :D:
- euh...

code final après optimisation :
Code: Select all
DelVar BDelVar CDelVar D
For(A,1,1000
(A+C)(B+D-E
Disp E
End

13+43 = 56 octets

N'hésitez pas à poster vos astuces !!! :D:

P.S : Attention pour les connaissances en programmation : le programme peut devenir plus complexe
Attention aussi aux gros gros programmes, il faut avoir le cerveau correspondant :;):
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Astuces

Unread postby tama » 28 Jan 2006, 18:19

autre astuce : pour renommer un programme sans utiliser aucun programme (ne marche que avec les TI-83 (?) et plus : il faut avoir la fonction group === [2nd]+MEM+[8])
(MEM = fonction secondaire de la touche "+")

1.Créer le programme, coder...

exemple : prgmA

2.Le grouper avec une autre variable quelconque

Procédure : [2nd]+MEM+[8]+[1]
entrer le nom du groupe
puis appuyer sur [2] et sélectionner les variables à grouper
(pour sélectionner : se mettre devant la variable à grouper et appuyer sur [enter], un carré noir devrait se trouver alors devant cette variable)
ensuite appuyer sur [](droite) et [1] (ou [enter])


3.Vérifier que l'ancien programme est désarchivé

4.Dégrouper le groupe crée
[2nd]+MEM+[8]+[]
Trouver le groupe (ex : BB) et appuyer sur [enter]

Il devrait y avoir une erreur : "Overwrite"
5.Sélectionner "1.Rename" entrer le nouveau nom et continuer


6.Supprimer :
-L'ancien programme (prgmA)
-Le groupe
-La variable utilisée dans le groupe si elle est inutile (par exemple le réel X)


-Autre méthode pour renommer
1.Créer un nouveau programme
2.Utiliser "Rcl" (fonction secondaire de la touche "Sto") puis appuyer sur [PRGM]+[] (exec) et trouver le nom de l'ancien programme
3.Appuyer sur [Enter]
4.Effacer l'ancien programme
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Astuces

Unread postby tama » 28 Jan 2006, 18:23

Encore une dernière astuce vite fait :

Pour rendre un programme compatible avec Mirage OS, mettre 2 ":" sur la première ligne de ce programme :

exemple :
PROGRAM:A
::ClrHome
...

Voilà mes astuces !!
N'hésitez pas à poster les vôtres !! :;):
Au fait, ce serait bien si on pouvait aussi faire ça pour les 68k. Tu peux le faire Mic ?
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Astuces

Unread postby M@D_Doc » 29 Jan 2006, 08:23

Un petit truc : la fonctino recall malheureusement treès peu utilisée;;;;
Elle permet de copier tout à un prgm à l'emplacement voulu dans....un autre programme....ça permet donc des trucs intéressants....
Code: Select all
[2nd]+[STO]


rajout de tama :
Par exemple dans les jeux de combat à 2 joueurs :):
Projets en cours : Quest 2 : 1% ; fy_woodhouse_source : 15%
Mange un castor, tu sauveras un arbre

Image
User avatar
M@D_Doc
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 21.1%
 
Posts: 574
Joined: 08 Dec 2005, 00:00
Location: Alsace, 68440
Gender: Male
Calculator(s):
MyCalcs profile
Class: Admis en FTM

Re: Astuces

Unread postby tama » 05 Feb 2006, 20:38

Une autre astuce : pour faire un self-test

[mode]+[alpha]+[S]
un écran apparait alors :
Il comporte :
-Pour les TI-82
La version de la ROM

-Pour les TI-83 et +
Le BOOT Code
Le code de la base (OS)

Et :
Enter Self-Test ?
This will clear all memory


Appuyer sur [enter] va afficher des écrans bizarres, éteindre la TI et effacer toute la mémoire (test d'écran sûrement... :s: )
Appuyer sur [on] pour quitter cet écran...euh...dangereux
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Astuces

Unread postby tama » 05 Feb 2006, 20:45

hihihi pour embêter quelqu'un : voici l'astuce (toute simple)

Pour occuper sa TI pour quelques minutes (seulement :D: )
taper dans l'écran principal de sa TI (ou dans un programme, ça ressemblera à un bug)
==RandM(55,50)
(RandM : dans le catalogue ou [2nd]+[Matrix]+[] (droite)+[6])

Pour effacer la mémoire (non testé)
taper dans l'écran principal (ou dans un programme (virus :D: ))
==RandBin(10^6,0)

La victime a alors 2 solutions :
--Elle enlève une pile : ok mais quand elle rallumera sa TI : MEM CLEARED !! lol (c'est pas sympa de faire ça avant un DST :#langue#: )
--Elle patiente pendant des jours...(rarement envisageable surtout si c'est dans un programme) et alors là c'est ses piles qui vont s'user
(ramène à la première solution -- MEM CLEARED)
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Astuces

Unread postby tama » 05 Feb 2006, 20:47

un autre truc bien marrant :
Pour les fonctions, modifier la valeur de Xres dans "Window"
Tracer tan(x) avec Xres=1 (bien ajuster la fenêtre :=): )
Maintenant tracer tan(x) avec Xres=8...
:#gni#:
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Astuces

Unread postby Syfo » 23 Feb 2006, 14:51

pour renommer ses programmes avec une TI 82 (pas de groupes):
creer un nouveau programme avec le nom voulu
taper RCL ( 2nd + STO)
choisir le programme a renommer et le copier integralement dans le nouveau
supprimmer l'ancien.
(à eviter quand on a plus de memoire ou quand le programme est enorme)
User avatar
Syfo
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 29.4%
 
Posts: 2561
Joined: 21 Feb 2006, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
Class: prepa integree polytech (L2)

Re: Astuces

Unread postby M@D_Doc » 23 Feb 2006, 15:41

déjà marqué! ^^
Projets en cours : Quest 2 : 1% ; fy_woodhouse_source : 15%
Mange un castor, tu sauveras un arbre

Image
User avatar
M@D_Doc
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 21.1%
 
Posts: 574
Joined: 08 Dec 2005, 00:00
Location: Alsace, 68440
Gender: Male
Calculator(s):
MyCalcs profile
Class: Admis en FTM

Re: Astuces

Unread postby Syfo » 24 Feb 2006, 17:14

oups :o:
pardon...
User avatar
Syfo
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 29.4%
 
Posts: 2561
Joined: 21 Feb 2006, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
Class: prepa integree polytech (L2)

Next

Return to TI-Basic

Who is online

Users browsing this forum: ClaudeBot [spider] and 9 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2271 utilisateurs:
>2233 invités
>29 membres
>9 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)