Je suis nouveau dans l'assemblage. Je dois faire un programme qui copie les données d'un fichier d'entrée dans un fichier de sortie. mais ce fichier de sortie doit être créé.Aide au code d'assemblage (création d'un nouveau fichier)
Le problème est que je ne peux pas créer ce fichier qui semble si simple.
le code que je utilise est
.model tiny
.data
outputfile db "newfile.txt",0
outhandle dw ?
.code
.stack
cseg segment 'code'
assume cs:cseg, ds:cseg
org 100h
start:
create_a_file:
mov dx, offset outputfile
mov cx, 0
mov ah, 3Ch
int 21h
mov outhandle, ax
jc error_routine
mov ah, 3Eh
mov bx, outhandle
int 21h
error_routine:
mov ax, 4c00h
int 21h
cseg ends
end start
Je vois le nouveau fichier nowhere.Even lorsque je spécifie le dossier racine exacte comme « c: ... » Je ne peux pas comprendre ce qui se passe mal. Toute aide est appréciée, Thanx PS: Im utilisant Windows XP 32 bits. et TASM (portable)
Je souhaite que les gens cessent de s'embêter avec 8086 asm. C'est à peu près obsolète sur les ordinateurs modernes, en particulier ceux de 64 bits; Je ne serais même pas capable d'exécuter ceci sans mettre le feu à une machine virtuelle. – cHao
@cHao: quel est le problème avec ça? Je pense que c'est une excellente façon de comprendre les internes d'un CPU et aussi très intéressant. Inutile, peut-être, mais intéressant et stimulant :) – BlackBear
@BlackBear: Oh, je n'ai aucun problème avec le langage d'assemblage. J'adore les choses, en fait. :) Mais le code 16 bits va le chemin du dinosaure - ces jours-ci, il est seulement utile pour les chargeurs de démarrage et autres. Et il y a tellement de choses à désapprendre quand quelqu'un s'en rend compte finalement. Ces jours-ci, x86 (32 bits) devrait être la ligne de base. – cHao