Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Questions » programmation basic (20 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
mathiniste Ecrit le: Jeudi 24 juin 2004 à 11:39 Déconnecté(e)    Voir le profil de mathiniste Envoyer un email à mathiniste Envoyer un message privé à mathiniste  

Y'aurait pas un prog ou qqchose de cegenre qui puisse faire en sorte que lorsqu'on lance un prgm en BASIC, la caltos ne perde pas tps à vérifier la syntaxe du prgm.

ps: je ne sais pas où mettre ce topic
la mort n'a aucun rapport avec nous.Quand nous sommes vivants, la mort n'est pas là et quand elle est là, nous ne sommes plus...
    
./Post n°1   Marquer comme non lu.
willyFFfan Ecrit le: Jeudi 24 juin 2004 à 11:41 Déconnecté(e)    Voir le profil de willyFFfan Envoyer un email à willyFFfan Visiter le site WEB de willyFFfan Envoyer un message privé à willyFFfan  

c'est a dire quelle n'affiche pas syntax error même si il y en a dans le prog ???
http://www.total-ti89.com/images/total-ti89.gif
    
./Post n°2   Marquer comme non lu.
Ephyx Ecrit le: Jeudi 24 juin 2004 à 12:29 Déconnecté(e)    Voir le profil de Ephyx Envoyer un email à Ephyx Visiter le site WEB de Ephyx Envoyer un message privé à Ephyx  


Voici donc quelques explications ...

Quand vous tapez votre programme ti basic, ce dernier est stocké sous forme de texte, tout comme si vous tapiez dans l'éditeur de texte.

Un programme basic peut se trouver sous deux formes:
- textuel, le cas quand vous sortez de l'éditeur
- tokenizée, une fois executé.

Dans sa forme tokenizée, bon orthographe approximative je me vois mal placer des jetons, le programmes est une suite de tokens.
Le texte "while" est remplacé par un certain token... Disons qu'un token est un code suivi parfois de données.
Un exemple simple: imaginons une calculatrice virtuelle tout bete qui fait les 4 opérations.
On lui envoie (4*5+2)/4-7= et elle doit donc nous afficher le résultat.
Les tokens de cette calculatrice sont:
0 = PUSH, pour placer un nombre
1 = +
2 = -
3 = *
4 = /
5 = =

L'opération sera donc transformée en (4*5+2)/4-7 :
0:4 . . ((4*5+2)/4-7)
3:5 . . ((4*5+2)/4-7)
1:2 . . ((4*5+2)/4-7)
4:4 . . ((4*5+2)/4-7)
2:7 . . ((4*5+2)/4-7)
5 . . . . afficher le résultat

Pour en revenir au basic,
La calculatrice lorsqu'elle tokenize le programme, analyse de façon similaire le texte:
les "while" seront remplacé par le token correspondant, et ainsi de suite.
Il est effectivement bcp plus rapide de travailler sur des tokens (pour la calculatrice c'est juste un nombre, bcp plus rapide à traiter qu'un texte comme "while").

La calto ne fait donc pas une simple vérification de syntaxe, la tokenization est un passage obligé pour pouvoir exécuter le programme.

Pour ne pas perdre de temps, il suffit de toujours garder une version tokénizé du programme, le calculatrice n'aura pas à refaire le travail. En revanche, si on a archivé une version texte du programme, c'est sur que cela représente une perte de temps ...

Vu la vitesse du tibasic, on se demande ce que cela donnerait sans tokenization %)
Lemuria & Sirius-B, chouette :D
    
./Post n°3   Marquer comme non lu.
patayou Ecrit le: Jeudi 24 juin 2004 à 18:54 Déconnecté(e)    Voir le profil de patayou Envoyer un email à patayou Envoyer un message privé à patayou  

mathiniste :
Y'aurait pas un prog ou qqchose de cegenre qui puisse faire en sorte que lorsqu'on lance un prgm en BASIC, la caltos ne perde pas tps à vérifier la syntaxe du prgm.

ps: je ne sais pas où mettre ce topic


je crois que ce que tu voulais dire c'est le temps que perds la calc a chaque fois que tu execute la calc.

Pour remedier a ce probleme, il suffit d'executer une fois ton programme l:orqu'il est DESARCHIVE (COMPLETEMENT EN RAM), de le quitter et de l'archiver.

Comme le dit Ephyx, il y a la formes textuelle et la forme tokenisée.
Si tu execute un programme sous forme textuelle, la calcva verifier les erreurs quand elle va tokeniser ton prog tandis que si tu execute ton programme alors qu'il est deja tokenise, plus besoin de verification de code.

j'espere avoir ete assez clair
    
./Post n°4   Marquer comme non lu.
mathiniste Ecrit le: Jeudi 24 juin 2004 à 19:32 Déconnecté(e)    Voir le profil de mathiniste Envoyer un email à mathiniste Envoyer un message privé à mathiniste  

Patayou, désolé de t'ennuyer mais Ephyx m'a très bien expliquer et je l'en remercie. C'est vrai que j'archive tout mes progs.
N'y aurait-il pas un autre moyen?
la mort n'a aucun rapport avec nous.Quand nous sommes vivants, la mort n'est pas là et quand elle est là, nous ne sommes plus...
    
./Post n°5   Marquer comme non lu.
naPO Ecrit le: Jeudi 24 juin 2004 à 19:33 Déconnecté(e)    Voir le profil de naPO Envoyer un email à naPO Visiter le site WEB de naPO Envoyer un message privé à naPO  


Tu fais les progs en C :p
Tel un automate, le dinosaure noir s'avance vers le chef des toutous-bombes et dit : "SCHNAAA SCHNAAA SCHNAPPI ! SCHNAPPI-SCHNAPPI-SCHNAPP !!!!!!" (en attendant une meilleure signature)


Avec de vrais morceaux de pattes d'eph :
http://gilou82.free.fr/Vrac/KSO-BAN.png
    
./Post n°6   Marquer comme non lu.
Ephyx Ecrit le: Jeudi 24 juin 2004 à 19:35 Déconnecté(e)    Voir le profil de Ephyx Envoyer un email à Ephyx Visiter le site WEB de Ephyx Envoyer un message privé à Ephyx  


un programme basic peut etre :p

unarchive
try
executes avec de mauvais paramètres (->force la tokenisation pour l'analyse des paramètres, empeche l'execution comme ceux ci sont faux)
else
tu récupères l'erreur
end
re:archive
Lemuria & Sirius-B, chouette :D
    
./Post n°7   Marquer comme non lu.
patayou Ecrit le: Jeudi 24 juin 2004 à 19:50 Déconnecté(e)    Voir le profil de patayou Envoyer un email à patayou Envoyer un message privé à patayou  

mathiniste :
Patayou, désolé de t'ennuyer mais Ephyx m'a très bien expliquer et je l'en remercie. C'est vrai que j'archive tout mes progs.
N'y aurait-il pas un autre moyen?


ok desole j'etais a cote de la plaque
    
./Post n°8   Marquer comme non lu.
Ephyx Ecrit le: Jeudi 24 juin 2004 à 19:51 Déconnecté(e)    Voir le profil de Ephyx Envoyer un email à Ephyx Visiter le site WEB de Ephyx Envoyer un message privé à Ephyx  


C'est bien parce que je passe l'oral de français demain et que j'ai rien d'autre à foutre:

(ca me fait chier, vs pouvez pas imaginer #mad#, enfin si pour certain)
http://www.fxsoft-fr.net/tokeniz.9xp

Donc l'utilisation:
tokeniz({"prgm1","prgm2","prgm3"})

A la fin ils sont tokenize et archivés. Enfin normalement...
Lemuria & Sirius-B, chouette :D
    
./Post n°9   Marquer comme non lu.
mathiniste Ecrit le: Jeudi 24 juin 2004 à 21:41 Déconnecté(e)    Voir le profil de mathiniste Envoyer un email à mathiniste Envoyer un message privé à mathiniste  

encore merci pour ces renseignements, Ephyx
la mort n'a aucun rapport avec nous.Quand nous sommes vivants, la mort n'est pas là et quand elle est là, nous ne sommes plus...
    
./Post n°10   Marquer comme non lu.
kaz00 Ecrit le: Dimanche 27 juin 2004 à 17:43 Déconnecté(e)    Voir le profil de kaz00 Envoyer un email à kaz00 Envoyer un message privé à kaz00  

et si tu desarchiv le prog que tu l'execute et pdt kil verifie le prog tu fé un break, et aprés tu archive le prog
    
./Post n°11   Marquer comme non lu.
mathiniste Ecrit le: Dimanche 27 juin 2004 à 22:57 Déconnecté(e)    Voir le profil de mathiniste Envoyer un email à mathiniste Envoyer un message privé à mathiniste  

encore merci
la mort n'a aucun rapport avec nous.Quand nous sommes vivants, la mort n'est pas là et quand elle est là, nous ne sommes plus...
    
./Post n°12   Marquer comme non lu.
Lionel Debroux Ecrit le: Lundi 28 juin 2004 à 08:52 Déconnecté(e)    Voir le profil de Lionel Debroux Envoyer un email à Lionel Debroux Visiter le site WEB de Lionel Debroux Envoyer un message privé à Lionel Debroux  

G-Nocid: ça risque de ne pas tokenizer le programme complètement...
Lionel Debroux - membre de TICT.
    
./Post n°13   Marquer comme non lu.
kaz00 Ecrit le: Lundi 28 juin 2004 à 09:30 Déconnecté(e)    Voir le profil de kaz00 Envoyer un email à kaz00 Envoyer un message privé à kaz00  

beuh si, c'est comme ca que je fait, et une fois rearchivé, le programme s'execute de suite, parce que la TI marque le break lorsqu'elle a fini de le tokeniser, jamais pendant.
-Edité le Lundi 28 juin 2004 à 09:32 par G-Nocid-
    
./Post n°14   Marquer comme non lu.
Invité Ecrit le: Lundi 28 juin 2004 à 10:19 Déconnecté(e)    
 
attention toutefois aux sous-programmes ou aux fonctions qui peuvent être appelés dans certains programmes : eux aussi doivent être tokenisés, et donc il vaut mieux lancer tout le programme en entier !
    
./Post n°15   Marquer comme non lu.
Kevin Kofler Ecrit le: Lundi 28 juin 2004 à 13:58 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Une autre astuce pour tokéniser un programme sans l'exécuter est de lui passer trop (ou pas assez) d'arguments.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°16   Marquer comme non lu.
Ephyx Ecrit le: Lundi 28 juin 2004 à 14:19 Déconnecté(e)    Voir le profil de Ephyx Envoyer un email à Ephyx Visiter le site WEB de Ephyx Envoyer un message privé à Ephyx  


C'est l'astuce que j'ai utilisé dans le code source basic que j'ai envoyé sur ce topic
Lemuria & Sirius-B, chouette :D
    
./Post n°17   Marquer comme non lu.
Invité Ecrit le: Lundi 28 juin 2004 à 15:05 Déconnecté(e)    
 
tiens, je connaissais pas ça. est-ce que ça tokenise aussi les sous-programmes ?
    
./Post n°18   Marquer comme non lu.
Kevin Kofler Ecrit le: Lundi 28 juin 2004 à 15:09 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Non, il faut les tokéniser un par un avec cette méthode.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°19   Marquer comme non lu.
kaz00 Ecrit le: Lundi 28 juin 2004 à 22:40 Déconnecté(e)    Voir le profil de kaz00 Envoyer un email à kaz00 Envoyer un message privé à kaz00  

ou si tu te debrouille plus, tu utilises chercher tout les progs d'un dossier ou de la TI, et tu fait une boucle FOR avec:

try
unarchiv
......(...)
else
endtry
    
  :: Index » Forum Ti68K » Questions » programmation basic (20 réponse(s))
Pages : 1/2     « [1] 2 » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 41.52ms avec 20 requetes