Posez votre question Signaler

Erreur de segmentation en assembleur

rocksider 106Messages postés 21 octobre 2008Date d'inscription 16 mars 2012Dernière intervention - Dernière réponse le 16 janv. 2009 à 22:10
Bonjour,
Voilà j'ai ecrit un bout de code simple qui devrait afficher un caractere que j'ai codé avec le language assembleur (nasm) et il me donne une erreur de segmentation, voilà ce dernier:
[code]
section .text
global _start ;must be declared for linker (ld)
_start: ;tell linker entry point
MOV CX,6
MOV AH, 09
mov AL,33
MOV BL 01
INT 10
section .data
/code
Lire la suite 

Erreur de segmentation en assembleur »

1 réponses
Réponse
+0
moins plus
Bonjour

Tu devrais avoir aussi un MOV BH,0 pour sélectionner la page (ou MOV BX,1 au lieu de MOV BL,1)

Il fait quoi ton programme, après le INT 10 ? Il devrait y avoir un appel (ne me demande pas lequel, je n'en sais rien) pour le terminer. Sinon il continue et derrière, il y a n'importe quoi dans la mémoire : plantage garanti. Sous debug, tu peux ajouter un INT 3 qui provoque un point d'arrêt

pour INT 10 commande 9 voir http://www.ctyme.com/intr/rb-0099.htm
Ajouter un commentaire
Ce document intitulé « Erreur de segmentation en assembleur » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?