1

salut,

Bon je suis un noob en z80 mais j'ai fait un programme que je trouve pas mal ( zCalc ), seulement je l'ai évidemment codé comme un porc (au niveau des instructions ), ie j'ai utilisé les quelques instructions de base sans trop me poser de questions.

Maintenant que ça tourne, je pense à optimiser un peu touça (en taille): il fait déjà 2000 octets alors qu'il manque encore pas mal de truc. Donc je recherche des tutos/guides/conseils sur les pratiques courantes, si vous en conaissez, n'hésitez pas happy (j'ai évidement déjà z80instr.txt et z80_reference.txt , mais bon un peu la flemme de passer des heures à réinventer la roue )

edit:
au hasard de quelques recherches:

http://kvince83.tengun.net/maxboard/viewtopic.php?t=675
http://joewing.net/programs/z80op.shtml
http://map.tni.nl/articles/fast_loops.php
http://www.ticalc.org/archives/files/fileinfo/285/28502.html
http://www.shiar.org/ticalcs/z80optim.php

«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

2

Et c'est quoi comme prog, un utilitaire pour aider les débutants ? (heu quoi que si c'est pas ça, ça doit être vexant grin)

(Edit: désolé, pas lu à coté d'abord)
<-- et à votre gauche une superbe peinture pointilliste du XVIe siècle #sisi# représentant - vous l'aurez deviné - une banane ...
http://www.ti83plus.online.fr/home.php...

3

Quelques conseils par l'auteur de ION : http://joewing.net/programs/z80op.shtml

4

./3 > Merci smile

( ./2 > ben si tu considères que y'a que les débutants qui ont besoin de vérifier leur dérivées ^^ )
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

5

Toujours à coté du sujet, mais ça me vient à l'esprit: ça doit aussi pouvoir se coder en basic un prog de dérivation en fait.
Suffit de bien structurer la routine de lecture caractère par caractère de la chaine contenant la fonction, et après se démerder avec les formules de dérivation de base, faudrait que j'y réfléchisse...
Je sais pas comment est codé le tien en asm...
<-- et à votre gauche une superbe peinture pointilliste du XVIe siècle #sisi# représentant - vous l'aurez deviné - une banane ...
http://www.ti83plus.online.fr/home.php...

6

mastercalto (./5) :
ça doit aussi pouvoir se coder en basic un prog de dérivation en fait.

ca existe déjà, cf http://tiforge.info/zcontest/?action=view_prgm&id=13&l=fr où je l'évoque et http://www.ticalc.org/archives/files/fileinfo/349/34917.html où il se situe.

Il utilise les strings (donc pas possible sur 82), et la notation à la rpl (peu couteux en place, mais long a traiter), marche bien (bien qu'un peu long et limité (pas assez de fonctions car le gars etait en premiere S ... ) ), et est globalement très malin ( j'ai survolé les sources )


En asm, j'utilise la methode usuelle des arbres. Avantage:facile, rapide. Desavantage:demande trop de place en RAM 9pour l'instant 700 octets ont toujorus suffit sur des fonctions "normales" )


«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

7

Les arbres ça consiste à dériver d'abord le niveau de "parenthèsage" le plus élevé et de descendre au fur et à mesure ?
<-- et à votre gauche une superbe peinture pointilliste du XVIe siècle #sisi# représentant - vous l'aurez deviné - une banane ...
http://www.ti83plus.online.fr/home.php...

8

Non c'est une strutucre de donée, mais oui ca fait bien comme ca....disons que de toute facon t'es obligé de faire comme ca ( pour vouloir deriver le premier niveau, tu regarde quel est l'operateur le "plus eleve", disons +: ton expression est a+b, alors t'appelles recusrsivement ta fonction pour deriver a, deriver b, et tu renvoie a' + b'. Ca ne boucle pas car y'a des cas genre constante/X où il n'y a pas besoin de faire d'appel recursif )

Un arbre, c'est un truc avec des noeuds qui ont pour fils des noeuds ou des feuilles. Par exemple ca peut ressebler a ca:

        +
     |     |
     *     2
   |   |
   x   5


pour l'expression (5*x) + 2. ( mais ca sert a tout plein d'autres trucs que representer des expression mathematiques )
Typiquement un noeud est qqch comme (+,adresse_fils1,adresse_fils) (ou, sur les languages evolués genre fonctionel, directement le les fils a la place de leur adresse ), etc.

Mais de toute facon même en representant les donnes autrement tu va faire qqch de très semblable ( enfin, tu peux partir du bas si t'a envie et remonter, mais c'est plus complique pour pas mieux .. )

edit: pre pour visualiser l'arbre
«Les gens exigent la liberté d’expression pour compenser la liberté de pensée qu’ils préfèrent éviter.» - Sören Kierkegaard

La République, c’est comme la syphilis : quand on l’a attrapée, soit on se fait sauter le caisson, soit on essaie de vivre avec.

9

Certes je vois, et effectivement ça semble formaliser l'expression de manière (très) efficace.
<-- et à votre gauche une superbe peinture pointilliste du XVIe siècle #sisi# représentant - vous l'aurez deviné - une banane ...
http://www.ti83plus.online.fr/home.php...