Section courante

A propos

Section administrative du site

Assembleur 68000

ASR

Motorola 68000+ Arithmetic Shift Right

Syntaxe

ASR Dx, Dy
ASR #data, Dy
ASR ea

Paramètres

Nom Description
ea Ce paramètre permet d'indiquer une adresse effective d'une opérande à décaler.
data Ce paramètre permet d'indiquer une valeur immédiate de compteur de décalage.
Dx Ce paramètre permet d'indiquer le registre de destination.
Dy Ce paramètre permet d'indiquer le registre source.

Description

Cette instruction permet d'effectuer un décalage des bits de l'opérande vers la droite et le dernier bit reçoit la valeur du bit de retenue. Le compteur de décalage pour le décalage d'un registre peut être spécifiés de 2 manières différentes : une valeur immédiate (le compteur de décalage est spécifié dans l'instruction dans l'intervalle de 1 à 8), un registre (le compteur de décalage est la valeur dans le registre de données spécifié dans l'instruction de modulo 64). La taille de l'opération peut être un octet, un mot ou un long mot. Une opérande en mémoire peut être décalé d'un seul bit et la taille de l'opérande est restreinte à un mot. Les bits décalés du bit de poids faible vont à la fois aux bits de retenue et d'extensions; les bits de signe (MSB) est décalé dans le bit de poids fort.

Algorithme

MODULE ASR(Compteur,Destination)
   DestinationDestination décalage vers la droite Compteur

Registre de codes de condition

Cette instruction affectera les bits de drapeau du registre de codes de condition de la façon suivante :

Nom du drapeau Description
X Ce bit vaut 1 si le dernier bit est décalé en dehors de l'opérande mais n'est pas affecté pour un compteur de décalage de 0.
N Ce bit vaut 1 si le bit le plus significatif du résultat est défini autrement ce bit vaut 0
Z Ce bit vaut 1 si le résultat est zéro, autrement il vaut 0.
V Ce bit vaut 1 si le bit le plus significatif est modifié à tout moment durant le décalage sinon vaut 0.
C Ce bit vaut 1 si le dernier bit est décalé en dehors de l'opérande mais reste inchangé pour un compteur de décalage de 0.

Voir également

Langage de programmation - Assembleur 68000 - Référence d'instructions - ASL
Langage de programmation - Assembleur 68000 - Référence d'instructions - LSR
Langage de programmation - Assembleur 68000 - Référence d'instructions - ROR

Dernière mise à jour : Mardi, le 28 juillet 2015