Ho così creato la cartella "Assembly" in C:\
C:\Users\Antonello>cd..\..\ C:\>cd assembly C:\Assembly>dir Il volume nell'unità C non ha etichetta. Numero di serie del volume: ECE6-4560 Directory di C:\Assembly 19/09/2013 01.31 <DIR> . 19/09/2013 01.31 <DIR> .. 28/06/2006 14.30 134.144 LIB.EXE 28/06/2006 14.30 364.544 LINK.EXE 15/09/2013 18.42 7.916 MASM_1.COM 15/09/2013 18.42 4.106 MASM_IN1.COM 15/09/2013 18.42 9.687 ML.ERR 15/09/2013 18.42 372.736 ML.EXE 15/09/2013 18.42 38.202 NG.EXE 7 File 931.335 byte 2 Directory 18.526.797.824 byte disponibili C:\Assembly>Ora vediamo di farci qualcosina...
Non sapendo usare ML come linker, ci avevo messo un vecchio linker. Compilo sul blocco note (non ho copiato QEditor) la parte fondamentale del primo esercizio della Palestra Apprendisti (roba elementare):
prog segment byte public inizio: mov ah,00h mov al,03h int 10h mov ah,0eh mov al,'A' int 10h mov ah,00h int 16h mov ah,4ch int 21h prog ends end inizioe quindi sottopongo il sorgente al processo di assemblaggio e linkaggio...
C:\Assembly>ml /Zm /c esa1.asm Microsoft (R) Macro Assembler Version 6.14.8444 Copyright (C) Microsoft Corp 1981-1997. All rights reserved. Assembling: esa1.asm C:\Assembly>link esa1 Microsoft (R) Segmented Executable Linker Version 5.60.339 Dec 5 1994 Copyright (C) Microsoft Corp 1984-1993. All rights reserved. Run File [esa1.exe]: List File [nul.map]: Libraries [.lib]: Definitions File [nul.def]: LINK : warning L4021: no stack segment C:\Assembly>dir esa* Il volume nell'unità C non ha etichetta. Numero di serie del volume: ECE6-4560 Directory di C:\Assembly 19/09/2013 01.41 181 esa1.asm 19/09/2013 01.41 532 esa1.exe 19/09/2013 01.41 69 esa1.obj 3 File 782 byte 0 Directory 18.052.173.824 byte disponibili C:\Assembly>Perfetto!
Eseguiamo...
A C:\Assembly>Okay! Fantastico!
Nessun commento:
Posta un commento