Assembleur SuperH | AND |
---|---|
SuperH | AND Logical |
Syntaxe
AND Rm,Rn |
AND #imm,R0 |
AND.B #imm, @(R0,GBR) |
Description
Cette instruction permet d'effectuer un «Et binaire» du contenu d'un registre général avec un autre registre général et entrepose le résultat dans un registre.
Algorithme
MODULE AND(m,n) * AND Rm,Rn R[n] ← R[n] ∩ R[m] PC ← PC + 2 MODULE ANDI(i) * AND #imm,R0 R[0] ← R[0] ∩ (000000FFh ∩ (long)i) PC ← PC + 2 MODULE ANDM(i) * AND.B #imm,@(R0,GBR) temp ← (long)Read_Byte(GBR+R[0]) temp ← temp ∩ (000000FFh ∩ (long)i) Write_Byte(GBR+R[0],temp) PC ← PC + 2 |
Remarque
- Après que l'instruction «AND #imm, R0» est exécuté, les 24 bits supérieurs de R0 sont toujours fixé à 0.
Mnémonique
Instruction | Abstrait | Opcode | Cycle |
---|---|---|---|
AND Rm,Rn | Rn ← Rn ∩ Rm | 0010nnnnmmmm1001 | 1 |
AND #imm,R0 | R0 ← R0 ∩ imm | 11001001iiiiiiii | 1 |
AND.B #imm, @(R0,GBR) | (R0 + GBR) ← (R0 + GBR) ∩ imm | 11001101iiiiiiii | 3 |
Dernière mise à jour : Mardi, le 28 juillet 2015