pb fichier handle asm - ASM - Programmation
Marsh Posté le 26-08-2004 à 07:22:45
Citation : xor dx, dx |
ton jne est faux, en cas d'erreur c'est le flag de retenue (Carry Flag) qui est positionné, il faut donc faire un jnc
Pour l'autre bout de code, en regardant vite fait je sais pas, m'enfin chui ptêt vieux jeu, mais mettre des caractères 'spéciaux' (comme tes '?') dans des labels, j'aime pas.
Marsh Posté le 26-08-2004 à 11:05:39
voila je viens d'essayer avec jnc et sa me met erreur qd mm
j'ai regarder sur le site de Ralf Brown's et comme ax vaut 3 l'erreur est donc : 'path not found' mais je vois pas pk il me met sa .
pr ce qui est des '?' moi je trouve sa assez pratique pr reconnaitre les params
Marsh Posté le 26-08-2004 à 18:48:25
Ace17 a écrit : nom db "rf.txt",0 |
je l'avais pas vu (c'est vrai qu'en C, le fait de mettre entres " ajoute le zéro terminal...)
Marsh Posté le 26-08-2004 à 18:55:06
je viens d'essayer de mettre le 0 et sa marche pas
il me met tjs que c'est l'erreur num 3
pk ?
Marsh Posté le 27-08-2004 à 01:27:56
mat74 a écrit : pr ce qui est des '?' moi je trouve sa assez pratique pr reconnaitre les params |
je dis ça parceque j'ai connu un parser qui prenait mal les caractères spéciaux et faisait alors n'importe quoi sans indiquer d'erreur
Ca permet de bien retenir qu'il est d'usage de déclarer des labels et des variables avec seulement des caractères alphanumériques et le '_', et qui ne commencent pas par un chiffre
Tiens par ex. pas plus tard qu'hier on a remarqué qu'un assembleur ST7 faisait n'importe quoi si un commentaire était collé à un label, comme ceci :
.le_label; le commentaire d'usage
écrit comme ça :
.le_label ; le commentaire d'usage
ça ne plante pas
Marsh Posté le 25-08-2004 à 15:07:11
salut a ts,
voila j'ai plusieurs pb avec la gestion des fichiers par handle .
je le precise tt de suite , je suis sous xp et j'utilise Tasm comme compilo .
tt d'abord j'ai des pb pr renommer les fichiers .
voila le code :
xor dx, dx
xor di, di
mov ah, 56h
mov dx, offset nom
mov di, offset nom2
int 21h
jne po_erreur
Ecrire_chaine <"erreur",10,13> [cpp]
po_erreur:
et ds le segment data :
nom db "rf.txt"
nom2 db "ahah.txt",0
le fichier que j'essaie de renommer s'appel 'rf.txt' et il est juste a coté de l'executable et pourtant il me met erreur comment faire ?
j'ai un autre pb pr créer des fichiers , j'ai fais un macro qui est censé créer un fichier , qd je l'appel une fois sa marche mais qd je l'appel plusieur fois le dernier nom rentré sera le nom du seul fichier créé
voila le code du macro :
Creer_fichier macro nom?,attribut?
local nom
data segment use16
nom db nom?,'$'
data ends
code segment use16
push bx cx dx
mov ah, 3Ch
mov cx, attribut?
mov dx, offset nom
int 21h
pop dx cx bx
code ends
endm
donc par exemple si je fais
Creer_fichier "abc.txt" 0
il va bien me créer le fichier
et si je fais
Creer_fichier "abc.txt" 0
Creer_fichier "tada.txt" 0
il va me créer un seul fichier du nom de tada.txt
de quoi viens ce pb ?
en + si rentre le nom en minuscule et il me crée le fichier avec le nom en majuscule , mais sa je crois que c'est normal avec dos
merci d'avance
@+