IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

x86 32-bits / 64-bits Assembleur Discussion :

Comment utiliser TASM sur un système 64 bits ?


Sujet :

x86 32-bits / 64-bits Assembleur

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 9
    Points : 4
    Points
    4
    Par défaut Comment utiliser TASM sur un système 64 bits ?
    Salut,

    J'essaye depuis peu d'apprendre l'assembleur grâce à un livre que j'ai acheté mais lorsque j'utilise tasm et que je link(ça se dit ?) en gros que je crée le fichier .exe, celui-ci n'est pas exécutable par mon système.

    Pour "linker" j'utilise la commande tlink /3 nomdefichier.obj, mon livre indique que le " /3 " signifie pour système 32 bits.

    Comment résoudre ce problème ?

    Une autre question aussi, existe-il un IDE avec compilateur, éditeur de lien, deboggeur tout compris ? (et un peu plus moderne que la bonne et vielle console)

    Je vous remercie de m'avoir lu

  2. #2
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 225
    Points : 10 174
    Points
    10 174
    Par défaut
    Je répondrai qu'a une seule question , vu que je n'utilise pas tasm mais nasm pour ma part.

    Existe - il un IDE tout compris je crois qu'il y a radasm ,moi j'utilise Geany comme IDE mais ce n'est qu'un simple IDE il est fourni avec aucun compilateur/assembleur (donc a toi de le choisir),je l'utilise personnellement pour codé en assembleur , il est configurable donc tu peux configuré les commandes , l'exécution et le deboggeur.

  3. #3
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Juin 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : .
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2002
    Messages : 239
    Points : 567
    Points
    567
    Par défaut
    Bonjour.

    TASM fonctionne parfaitement sous Windows 64 bits.
    Je le sais puisque j'utilise TASM sous Windows 7 64 bits.

    L'option /3 de TLINK permet d'obtenir des exécutables 16 bits.
    Mais Windows 64 bits n'est plus compatible avec les versions précédentes et il refuse d'exécuter les programmes 16 bits.
    Ce n'est donc pas TASM qui est en cause, mais Windows.

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par Prof Voir le message
    Bonjour.

    TASM fonctionne parfaitement sous Windows 64 bits.
    Je le sais puisque j'utilise TASM sous Windows 7 64 bits.

    L'option /3 de TLINK permet d'obtenir des exécutables 16 bits.
    Mais Windows 64 bits n'est plus compatible avec les versions précédentes et il refuse d'exécuter les programmes 16 bits.
    Ce n'est donc pas TASM qui est en cause, mais Windows.

    Salut,

    Comment fais tu exactement ?

    Disons que je code dans un fichier nommé test.asm ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    .386
    donnees segment para public use16
    	chaine1 db 'Hello','$'
    donnees ends
     
    code segment para public use16
    assume cs:code, ds:donnees
     
    debut:
    	mov ax,donnees ;AX reçoit l'adresse du segment de donnéees
    	mov ds,ax  ;DS reçoit AX
    	mov dx,offset chaine1 ;DX reçoit l'offset de chaine1
     
    	call Aff_Chaine
     
    	mov ax, 4C00h
    	int 21h
     
    Aff_Chaine proc near
    ;Affiche une chaŒne de caractŠres … l'‚cran
    ;
    ;Entrée : DS = segment dans lequel se trouve la chaŒne à afficher
    ;
    ; DX = adresse d'offset du message
    ;Sortie -
    ;Modifie: aucun
     
    	push ax ; sauve AX car il est modifié
     
    	mov ax,0900h ;service 9h
    	int 21h ;interruption 21h
    	pop ax ;récupŠre AX
    	ret ;retour au programme appelant
     
    endp
     
    code ends
     
    pile segment para stack use16'stack'
    db 2048 dup(?)
    pile ends
     
    end debut
    Puis je fais tasm test.asm, puis tlink test.obj

    Un exécutable est crée, et je n'arrive pas à l'ouvrir

    Par contre si je tape test.asm dans tasm ça m'affiche " Hello "

    Moi ce que je souhaite c'est que en double cliquant sur l'éxé, celui-ci m'affiche " Hello "

  5. #5
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Juin 2002
    Messages
    239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : .
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2002
    Messages : 239
    Points : 567
    Points
    567
    Par défaut
    Re-Bonjour.

    Je pensais que mon explication était claire.

    Je recommence donc : Windows 64 bits refuse d'exécuter les programmes 16 bits.

    Alors, soit tu changes ta version de Windows, soit tu programmes en 32 bits.
    ( TASM ne permet pas de programmer en 64 bits )

Discussions similaires

  1. Pas de uname, pas de /proc : comment se renseigner sur le système ?
    Par shalala dans le forum Administration système
    Réponses: 10
    Dernier message: 31/08/2007, 15h52
  2. Réponses: 1
    Dernier message: 27/03/2007, 14h07
  3. [VS2005][NUnit] Comment utiliser Nunit sur un site web
    Par Dadou74 dans le forum Visual Studio
    Réponses: 1
    Dernier message: 31/08/2006, 09h53
  4. Réponses: 7
    Dernier message: 18/04/2006, 17h44
  5. Réponses: 10
    Dernier message: 10/04/2006, 13h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo