Précédent   Forum du club des développeurs et IT Pro > Autres langages > Assembleur
Assembleur Forum d'entraide Assembleur. Avant de poster -> F.A.Q Assembleur Tutoriels Assembleur
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Actualité déjà publiée
 
Outils de la discussion
Publicité
'
Vieux 31/05/2011, 17h16   #21
golden boy
Membre confirmé
 
Avatar de golden boy
 
Homme
Étudiant
Inscription : novembre 2010
Messages : 120
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : novembre 2010
Messages : 120
Points : 224
Points : 224
Matarc: tu peux te renseigner sur le format ELF (prit en charge par le noyau Linux et BSD, parmi d'autres) et sur les syscalls qui ne sont pas les même que pour DOS (la recherche "linux+syscalls" donne de très bons résultats sur Google ou le Man 2 de Linux).
golden boy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/12/2011, 15h43   #22
afranck64
Membre Expert
 
Avatar de afranck64
 
Homme Franck Awounang N.
Étudiant
Inscription : janvier 2009
Messages : 587
Détails du profil
Informations personnelles :
Nom : Homme Franck Awounang N.
Âge : 21
Localisation : Autre

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2009
Messages : 587
Points : 1 025
Points : 1 025
Envoyer un message via Yahoo à afranck64
Je trouve le tuto bien mais mon pc tourne sous win7-64bits. Et j'ai à l'exécution un joli : Le programme ne peut être lancé en 64 bits.
__________________
Win 7 HP 64 bits /Ubuntu 12.04, - AMD A6 Quad: Py32 / Py27
Citation:
CONTENU D'UNE QUESTION
Exemples:
- Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
- Code source du morceau de programme où il y a un bogue
- Ligne de code sur laquelle le bogue apparaît
- Erreur complète retournée pas l'interpréteur Python
- Recherche déjà effectuée (FAQ, Tuto, Web, ...)
- Tests déjà effectués
afranck64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 13h43   #23
Chevalier au taureau
Membre confirmé
 
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 48
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 48
Points : 291
Points : 291
Oups ! Désolé.

Comme je n'ai pas de Windows 7 sous la main, il va falloir me donner un peu plus d'informations. Quel chapitre, quelles commandes, quel fichier, ce genre d'informations. Plus ce sera précis et mieux je pourrai chercher une solution.
__________________
http://esauvage.developpez.com
Chevalier au taureau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2011, 20h41   #24
afranck64
Membre Expert
 
Avatar de afranck64
 
Homme Franck Awounang N.
Étudiant
Inscription : janvier 2009
Messages : 587
Détails du profil
Informations personnelles :
Nom : Homme Franck Awounang N.
Âge : 21
Localisation : Autre

Informations professionnelles :
Activité : Étudiant
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2009
Messages : 587
Points : 1 025
Points : 1 025
Envoyer un message via Yahoo à afranck64
Citation:
Envoyé par Chevalier au taureau Voir le message
Oups ! Désolé.

Comme je n'ai pas de Windows 7 sous la main, il va falloir me donner un peu plus d'informations. Quel chapitre, quelles commandes, quel fichier, ce genre d'informations. Plus ce sera précis et mieux je pourrai chercher une solution.
Le tout premier programme, "Hello papi."
Code :
1
2
3
4
5
6
7
org 0x0100 ; Adresse de début .COM
;Ecriture de la chaîne hello dans la console
mov dx, hello
mov ah, 0x9
int 0x21
ret
hello: db 'Bonjour papi.', 10, 13, '$'
.
La compilation se produit sans soucis, mais l'OS ne parvient pas à exécuter le .COM obtenu
__________________
Win 7 HP 64 bits /Ubuntu 12.04, - AMD A6 Quad: Py32 / Py27
Citation:
CONTENU D'UNE QUESTION
Exemples:
- Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
- Code source du morceau de programme où il y a un bogue
- Ligne de code sur laquelle le bogue apparaît
- Erreur complète retournée pas l'interpréteur Python
- Recherche déjà effectuée (FAQ, Tuto, Web, ...)
- Tests déjà effectués
afranck64 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/01/2012, 13h29   #25
Chevalier au taureau
Membre confirmé
 
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 48
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 48
Points : 291
Points : 291
C'est tout ? Pas de message d'erreur ?
En mode de compatibilité windows XP, ça donne quoi ?
__________________
http://esauvage.developpez.com
Chevalier au taureau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2012, 18h48   #26
korn2kx
Invité de passage
 
Homme Vincent
Inscription : août 2009
Messages : 1
Détails du profil
Informations personnelles :
Nom : Homme Vincent
Âge : 32
Localisation : France, Essonne (Île de France)

Informations professionnelles :
Secteur : Associations - ONG

Informations forums :
Inscription : août 2009
Messages : 1
Points : 3
Points : 3
Par défaut Merci

Bonjour, je tenais tout d'abord à vous remercier pour toutes ces précieuses informations sur l'assembleur, le BIOS, etc...

Je suis votre "tutoriel" avec un grand intérêt.

J'en suis au chapitre IV, or je rencontre des difficultés:

Je suis sous windows 7 x64, donc bien évidemment dès le début, lorsque j'ai voulu exécuter un programme .com (16bit), windows m'a jeté avec un message explicite.

La solution qui fonctionnait jusque là, (attention ce n'est pas forcément la meilleure...), fut d'installer windows Virtual PC, et de créer un ordinateur virtuel sous windows XP.

Cette solution a fonctionné jusqu'au chapitre III inclus, mais je ne sais pourquoi, avec le code du chapitre IV j'ai le message d'erreur suivant :


Je pense donc que je vais me rabattre sur la solution "dosbox" que vous avez évoqué concernant windows Vista...

Sinon j'ai une question :
Dans le chapitre : IV.2. Le refacteur sonne toujours une paire de fois (refactoring)

Pour l'instruction LODSB, ne serait-ce pas plutôt l'équivalent de
MOV AL, [DS:SI] ; en gardant la syntaxe destination, source (intel)
INC SI

de même pour STOSB qui devient :
MOV [ES:DI], AL
INC DI

J'avoue que lorsque que j'ai lu le chapitre ce détail m'a perturbé.

Enfin encore merci!!!

Ps: si vous avez des choses à ajouter sur le sujet je serait ravi de pouvoir les lire...
korn2kx est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/04/2012, 16h16   #27
Chevalier au taureau
Membre confirmé
 
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 48
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 48
Points : 291
Points : 291
Bonjour,

Merci de vos compliments, mais n'en jetez plus, je pourrais les croire.

En effet, vous avez une interdiction d'accéder aux services vidéo du BIOS à partir de Vista. La machine virtuelle Windows ne restaure peut-être pas l'accès à ces services.

Vous m'avez tout l'air d'avoir repéré une coquille, que je m'en vais corriger de ce pas nonchalant (parce que là je suis un poil juste, en temps).

Vous trouverez la suite du tuto ici, ou bien les dernières versions, y compris celles en cours de développement

Au plaisir de vous lire,
__________________
http://esauvage.developpez.com
Chevalier au taureau est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 22/04/2012, 11h55   #28
hujuse
Invité de passage
 
Inscription : octobre 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : octobre 2011
Messages : 2
Points : 2
Points : 2
Merci pour ce tutoriel, il est extrêmement bien fait!

Mais j'ai malheureusement aussi un problème...

Dans le chapitre III.II., on nous montre un code avec des fonction et qui devrais proposer une interaction avec l'utilisateur mais quand je lance le programme, il se contente d'afficher la première ligne de texte et bloque la console alors qu'il devrait afficher cette première ligne puis laisse l'utilisateur entrer une ligne puis l'affiche et affiche une seconde fois le tout premier message...

Help...

Merci de votre attention
hujuse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2012, 10h53   #29
Chevalier au taureau
Membre confirmé
 
Ingénieur développement logiciels
Inscription : juin 2007
Messages : 48
Détails du profil
Informations personnelles :
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : juin 2007
Messages : 48
Points : 291
Points : 291
Arf. Je dois préciser : effectuer un "cls" avant de lancer le programme. CLS pour CLear Screen, nettoyer l'écran. Le code, simpliste, ne gère pas le dépassement de l'écran. CLS vous remet en haut de l'écran.

Je mets à jour dès que possible.
__________________
http://esauvage.developpez.com
Chevalier au taureau est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2012, 17h30   #30
hujuse
Invité de passage
 
Inscription : octobre 2011
Messages : 2
Détails du profil
Informations forums :
Inscription : octobre 2011
Messages : 2
Points : 2
Points : 2
Merci beaucoup sa fonctionne

Cordialement
hujuse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/06/2012, 14h44   #31
Bktero
Expert Confirmé Sénior
 
Avatar de Bktero
 
Ingénieur systèmes embarqués
Inscription : juin 2009
Messages : 1 717
Détails du profil
Informations personnelles :
Âge : 25
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Ingénieur systèmes embarqués
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2009
Messages : 1 717
Points : 4 217
Points : 4 217
Je viens de commencer à lire ce tutoriel pour comprendre un peu moins mal le code assembleur obtenu avec des programmes en C. J'apprécie le style d'écriture et je souhaiterais en particulier applaudir la phrase suivante :

Citation:
en RAZant (de l'informaticien RAZer : effectuer une RAZ, Remise A Zéro)
SPLENDIDE !!!


PS : dans la partie II.4. Des soucis, le premier code contient une phrase qui n'aurait pas dû être dans le code ("Et juste après le JZ, on insère :").
__________________
Si Code::Blocks vous dit undefined reference to 'socket@12', cela signifie que vous avez un problème d'édition des liens. Allez dans Projects / Build Options / Linker Settings / Add et renseigner ici les .a qui vont bien. Exemple pour les sockets : C:\Program Files\CodeBlocks\MinGW\lib\libws2_32.a

Pour les adeptes du langage SMS, allez ici et ramenez la traduction française ^^

Pour vos problèmes d'embarqué, utilisez le forum dédié !
Bktero est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Réponse Actualité déjà publiée
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 19h13.


 
 
 
 
Partenaires

Hébergement Web