Quelle sont les differences entre:
bpl.b
bpl.w
bpl.l
bpl.s
En ai-je oublié d'autres?
What kind of technology is this?
bpl.b=bpl.s : bpl vers une adresse entre PC-128 et PC+127
bpl.w : bpl vers une adresse entre PC-32768 et PC+32767 (mais prend 2 octets de plus)
bpl.l : n'existe pas (sur 68000)
La taille des opérandes n'intervient que dans l'instruction de test avant (ou plus généralement celle qui modifie les flags)
« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)
bpl.l n'existe pas (du moins sur 68000).
bpl.b == bpl.s (déplacement de -128 à +127 octets), et bpl.w (déplacement de 0x8000 à 0x7FFF, valeurs signées).
selon les posts précédents, non.

Que cache le pays des Dieux ? -
Forum Ghibli -
Forum LittéraireLa fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.
Tiens, je n'avais pas vu qu'il y avait une deuxième page...
bpl.l sera intérprété comme bpl.w (un "long branch" est un branchement codé sur un word) par certains assembleurs 68000, et rejeté par d'autres (parce qu'ils interprètent cela comme une instruction du 68020 qui n'existe pas sur 68000).
En clair, il faut éviter à tout prix bpl.l... C'est un peu comme dbra, mais en pire (il me semble que tu avais dit que tous ou presque tous les assembleurs 68k connus supportaient "dbra" qui est pourtant incorrect ?)...
dbra n'est pas une mnemonique officielle de l'assembleur de motorola (et encore) si dbra existe c'est que sont nom est plus comprehensible que dbf (decrement and branch if false)
A l'heure actuelle tout les assembleur 68k supportent la mnémonique dbra

Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
> dbra est parfaitement correct
S'il est supporté par tous les assembleurs, oui. Sinon, non.
Et il reste que dbra n'est pas une mnémonique officielle, comme godzil l'a dit. C'est marqué dans la doc de Motorola (Programmer's Reference Manual):
"Most assemblers accept DBRA for DBF for use when only a count terminates the loop (no condition is tested)."
Haï,
movem.l est-il 2 fois plus long (en temps d'execution) que movem.w ?
What kind of technology is this?
Plus precisement s'il te plait.
Les 2 sont aussi lents l'un que l'autre?
What kind of technology is this?
Sinon, a la fin d'une boucle avec dbra, le registre qui a servi a "compter" les boucles est mis a -1 sur un word ou un longword?
What kind of technology is this?
Su un word, il me semble. A vérifier.
Point de vu memoire prise,
move.l #arbreSorcier,(a0)+ (1)
prend 2 octets de plus que:
lea arbreSorcier(pc),a1 (2)
move.l a1,(a0)+
(1) est-elle alors plus lente que (2) ?
What kind of technology is this?
Link Le 23/06/2003 à 23:01 Ca dépend si tu prends en compte le repositionnement de l'adresse absolue au lancement du programme...

Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.
Lorsqu'on n'a pas assez de registres pour faires des routines, est-il plus rapide d'utiliser la pile ou une variable definie dans le programme?
What kind of technology is this?
Une "bête" fonction de FloodFill ou de ScaleSprite nécessite en principe plus de 15 variables...
Les registres d0-d7 sont plus rapides que les registres pointeurs a0-a6, non?
C'est pas trop lent de se servir des pointeurs en guise de registres de type dn?
#83 > Je cherche a optimiser au maximum une fonction qui determine quelle face est a colorier au pas et dans quelle couleur dans mon moteur 3D.
What kind of technology is this?
sBibi: je n'avais pas pensé à swap, bien joué. FloodFill en BASIC, tu es fou ?
Ecrire ce genre de fonctions en ASM pur n'est pas trivial, je suis désolé, même en étant un bon programmeur qui connaît bien l'algorithme, ce que je ne suis pas.
> Les registres d0-d7 sont plus rapides que les registres pointeurs a0-a6, non?
Ces deux types de registres ne sont pas vraiment comparables, vu qu'ils sont différents
> C'est pas trop lent de se servir des pointeurs en guise de registres de type dn?
Pas toujours, notamment si tu fais des move.w depuis et vers des registres d'adresse. GCC le fait assez souvent, bien plus qu'un programmeur humain, sans que ça pose de problèmes.
Si sBibi veut bien (ça n'est pas toujours le cas), il devrait pouvoir t'aider, il sait faire ce que tu essaies de faire...
Ce que j'essaie de faire ? C.a.d ?
What kind of technology is this?
> Ce que j'essaie de faire ? C.a.d ?
"Je cherche a optimiser au maximum une fonction qui determine quelle face est a colorier au pas et dans quelle couleur dans mon moteur 3D."
sBibi a fait un moteur 3D sur nos TI-68k, donc il doit avoir eu ce problème et doit savoir le résoudre...