Logicielsmoto.com
http://www.logicielsmoto.com/phpBB/

gagner des cycles machines
http://www.logicielsmoto.com/phpBB/viewtopic.php?f=3&t=189
Page 1 sur 8

Auteur:  smague [ 10 Aoû 2006, 12:51 ]
Sujet du message:  gagner des cycles machines

Comprend pas pourquoi Prehisto demande de trouver une astuce de programmation Assembleur pour gagner des cycles machines en postant sur Silicium ...au lieu de poster ici sur un forum THOMSON .
D'autant plus que les reponses proposant des solutions emanent presqu'exclusivement de thomsonistes ;et qu on voit que les autres membres non thomsonistes du Forum Silicium sont archi-nuls et pas seulement,je pense, en assembleur 6809 :mad:
la solution est bien entendu qu'il faut remplacer l'adressage en mode direct par un adressage en mode indéxé !

Auteur:  Daniel Coulom [ 10 Aoû 2006, 15:57 ]
Sujet du message:  Re: gagner des cycles machines

smague a écrit:
Comprend pas pourquoi

Cherchez vous encore à nous provoquer ? Une instruction à adressage indexé n'est pas plus courte qu'une instruction à adressage direct. Et dans l'exemple donné par Prehisto, l'instruction à remplacer est un CMPY immédiat. Il n'y a aucun adressage direct.

J'ai une solution permettant de gagner 2 octets (en utilisant un autre registre), ou 1 octet (sans utiliser d'autre registre), mais je vous laisse chercher avant de la donner.

Daniel

EDIT: jasz a trouvé encore mieux : gagner 2 octets sans utiliser d'autre registre. Donc inutile de donner ma solution.

Auteur:  smague [ 10 Aoû 2006, 20:27 ]
Sujet du message: 

je n'ai pas à donner ma solution ici, vu que ce " petit jeu de l'astuce assembleur" se déroule sur un autre forum.
:evil:

Auteur:  Yoann Riou [ 11 Aoû 2006, 00:29 ]
Sujet du message:  Re: gagner des cycles machines

Daniel Coulom a écrit:
J'ai une solution permettant de gagner 2 octets (en utilisant un autre registre), ou 1 octet (sans utiliser d'autre registre), mais je vous laisse chercher avant de la donner.


On avait pas le droit d'utiliser un autre registre malheureusement :D Sinon, c'est clair que Y degage ;)

Auteur:  jasz [ 13 Aoû 2006, 08:42 ]
Sujet du message: 

smague a écrit:
Comprend pas pourquoi Prehisto demande de trouver une astuce de programmation Assembleur pour gagner des cycles machines en postant sur Silicium ....

Il n'y a pas de quoi en faire un drame. On arrive :sol:

Code:
      LDD #$1000
xx  SUBD #$0010
      CMPD #0000
      BNE xx


Il faut trouver une solution pour raccourcir au maximum la boucle. ;)

Auteur:  Prehisto [ 13 Aoû 2006, 10:34 ]
Sujet du message: 

jasz a écrit:
Code:
      LDD #$1000
xx  SUBD #$0010
      CMPD #0000
      BNE xx


Il faut trouver une solution pour raccourcir au maximum la boucle. ;)


Code:
           CLRB
xx       DECB
           BNE        xx

Auteur:  jasz [ 13 Aoû 2006, 12:42 ]
Sujet du message: 

:L

Je vais faire bref.

Je demande de soustraire $10 à D et non #1 à B et ce dans une boucle trés courte.

Auteur:  Prehisto [ 13 Aoû 2006, 12:56 ]
Sujet du message: 

Code:
      LDD #$1000
xx  SUBD #$0010
      BNE xx

Auteur:  jasz [ 13 Aoû 2006, 13:09 ]
Sujet du message: 

:bien: mais, elle était réservée à Smague ;)

Auteur:  Prehisto [ 13 Aoû 2006, 13:32 ]
Sujet du message: 

Problème n° 452-rk5-43-12-28

Convertir en une seule instruction:

Code:
           LSRB
           BITB       #$40
           BEQ       xx
           ORB       #$80
xx       ...

Auteur:  jasz [ 13 Aoû 2006, 17:27 ]
Sujet du message: 

ADCB quelque chose?

Mais sans conviction, je ne suis pas familier de l'exotisme du BIT et ADC :p

BITB #$40 teste le bit 6 (64)?

Auteur:  Prehisto [ 13 Aoû 2006, 17:50 ]
Sujet du message: 

Non.

Auteur:  jasz [ 13 Aoû 2006, 17:52 ]
Sujet du message: 

On a posté en même temps :)

:up:

Auteur:  Prehisto [ 13 Aoû 2006, 17:56 ]
Sujet du message: 

Alors donc :

jasz a écrit:
ADCB quelque chose?

Mais sans conviction, je ne suis pas familier de l'exotisme du BIT et ADC :p

Non.

jasz a écrit:
BITB #$40 teste le bit 6 (64)?

Oui.

Auteur:  jasz [ 13 Aoû 2006, 18:02 ]
Sujet du message: 

Prehisto a écrit:
Non.

Ca, j'avais bien compris ;)

Un ch'tit indice siouplex.

Page 1 sur 8 Heures au format UTC + 1 heure
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/