Section courante

A propos

Section administrative du site

Assembleur 80x86

IN

INTEL 8088+ INput

Syntaxe

IN accumulateur,imm
IN accumulateur,DX

Description

Cette instruction permet de demander un octet ou un mot provenant du port d'entrée/sortie et le retourne dans le registre accumulateur (AL, AX, EAX).

Algorithme

SI ((PE = 1) ET ((CPL > IOPL) ET (VM = 1))) ALORS * Mode protégé avec CPL > IOPL ou mode virtual 8086
   SI (n'importe quel permission de bit d'E/S pour un port d'E/S à un accès = 1) ALORS
      EXCEPTION #GP(0)
   SINON
      accumulateur ← Port(adresse)
   FIN SI
SINON
   accumulateur ← Port(adresse)
FIN SI

Mnémonique

Instruction Opcode Description
IN AL, imm8 E4h ib Lit un octet dans un port d'entrée/sortie à l'adresse spécifié par l'imm8 et met le résultat dans le registre AL.
IN AX, imm8 E5h ib Lit un mot dans un port d'entrée/sortie à l'adresse spécifié par l'imm8 et met le résultat dans le registre AX.
IN EAX, imm8 E5h ib Lit un double mot dans un port d'entrée/sortie à l'adresse spécifié par l'imm8 et met le résultat dans le registre EAX.
IN AL, DX ECh Lit un octet dans un port d'entrée/sortie à l'adresse spécifié par le registre DX et met le résultat dans le registre AL.
IN AX, DX EDh Lit un mot dans un port d'entrée/sortie à l'adresse spécifié par le registre DX et met le résultat dans le registre AX.
IN EAX, DX EDh Lit un mot dans un port d'entrée/sortie à l'adresse spécifié par le registre DX et met le résultat dans le registre EAX.

Exceptions

Message Mode réel Virtuel 8086 Mode protégé Description
#GP(Protection général)   X   Un ou plusieurs bits de permission d'entrée/sortie sont fixer par le TSS pour un accès au port.
    X Le CPL est plus grand que le IOPL et une ou plusieurs bits de permission sont fixer par le TSS pour un accès au port.
#PF(Faute de page)   X X Une faute de page résultat de l'exécution de l'instruction

Voir également

Référence des ports d'entrée/sortie 80x86
Instruction assembleur 80x86 - Instruction OUT

Références

Le livre d'Or PC, Martin Althaus, 1992, ISBN: 2-7361-0934-1, page 812
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 117.
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 568 à 569.

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