Section courante

A propos

Section administrative du site

Assembleur 80x86

ARPL

INTEL 80286+ (Mode protégé) Adjust RPL field of selector

Syntaxe

ARPL Opérande Cible,Opérande Source

Paramètres

Nom Description
Opérande Cible Ce paramètre permet d'indiquer le premier opérande à comparer
Opérande Source Ce paramètre permet d'indiquer le deuxième opérande à comparer

Description

Avec cette instruction, on pourra contrôler et corriger le niveau de privilège du segment de code en mode protégée. Pour pouvoir corriger le niveau de privilège, cette instruction effectuera une comparaison du paramètre de destination et de source et s'il pas vrai, alors il ajustera la destination jusqu'à ce qu'il atteigne la source spécifié.

Algorithme

MODULE ARPL(Opérande Cible,Opérande Source)
   SI RPL bits(0,1) DE Opérande Cible < RPL bits(0,1) DE Opérande Source ALORS
      drapeau ZF ← 1
      RPL bits(0,1) DE Opérande Cible ← RPL bits(0,1) DE Opérande Source
   SINON
      drapeau ZF ← 0
   FIN SI

Mnémonique

Instruction Opcode Description
ARPL reg/mem16, reg16 63h /r Ajuste le RPL du sélecteur de segment de destination au niveau inférieur du RPL du sélecteur de segment spécifié dans le registre source 16 bits. Invalide en mode 64 bits.

Exceptions

Message Mode réel Virtuel 8086 Mode protégé Description
#UD(Opcode invalide)   X X Cette instruction est seulement reconnu en mode protégé «legacy» et en mode de compatibilité.
#SS(Pile)     X Une adresse mémoire dépasse la limite du segment de pile.
#GP(Protection général)     X Une adresse mémoire dépasse la limite du segment de données
    X L'opérande de destination n'est pas dans un segment non écrivable
    X Un sélecteur de segment nulle est utilisé comme référence mémoire
#PF(Faute de page)     X Une faute de page résultat de l'exécution de l'instruction
#AC(Vérifie l'alignement)     X Un désalignement de la référence mémoire est effectué quand une vérification d'alignement est activé

Exemple

Cet exemple permet de corriger le résultat à l'adresse de déplacement (offset) «[BX+SI]» :

  1. ARPL [BX+SI], DI

Voir également

Instruction assembleur 80x86 - Instruction LAR
Instruction assembleur 80x86 - Instruction LSL
Instruction assembleur 80x86 - Instruction VERR
Instruction assembleur 80x86 - Instruction VERW

Références

Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2A: Instruction Set Reference, A-M, Edition Intel, Mars 2010, Publication No. 253666-034US, page 130 à 132.

Dernière mise à jour : Lundi, le 1 septembre 2014