Accueil > Forum > > > > Ecriture caractère passé en paramètre
Ecriture caractère passé en paramètre
mardi 30 décembre 2008 à 19:19:50 |
Ecriture caractère passé en paramètre

LandTech
|
Bonjour, comme c'est dit dans le titre je voudrais afficher un caractère passé en paramètre avec l'interruption Bios 10h.
j'ai écris un code mais Nasm me sort une erreur : invalid combination of opcode and operands
voici le code :
[BITS 32] ; indique à NASM que l'on est en 32 bits segment .text global _printchar _printchar: push ebp mov ebp, esp mov eax, [ebp+8] ; 1er argument mov ebx, eax mov AH, 0Ah ; Charge la fonction d'affichage mov AL, ebx ; Charge le caractère a afficher int 10h ; Active l'interruption video pop ebp ; ret ; retour, la somme est dans ; EAX
voila j'espère que vous pourrez résoudre mon problème et bonne prog à tous !
|
|
mardi 30 décembre 2008 à 21:15:44 |
Re : Ecriture caractère passé en paramètre

ghuysmans99
|
Réponse acceptée !
mov al,ebx => Tu voulais mettre 32 bits dans 16 ? Un peu court, non ? Evidemment il fallait mettre les crochets pour dire "la valeur pointée par EBX". int 10h ;Active l'int. vidéo => On active pas les interruptions, on les appelles. (En fait, l'instruction INT correspond à l'empilation des flags & registres ((je ne me souviens plus de ce qu'elle empile exactement)) et fait un call sur l'adresse se trouvant en segment 0, offset numint*2 ((2 bytes pour le segment et 2 autres pour l'offset)) ). _printchar: push ebp ; On sauve EBP mov ebp, esp mov eax, [ebp+8] ; 1er argument mov ebx, eax mov ah, 0Ah ; Choisis la fonction 0Ah, affichage mov al, [ebx] ; Charge le caractère a afficher int 10h ; Appelle l'interruption video pop ebp ret ; Retour, la somme est dans EAX 
|
|
mardi 30 décembre 2008 à 21:20:16 |
Re : Ecriture caractère passé en paramètre
|
mardi 30 décembre 2008 à 21:37:28 |
Re : Ecriture caractère passé en paramètre

LandTech
|
Bonjour,
Oui, je projette de faire un OS et donc je réécris une partie de la librairie C pour pouvoir l'utiliser correctement.
Voilà et Merci.
|
|
mardi 30 décembre 2008 à 21:41:11 |
Re : Ecriture caractère passé en paramètre
|
mardi 30 décembre 2008 à 21:45:56 |
Re : Ecriture caractère passé en paramètre

LandTech
|
Bonjour,
Oui, je vais le faire en 32 Bits (donc en mode protégé). Donc, si j'ai bien compris je ne pourrais pas utiliser l'interruption 10h en 32 Bits ?
Voilà
|
|
mardi 30 décembre 2008 à 21:45:57 |
Re : Ecriture caractère passé en paramètre

LandTech
|
Bonjour,
Oui, je vais le faire en 32 Bits (donc en mode protégé). Donc, si j'ai bien compris je ne pourrais pas utiliser l'interruption 10h en 32 Bits ?
Voilà
|
|
mardi 30 décembre 2008 à 21:46:31 |
Re : Ecriture caractère passé en paramètre

LandTech
|
Oups désolé pour le double poste.
|
|
mardi 30 décembre 2008 à 21:58:33 |
Re : Ecriture caractère passé en paramètre

ghuysmans99
|
Eh non, tu devras travailler directement dans la mémoire vidéo. Petit exemple (en ASM 16 bits on peut aussi le faire) : mov [B800h:0000],69 ;caractère : 'F' mov [B800h:0001],2 ;couleur : vert sur noir 
|
|
mardi 30 décembre 2008 à 21:59:31 |
Re : Ecriture caractère passé en paramètre

ghuysmans99
|
Ooops : mov byte [0B800h:0000],69 ;caractère : 'F' mov byte [0B800h:0001],2 ;couleur : vert sur noir 
|
|
Cette discussion est classée dans : caractère, mov, ecriture, paramètre, ebp
Répondre à ce message
Sujets en rapport avec ce message
Ecriture de chaîne [ par Laurent1313 ]
Salut,Je cherche à modifier une chaîne en assembleur. Je prends donc un caractère, je fais un traitement dessus puis je recopie le caractère dans la c
Lecture/ecriture sur disquette [ par Stormy ]
Voici ma question (TangyX, tu es exempté de réponse). Une disquette est composée de 2 faces (jusque là c 'est bon) chacune composée de 80 pistes de 18
Quels sont les parametres (nombre, taille...) [ par Renfield ]
Bonjour,on peut appeler RunDll32 pour executer des fonctions contenues dans des dll...j'aimerais m'affranchir de cette étape, mais j'ai pour cela beso
afficher un caractère avec int 10h [ par thicdorb ]
bonjour à tous,je suis débutant en assembleur et je commence par le début : afficher un caractèrej'utilise l'inteeruption BIOS 10h mov al, 'A'
Assembleur et tableau + linux + bof [ par flocic ]
Bonjour, J'ai un petit pb de comprehension, j'ai un programme qui deborde au bout 44 octet à cause d'un depassement d ela taille du tableau. Mais ce
conversion minuscule [ par safwensafwen ]
C'est unprogramme qui fair la conversion en minuscule en utilisant la pile je n'arriv
Mov [ par safwensafwen ]
Bonsoir,est ce que l'opérateur Mov dans l'exemple: MOV BP,SP , déplace complétement la valeur de SP dans BP ou bien il fait une copie de SP en BP. Si
TSR & Détournement d'interrupt(ion) [ par ghuysmans99 ]
bonjour à tous.j'ai fait un petit prog en asm 32bits pour dos mais il ne fonctionne pas ... reste à savoir pourquoi !!pourriez-vous m'aider ??;Change
nasm [ par henri12 ]
salut je viens de compiler ce mbr boot avec nasmnasm -fbin aboot.asm -o binexe.exele programme c est bien compiler mais en lançant d une cle usb l ima
boot secteur [ par henri12 ]
salutje viens de decompiler le boot secteur d une disquette de demarrageje voudrais savoir ou puis je mettre 15 octet de code que je veux faire execut
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010TECHDAYS PARIS 2010 : LA BI DANS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Vincent Bellet et Baptiste Giraudier La BI dans SharePoint 2010, Les nouveaux services d'application dans SP2010 et SQL Server Reporting services 2008 R2. La BI dans SharePoint est généralisée pour tous afin de permettre à tous les coll...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010TECHDAYS PARIS 2010 : PLAN DE MIGRATION VERS SHAREPOINT 2010 par ROMELARD Fabrice
Animé par: Arnault Nouvel et Antoine Dongois Le processus à prendre : Apprendre (découvrir la plateforme) Préparer (documenter l'historique et choisir la méthode de MAJ) Test (Test de MAJ) Implémenter (Effectuer la MAJ) Valid...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOURTECHDAYS PARIS 2010 : LA PLEINIèRE DU SECOND JOUR par ROMELARD Fabrice
Après un retour sur l'histoire des TechDays de Paris et le fait que ce soit le plus gros event MS au monde (du fait de sa gratuité), le président de MS France (Eric Boustoullier) a fait une présentation de la vision Microsoft pour les années à venir...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : PIC 16F84RE : PIC 16F84 par belounis
Cliquez pour lire la suite par belounis RE : PIC 16F84RE : PIC 16F84 par pont
Cliquez pour lire la suite par pont
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|