begin process at 2012 05 25 01:48:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Assembleur

 > 

Archives

 > 

Forum general 80xxx

 > 

adresse de base d'un segment


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

adresse de base d'un segment

vendredi 13 décembre 2002 à 20:16:45 | adresse de base d'un segment

gblade

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??
vendredi 13 décembre 2002 à 20:44:24 | Re : adresse de base d'un segment

GuruMeditation

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??
vendredi 13 décembre 2002 à 21:00:01 | Re : adresse de base d'un segment

gblade


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??

vendredi 13 décembre 2002 à 21:28:59 | Re : adresse de base d'un segment

GuruMeditation

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??


vendredi 13 décembre 2002 à 21:35:26 | Re : adresse de base d'un segment

GuruMeditation

euh... en fait je ne comprend pas très bien compris avec ton equ tu utilises une bibliothèque spéciale ? parce que je ne voit pas comment



-------------------------------
Réponse au message :
-------------------------------

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??



vendredi 13 décembre 2002 à 21:59:45 | Re : adresse de base d'un segment

gblade


En fait moi non plus je ne comprends pas cette ligne de code. C'est extrait d'un listing Intel et compilé avec ASM386. Et la il y a comme un chtit blème c'est que je ne connais pas cet ASM. De plus je ne veux pas modifier la GDT car l'alignement peut être quelquonque mais la page-directories-table référencée par le CR3 et qui sert de base pour le paging.

-------------------------------
Réponse au message :
-------------------------------

euh... en fait je ne comprend pas très bien compris avec ton equ tu utilises une bibliothèque spéciale ? parce que je ne voit pas comment



-------------------------------
Réponse au message :
-------------------------------

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??




vendredi 13 décembre 2002 à 22:07:58 | Re : adresse de base d'un segment

GuruMeditation

c'est dans quel pdf d'intel que tu trouves ce listing?



-------------------------------
Réponse au message :
-------------------------------


En fait moi non plus je ne comprends pas cette ligne de code. C'est extrait d'un listing Intel et compilé avec ASM386. Et la il y a comme un chtit blème c'est que je ne connais pas cet ASM. De plus je ne veux pas modifier la GDT car l'alignement peut être quelquonque mais la page-directories-table référencée par le CR3 et qui sert de base pour le paging.

-------------------------------
Réponse au message :
-------------------------------

euh... en fait je ne comprend pas très bien compris avec ton equ tu utilises une bibliothèque spéciale ? parce que je ne voit pas comment



-------------------------------
Réponse au message :
-------------------------------

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??





vendredi 13 décembre 2002 à 22:37:04 | Re : adresse de base d'un segment

gblade


C'est IA-32 Sofware Developer's Manual 3, chapitre 9 listing 1 STARTUP.ASM mais apparemment le listing dépend du fichier build qui l'accompagne et je me demandais s'il existe un équivalent sous MASM.

-------------------------------
Réponse au message :
-------------------------------

c'est dans quel pdf d'intel que tu trouves ce listing?



-------------------------------
Réponse au message :
-------------------------------


En fait moi non plus je ne comprends pas cette ligne de code. C'est extrait d'un listing Intel et compilé avec ASM386. Et la il y a comme un chtit blème c'est que je ne connais pas cet ASM. De plus je ne veux pas modifier la GDT car l'alignement peut être quelquonque mais la page-directories-table référencée par le CR3 et qui sert de base pour le paging.

-------------------------------
Réponse au message :
-------------------------------

euh... en fait je ne comprend pas très bien compris avec ton equ tu utilises une bibliothèque spéciale ? parce que je ne voit pas comment



-------------------------------
Réponse au message :
-------------------------------

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??






samedi 14 décembre 2002 à 14:40:41 | Re : adresse de base d'un segment

GuruMeditation

chez moi c'est au chapitre 8
j'ai pas trop étudié le code mais ça semble être du code pour passer en mode protégé ton CS_BASE est utilisé à la ligne 201, le build file après le code m'a tout l'air d'être un script pour BLD386 et qui semble être un éditeur de lien.



-------------------------------
Réponse au message :
-------------------------------


C'est IA-32 Sofware Developer's Manual 3, chapitre 9 listing 1 STARTUP.ASM mais apparemment le listing dépend du fichier build qui l'accompagne et je me demandais s'il existe un équivalent sous MASM.

-------------------------------
Réponse au message :
-------------------------------

c'est dans quel pdf d'intel que tu trouves ce listing?



-------------------------------
Réponse au message :
-------------------------------


En fait moi non plus je ne comprends pas cette ligne de code. C'est extrait d'un listing Intel et compilé avec ASM386. Et la il y a comme un chtit blème c'est que je ne connais pas cet ASM. De plus je ne veux pas modifier la GDT car l'alignement peut être quelquonque mais la page-directories-table référencée par le CR3 et qui sert de base pour le paging.

-------------------------------
Réponse au message :
-------------------------------

euh... en fait je ne comprend pas très bien compris avec ton equ tu utilises une bibliothèque spéciale ? parce que je ne voit pas comment



-------------------------------
Réponse au message :
-------------------------------

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??







samedi 14 décembre 2002 à 19:15:58 | Re : adresse de base d'un segment

gblade


oui j'ai vu que c'était le fichier build qui conditionnait le linkage mais il semblerait qu'il ne soit aps possible de faire la même chose sous MASM :/ je vais essayer autrement

-------------------------------
Réponse au message :
-------------------------------

chez moi c'est au chapitre 8
j'ai pas trop étudié le code mais ça semble être du code pour passer en mode protégé ton CS_BASE est utilisé à la ligne 201, le build file après le code m'a tout l'air d'être un script pour BLD386 et qui semble être un éditeur de lien.



-------------------------------
Réponse au message :
-------------------------------


C'est IA-32 Sofware Developer's Manual 3, chapitre 9 listing 1 STARTUP.ASM mais apparemment le listing dépend du fichier build qui l'accompagne et je me demandais s'il existe un équivalent sous MASM.

-------------------------------
Réponse au message :
-------------------------------

c'est dans quel pdf d'intel que tu trouves ce listing?



-------------------------------
Réponse au message :
-------------------------------


En fait moi non plus je ne comprends pas cette ligne de code. C'est extrait d'un listing Intel et compilé avec ASM386. Et la il y a comme un chtit blème c'est que je ne connais pas cet ASM. De plus je ne veux pas modifier la GDT car l'alignement peut être quelquonque mais la page-directories-table référencée par le CR3 et qui sert de base pour le paging.

-------------------------------
Réponse au message :
-------------------------------

euh... en fait je ne comprend pas très bien compris avec ton equ tu utilises une bibliothèque spéciale ? parce que je ne voit pas comment



-------------------------------
Réponse au message :
-------------------------------

a ok faut être plus précis et j'avais pas vu qu'on était en 32 bits,le problème est tout autre donc en fait il faut modifier la GDT.



-------------------------------
Réponse au message :
-------------------------------


Merci pour la réponse mais je le savais déjà :)
Mon problème est autre, j'ai besoin d'un alignement sur 4ko pour charger mon page directories table dans CR3.

-------------------------------
Réponse au message :
-------------------------------

si tu veux changer ds, es, fs ou gs on fais soit un truc du genre :
mov ax,adresse
mov ds,ax
ou bien :

push adresse
pop ds

et pour le segment de code cs on utilise un jmp far
ou un call

-------------------------------
Réponse au message :
-------------------------------

voila si qqun pouvait me dire comment on fait pour définit l'adresse de base d'un segment. j'ai vu dans certaines docs ils mettent une equate au début du listing
CS_BASE equ 0ffff0000h
par exemple et si j'ai bien compris ce serait sensé mettre le segment de code à cette adresse, mais c'est tout ce qu'il faut faire ??









1 2

Cette discussion est classée dans : base, adresse, segment


Répondre à ce message

Sujets en rapport avec ce message

Kernel Base [ par Stormy ] Quelqu'un saurait-il comment obtenir le pattern MZ qui correspond à l'adresse de Kernel Base, mais sans utiliser d' API? Le but est de déterminer la b utilisation des variables [ par moffer ] Bonjour à tous.J'ai besoin de recopier ma variable chaine au segment 0b800 pour l'afficher, sans utiliser les interruptions. (c'est pour ensuite la fa Adresse mémoire d'une chaine [ par moffer ] Bonjour,Je veux pointer sur le premier caractère de ma chaine. Lorsque je compile le code suivant :SEGMENT DATAchaine db 'Hello$'SEGMENT TEX SEGMENT SOUS NASM [ par Berty2000 ] Salut.je debute l'assembleur.Dans un prog EXE,comment recuperer la valeur du segment data dans lequelse trouve mot.pour l'offset, il suffit de faire m retour d'interruption [ par S2R ] Bonjour,Je n'arrive pas à récupérer l'adresse d'appel d'une int.J'aurais besoin de pouvoir changer l'adresse de retour d'une int (que j'ai reprogrammé segment partagé en masm32 [ par anthraxx ] bonjour a tous,je connais l'assembleur mais je suis pas tres habitué a masm32, et je me demandais ce qu'il faut mettre pour qu'un segment donné de ma [NASM] émulateur NES [ par sirozz ] Bonjour à tous,Je me lance dans la programmation d'un émulateur de console NES en ASM avec NASM. J'avais déja fait un émulateur NES en VB il y a quelq Adresse de la varaiable PATH [ par cobbelguard ] CobbleguardBonjour, je debute en asm et je recherche des infos sur le moyen de recuperer et afficher la variable PATH, quel que soit le mode d'afficha Commandes de base [ par Uims ] Je suis débutant et j'aurais aimer savoir:Copier un fichierDéplacer un fichiereffacer un fichier démarrer un fichierTous sa en asmMerci Uims


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,998 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales