Section courante

A propos

Section administrative du site

Assembleur 80x86

LODS

INTEL 8088+ LOaD String

Syntaxe

LODS chainesource

Description

Cette instruction permet de copier un élément de l'adresse DS:SI dans le registre accumulateur et incrémente/décrémente le registre SI en fonction de la taille de l'opérande source et de l'état du drapeau de direction.

Algorithme

MODULE LODS(chainesource)
   SI (charge un octet) ALORS
      AL ← chainesource
      SI DF = 0 ALORS
         (E)SI ← (E)SI + 1
      SINON
         (E)SI ← (E)SI - 1
      FIN SI
   SINON SI (charge un mot) ALORS
      AX ← chainesource
      SI DF = 0 ALORS
         (E)SI ← (E)SI + 2
      SINON
         (E)SI ← (E)SI - 2
      FIN SI
   SINON SI (charge un double mot) ALORS
      EAX ← chainesource
      SI DF = 0 ALORS
         (E)SI ← (E)SI + 4
      SINON
         (E)SI ← (E)SI - 4
      FIN SI
   SINON
      RAX ← chainesource
      SI DF = 0 ALORS
         (E)SI ← (E)SI + 8
      SINON
         (E)SI ← (E)SI - 8
      FIN SI
   FIN SI

Mnémonique

Instruction Opcode Description
LODS mem8 ACh Charge l'octet de DS:(R)SI dans AL et incrémente ou décrément (R)SI.
LODS mem16 ADh Charge le mot de DS:(R)SI dans AX et incrémente ou décrément (R)SI.
LODS mem32 ADh Charge le double mot de DS:(R)SI dans EAX et incrémente ou décrément (R)SI.
LODS mem64 ADh Charge le quadruple mot de DS:(R)SI dans RAX et incrémente ou décrément (R)SI.

Exceptions

Message Mode réel Virtuel 8086 Mode protégé Description
#SS(Pile) X X X Une adresse mémoire dépasse la limite du segment de pile ou n'est pas canonique
#GP(Protection général) X X X Une adresse mémoire dépasse la limite du segment de données ou n'est pas canonique
    X Un segment de données nulle est utilisé comme référence mémoire
#PF(Faute de page)   X X Une faute de page résultat de l'exécution de l'instruction
#AC(Vérifie l'alignement)   X X Un désalignement de la référence mémoire est effectué quand une vérification d'alignement est activé

Voir également

Instruction assembleur 80x86 - Instruction MOVS
Instruction assembleur 80x86 - Instruction STOS

Références

Le livre d'Or PC, Martin Althaus, 1992, ISBN: 2-7361-0934-1, page 818
AMD64 Architecture Programmer's Manual Volume 3: General-Purpose and System Instructions, Edition Advanced Micro Devices, Revision 3.14, September 2007, Publication No. 24594, page 149.
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 664 à 667.

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