Fichier non localisé par TASM

Signaler
Messages postés
1
Date d'inscription
vendredi 19 novembre 2010
Statut
Membre
Dernière intervention
20 février 2011
-
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
-
Bonjour,
J'ai un problème avec ce petit programme. Je ne sais s'il provient de TASM ou de quelque chose d'autre.voici le programme:

.386

code segment use 16

assume cs:code, ds:code, ss:code

org 100h

debut

mov ah, 09h
mov dx, offset message
int 21h

ret

message db "Bonjour,monde!", '$'

code ends

end debut

En essayant de le compiler, je reçois le message suivant:


Microsoft Windows XP [version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

E:\Documents and Settings\Oktah>tasm tasm premier
Turbo Assembler Version 3.2 Copyright (c) 1988, 1992 Borland International

Assembling file: tasm.ASM to premier.OBJ
**Fatal** Command line: Can't locate file: tasm.ASM
Error messages: 1
Warning messages: None
Passes: 1
Remaining memory: 451k

Et ce,quel que soit l'endroit où je mets le fichier.
Quelqu'un peut-il m'aider à voir plus clair?
Merci.

4 réponses

Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
13
Il va le chercher là : E:\Documents and Settings\Oktah
Ajoute le chemin de TASM dans ton %path% pour éviter ce genre de problèmes

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question
Messages postés
142
Date d'inscription
mercredi 5 avril 2006
Statut
Membre
Dernière intervention
29 janvier 2016
1
Il y a un tasm de trop dans la ligne de commande.
Le premier tasm demande l'exécution de Tasm.exe, le second d'assembler le fichier tasm.asm qui lui n'existe pas. L'erreur est dans l'appel du "Make" utilisé.
Sous l'invite de commande tape:
E:\Documents and Settings\Oktah\tasm premier

Tu verras alors quelques erreurs de syntaxes faciles à corriger
Mais plus graves sont celles qui se révéleront à l'exécution par exemple un "Ret" qui mène n'importe où.
Pour terminer un programme il faut coder:
mov ah,4ch
int 21h

En outre DS,ES et SS ne sont pas initialisés pas plus que SP d'ailleurs etc.
Bon courage.
Messages postés
1466
Date d'inscription
vendredi 2 janvier 2004
Statut
Modérateur
Dernière intervention
14 février 2014
1
salut,

les segments et sp sont initialisés par le système (fichier .com).

Le ret appelera la terminaison mise en place également par D.O.S. dans l'entête (int 20h de souvenir).

@++
Messages postés
3983
Date d'inscription
jeudi 14 juillet 2005
Statut
Membre
Dernière intervention
30 juin 2013
13
Yep, tout ira bien si le stack n'a pas été massacré. Il y a aussi la fonction 4Ch de l'int 21h avec dans AL le code de retour

VB.NET is good ... VB6 is better
Utilise Réponse acceptée quand un post répond à ta question