60 likes | 203 Views
Processeur modèle 8086. David Saint-Mellion. AX. 16 bits - 2octets. BX. AX. CX. AH. AL. DX. 8 bits 1 octet. 8 bits 1 octet. Les registres de Données. 4 Registres de 16 bits - 2 octets : AX, BX, CX, DX Chaque registre se décompose partie Haute H et partie Basse AX = AH+AL.
E N D
Processeur modèle 8086 David Saint-Mellion
AX 16 bits - 2octets BX AX CX AH AL DX 8 bits1 octet 8 bits1 octet Les registres de Données • 4 Registres de 16 bits - 2 octets : AX, BX, CX, DX • Chaque registre se décompose partie Haute H et partie Basse • AX = AH+AL
Syntaxe de l’assembleur Un code opération et des opérandes L’instruction copie MOV MOV Destination, Source Destination <-- Source Source est une valeur MOV AX, 5566 AX <-- 5566 Source est le contenu d’un registre MOV AX,BX AX <-- BX Source est le contenu d’une position mémoire (adresse) MOV AX,[300] AX <-- [DS:300]
Position mémoire Déplacement BaseSegment Principe de l’adressage Dans le programme, une position mémoire est désignée par une base et un déplacement • adressage segmenté Adresse logique : Base : déplacement Segment : déplacement 1000 : 2500 La position mémoire se situe dans le segment à l ’adresse 1000 avec un déplacement (offset) de 2500
Donnée 9955 Instruction 0008 891E0800 IP 0009 DS CS 1000 Les registres adresses Les registres de segment : • instructions CS • données DS (ES) • pile SS Une instruction est à l ’adresse CS:IP Une donnée est à l ’adresse DS:opérande Un objet de la pile est à l’adresse SS:SP Exemple 1000:0009 891E0800 MOV [0008],BX
L ’instruction est à l ’adresse 1000:0009 CS=1000 - IP=0009 DS à pour valeur 2000. La donnée source (le contenu de BX) est placé à l ’adresse 2000:0008 [DS:0008] <-- BX Position Destination 0008 891E0800instruction IP 0009 DS 2000 CS 1000 DS IP BX CS 2000 0009 AA22 1000 Segment Destination Adresse Instruction Source Exemple 1000:0009MOV [0008],BX