voici une instruction :
comment remplacer cette instruction par la directive ASSUME ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 mov ax,@DATA mov ds,ax
merci d'avance !!
voici une instruction :
comment remplacer cette instruction par la directive ASSUME ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 mov ax,@DATA mov ds,ax
merci d'avance !!
Bonjour,
Une directive ASSUME ne peut remplacer ces instructions car elle s'adresse à l'assembleur (le compilateur) pour indiquer à quel registre un segment ou groupe de segments doit être associé au moment de l'assemblage et de l'édition de liens.
Les deux instructions, par contre, s'adressent au processeur pendant l'exécution du programme, en fixant réellement l'adresse du segment.
Il s'agit de deux choses complètement différentes. J'espère que tu saisis la nuance ?
dans un exo de tp
cé indiqué de remplacer ces instructions par la directive ASSUME ???
personne n'as répondu car il est impossible de remplacer ces instruction par la directive ASSUME :
assume permet de couvrir toutes les données contenues dans un segment si on l'ecrit pas on sera a chaque fois obligé de mentionner le segment ( exp: mov AX, DS:N1).
par contre cette suite d'instruction ( séquence d'initialisation ) est obligatoire
le langage assembleur comporte pas de mov pour DS,ES,SS avec une valeur immédiate d'où le passage obligatoire par un registre
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 mov ax,@DATA mov ds,ax
Bonjour
Je crois que tu n'est pas compris la question de votre tp
En peut pas remplacé la directive assume mais c’est obligé de la rajouter avants les 2 instruction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 code segment assume cs:code , ds:data mov ax ,data mov ds, ax
Dernière modification par Rukia ; 16/05/2007 à 20h47.
on n'est pas obligé de mettre assume avant les deux mov !!
on peut s'en passer !!
salut
C'est la directive ASSUME qui permet d'indiquer à l'assembleur où se situe le segment de données et le segment de code.
Puis il s'agit d'initialiser le segment de données :
MOV AX, nom_du_segment_de_donnees
MOV DS, AX
Bonjour,
Effectivement, on est pas oblige d'utiliser ASSUME,
mais si on utilise plus d'un segment (DS) pour ses donnees, et que l'on oublie
de preciser que le segment a utiliser en est un autre (FS ou GS par exemple)
la directive ASSUME permettra a l'assembleur de faire le rapprochement
et d'utiliser le bon registre de segment ...
a+ Francois
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager