Assembleur SuperH | BF |
---|---|
SuperH | Branch if False |
Syntaxe
BF label |
Description
Cette instruction permet d'effectuer une branchement conditionnel si le bit T vaut 0. Si T = 1, BF exécute l'instruction suivante. La destination du branchement est une adresse spécifiée par PC + déplacement. Cependant, dans ce cas, il est utilisé pour le calcul d'adresse. Le PC est une adresse de 4 octets après cette instruction. Le déplacement à 8 bits à les signes étendue et est doublé. Par conséquent, l'intervalle relatif de la destination de la branche est compris entre -256 et +254 octets. Si le déplacement est trop court pour atteindre la destination du branchement, utilisez BF avec l'instruction BRA ou quelque chose de similaires.
Algorithme
MODULE BF(d) * BF disp SI d ∩ 80h = 0 ALORS disp ← 000000FFh ∩ (long)d SINON disp ← FFFFFF00h U (long)d FIN SI SI T = 0 ALORS PC ← PC + (disp << 1) SINON PC ← PC + 2 FIN SI |
Remarque
- Lors du branchement, il effectue 3 cycle d'horloge et s'il n'y a pas de branchement, il effectue un cycle d'horloge.
Mnémonique
Instruction | Abstrait | Opcode | Cycle |
---|---|---|---|
BF label | Quand T = 0, PC ← disp × 2 + PC, Quand T = 1, nop | 10001011dddddddd | 3/1 |
Dernière mise à jour : Mardi, le 28 juillet 2015