π
<-
Chat plein-écran
[^]

Aide pour débutant en assembleur svp

Assembleur, Axe, C/C++, ICE...

Re: Aide pour débutant en assembleur svp

Message non lude Hamza.S » 07 Sep 2019, 21:27

Il me semble qu'il y a un tuto de TheMachine02 sur le forum, as-tu fait des recherches ?
J'espère que tu testes sur un émulateur l'ASM peut être dangereux pour ta calculatrice
Image
Avatar de l’utilisateur
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 28.5%
 
Messages: 4461
Images: 18
Inscription: 07 Nov 2014, 00:43
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Aide pour débutant en assembleur svp

Message non lude emilechombier » 07 Sep 2019, 22:04

oui mais il y a celui-là qui est très complet aussi (je comprends l'anglais)
http://tutorials.eeems.ca/ASMin28Days/lesson/toc.
et bien sur, CEmu64 est mon ami... :D
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Aide pour débutant en assembleur svp

Message non lude critor » 07 Sep 2019, 22:10

La seule chose vraiment dangereuse serait d'écrire dans une zone vitale de la Flash.
Normalement ça ne se fait pas par accident chez TI. ;)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Aide pour débutant en assembleur svp

Message non lude emilechombier » 08 Sep 2019, 20:51

Bonjour,

Voilà j'ai programmé ma double boucle de 100 itérations en ASM. Voici le code sur PB, vous trouverez la version en C dans un autre onglet
https://tiplanet.org/pb/?id=229901_1567367967_86bf32715a&file=testasm.asm

mais c'est 4 fois plus lent que le programme en C compilé sous PB !!! A quoi ça sert que Ducros il se décarcasse !! :'( :'( :'(
Je résume les chronos pour un test sur 100x100 itérations avec affichage des tours sur TI83PCE-EP :
Ti-BAsic : 25 minutes (si si) je vous jure :#fou#: :#fou#: :#fou#:
Python : 2 minutes
C : 13 secondes
ASM : 50 secondes

Je crois que c'est à cause des call _DispHL et des rappels (curRow) et des (curCol) si j'essaye de m'en passer on dirair que la TI y met d'autres données et fiche son boxon, y a-t-il moyen d'optimiser cela svp?
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Aide pour débutant en assembleur svp

Message non lude Adriweb » 09 Sep 2019, 00:22

Il y a sans aucun doute moyen de faire du code ASM optimisé pour la vitesse - mais c'est pas moi qui vais pouvoir aider pour ce coup la ^^
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Aide pour débutant en assembleur svp

Message non lude emilechombier » 09 Sep 2019, 11:33

merci oui Themachine02 m'a conseillé de ne pas utiliser _dispHL, mais comme je débute (day 4 du tuto) je ne vois pas faire autrement pour afficher des nombres. Je vais regarder le code compilé dans PB mais je suis sur que je vais rien piger :D
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

En ligne

Re: Aide pour débutant en assembleur svp

Message non lude Epharius » 09 Sep 2019, 16:55

Ton code qui boucle m'a l'air plutôt opti donc je ne pense pas qu'il y ait de problème de ce côté là. Je pense que cette grosse différence de temps d'exécution provient entre autres de 2 choses :

- Premièrement (et je rejoins TheMachine02), la plupart des romcalls proposée par Ti sont lentes (dont dispHL), parce qu'elles ont souvent plein d'options et de fonctionnalités, de conditions etc. Cependant je ne crois pas que dispHL soit réputée pour être particulièrement lente. Dans tous les cas, la "la toolchain communautaire" a sûrement sa propre routine d'affichage, optimisée selon les besoins du programmeur, dont forcément plus rapide. L'objectif serait donc de faire sa propre routine d'affichage de nombre même si j'avoue que c'est lourd à faire.

- Deuxièmement, je crois que la "la toolchain communautaire" utilise l'astuce du bout de code qui accélère les programmes de 30% environ. Donc le temps qu'il met à exécuter ton programme est un peu "triché". Si tu utilisais cette astuce tu devrais te rapprocher du résultat en C.

Cependant, je ne sais pas si ça explique cette grosse différence de vitesse. À tester.
Dernière édition par Epharius le 09 Sep 2019, 17:08, édité 1 fois.
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 7%
 
Messages: 1107
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

Re: Aide pour débutant en assembleur svp

Message non lude Adriweb » 09 Sep 2019, 16:58

Il faut remplacer "le PB" par "la toolchain communautaire" dans ton message, mais sinon, oui :P
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

En ligne

Re: Aide pour débutant en assembleur svp

Message non lude Epharius » 09 Sep 2019, 17:07

Oups, pardon en effet, j'ai du mal avec tous les noms autour de la progra en C sur 83PCE :p
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
Avatar de l’utilisateur
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 7%
 
Messages: 1107
Images: 4
Inscription: 08 Déc 2014, 17:38
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: Ensimag
GitHub: MathisLav

Re: Aide pour débutant en assembleur svp

Message non lude emilechombier » 09 Sep 2019, 20:26

Epharius a écrit:Ton code qui boucle m'a l'air plutôt opti donc je ne pense pas qu'il y ait de problème de ce côté là.

ah merci ça fait plaisir c'est mon premier programme en ASM sur TI83 (très fier ! 8-) )
J'ai remarqué qu'en supprimant les (curRow) avant les _dispHL ça va plus vite mais je ne peux pas m'en passer car l'affichage fait n'importe quoi au 2e tour, on dirait que leurs valeurs ne "tiennent pas" un tour, une instruction doit polluer l'adresse :(
En fait si j'ai bien compris PB et la "chaintool communautaire" fait ses propres "RomCalls" plus rapides... bon ben j'arrête de lutter avec l'ASM et je reste sur du C, du bon C est plus rapide du mauvais ASM... :|
Avatar de l’utilisateur
emilechombier
Niveau 7: EP (Espèce Protégée: geek)
Niveau 7: EP (Espèce Protégée: geek)
Prochain niv.: 8.6%
 
Messages: 51
Inscription: 01 Sep 2019, 17:29
Genre: Homme
Calculatrice(s):
MyCalcs profile

PrécédenteSuivante

Retourner vers Langages alternatifs

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 27 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
2277 utilisateurs:
>2263 invités
>10 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)