MASM 32 Anfängerproblem

Offizieller deutscher Support für das MASM32 SDK. Download FAQ

Moderatoren: crack, Krüsty, Marwin

Brotmafia

MASM 32 Anfängerproblem

Beitrag von Brotmafia » Freitag 8. Dezember 2006, 21:13

Guten Tag, ich habe mir ein Assembler Buch gekauft. Ich habe nun die ersten Programme geschrieben. Hier der Quelltext und die Fehlermeldung:

Code: Alles auswählen

.MODEL SMALL
.CODE

MOV AH,08H
INT 21H
MOV DL,AL
MOV AH,02H
INT 21H
MOV AH,4CH
INT 21H
END
Fehlermeldung:

Code: Alles auswählen

 Assembling: C:\Dokumente.asm
MASM : fatal error A1000: cannot open file : C:\Dokumente.asm
 Volume in Laufwerk C: hat keine Bezeichnung.
 Volumeseriennummer: E097-9490

 Verzeichnis von C:\

Nunja, warum brauch der die Dokumente.asm???

Ich nutze den qeditor!

mfg
Brotmafia

Benutzeravatar
crack
Administrator
Beiträge: 280
Registriert: Dienstag 21. Dezember 2004, 15:02
Wohnort: 53783 Eitorf
Kontaktdaten:

Beitrag von crack » Samstag 9. Dezember 2006, 18:32

Du musst deinem Testprogramm einen Namen geben, wenn dein PRG Quellcode fertig ist klickst Du auf 'Save File as...' und gibts der Datei einen Namen z.B. 'MyTest.asm'. Danacgh kannst Du es mit 'Asseble&Link' oder mit 'Console assemble& Link' compilieren und linken, danach ist das Programm fertig. In dem Fall (model tiny) müsste es: 'mytest.com' heissen (oder 'MyTest.com')
mit freundlichen grüssen,
with best regards,

crack

Brotmafia

Beitrag von Brotmafia » Samstag 9. Dezember 2006, 21:09

Ok, dankeschön

Brotmafia

Beitrag von Brotmafia » Samstag 9. Dezember 2006, 21:12

Geht trotzdem net

CDW
Alter Hase
Beiträge: 62
Registriert: Donnerstag 2. Oktober 2003, 17:17
Kontaktdaten:

Beitrag von CDW » Samstag 9. Dezember 2006, 23:51

Geht trotzdem net
Dieselbe Fehlermeldung?
ansonsten: MASM ist eigentlich ein 32-Bit Packet,
für 16-Bit Programme, wie Du sie schreiben willst, musst Du einen 16-bit Linker nutzen:
http://board.codingcrew.de/viewtopic.ph ... ight=16bit

Brotmafia

Beitrag von Brotmafia » Sonntag 10. Dezember 2006, 15:11

Warum schreibe ich ein 16bit programm? Davon steht nichts in meinem Buch, sorry bin ein newbie.

Benutzeravatar
crack
Administrator
Beiträge: 280
Registriert: Dienstag 21. Dezember 2004, 15:02
Wohnort: 53783 Eitorf
Kontaktdaten:

Beitrag von crack » Sonntag 10. Dezember 2006, 15:18

Brotmafia hat geschrieben:Warum schreibe ich ein 16bit programm? Davon steht nichts in meinem Buch, sorry bin ein newbie.
wegen der Anweisung:

.model small

Das gibt dann ein 16Bit Programm
mit freundlichen grüssen,
with best regards,

crack

Brotmafia

Beitrag von Brotmafia » Sonntag 10. Dezember 2006, 16:26

und wie ein 32bit programm?

Benutzeravatar
crack
Administrator
Beiträge: 280
Registriert: Dienstag 21. Dezember 2004, 15:02
Wohnort: 53783 Eitorf
Kontaktdaten:

Beitrag von crack » Sonntag 10. Dezember 2006, 16:29

für ein 32Bit Programm:

Code: Alles auswählen

.386
.model flat
Hier im Forum dürftest du einige sehr nützliche Hinweise zum Thema finden.
mit freundlichen grüssen,
with best regards,

crack

Brotmafia

Beitrag von Brotmafia » Montag 11. Dezember 2006, 00:54

Also etwa so?

Code: Alles auswählen

.386 
.MODEL FLAT
.CODE 

MOV AH,08H 
INT 21H 
MOV DL,AL 
MOV AH,02H 
INT 21H 
MOV AH,4CH 
INT 21H 
END

Benutzeravatar
crack
Administrator
Beiträge: 280
Registriert: Dienstag 21. Dezember 2004, 15:02
Wohnort: 53783 Eitorf
Kontaktdaten:

Beitrag von crack » Montag 11. Dezember 2006, 18:26

Ja, etwa so, allerdings kannst bzw solltest Du bei Win32 Prg's nicht die INT 21h Aufrufe verwenden, sondern Prozeduren der Windows API. Hier im Forum findest Du einige Beiträge von 'Darthshoot' in denen diese Sachverhalte angeschnitten werden. BTW. was für ein Assembler Lehrbuch benutzt Du denn?
mit freundlichen grüssen,
with best regards,

crack

Brotmafia

Beitrag von Brotmafia » Mittwoch 13. Dezember 2006, 17:48

Von Franzis die Studienausgabe

c.m.obrecht
Newbie
Beiträge: 4
Registriert: Montag 5. März 2007, 13:45
Kontaktdaten:

Beitrag von c.m.obrecht » Montag 5. März 2007, 13:48

...das habe ich auch. Behandelt nur DOS/16bit-Programme. Ich habe dazu den Assembler welcher bei der Buch-CD dabei war verwendet. Für Win32/MASM32 habe ich ein anderes Buch über amazon bestellt; ist dort recht einfach zu finden (Windows-Programmierung ist auf dem Titel vermerkt). Die WinAPI braucht aber viiel Einarbeitungszeit

PeregrineFalcon
Newbie
Beiträge: 3
Registriert: Donnerstag 8. November 2007, 21:53
Wohnort: Niedersachsen/Emden
Kontaktdaten:

Beitrag von PeregrineFalcon » Donnerstag 8. November 2007, 22:19

Ersma 'Hallo' ans Forum!!!!

Studienbedingt habe ich nach der Programmierung in C mit der Assembler - Programmierung begonnen.

Ich habe gestern den MASM32 installiert und bin eigentlich positiv überrascht ......... aaaber:

1. PROBLEM
--------------------------
-wenn ich mit dem QEDITOR meinen Quellcode erstelle und den dann abspeichern will (save as ... und name), dann fehlt die extension (xy.asm).
Ich bekomme beim assemblieren dann eine meines Vorgängers entsprechende Fehlermeldung "FATAL ERROR .... xy. asm couldnt be found" ...

...was aufgrund der fehlenden extension wohl auch kein wunder ist!

Frage: Stimmt es, das ich manuell ".asm" hinter den Namen setzen muss?

Ich bin davon ausgegangen, dass dies automatisch geschieht!



2. PROBLEM
--------------------------
Will ich den Quellcode aus dem QEditor heraus drucken, dann erscheint zwar eine entsprechende Seitenansicht, wo ich entweder den Druck bestätigen, den Code nochmals ändern oder meinen Drucker konfigurieren kann.

Ein Klick auf "PRINT" hat aber keinerlei Auswirkungen - mein Drucker tut gar nichts, ist aber vollkommen funktionsfähig, wenn ich mit anderen Anwendungen auf ihn zugreife!


Würde mich freuen, wenn mir da ma jemand von euch helfen könnte. Ich kann diese Umstände neben der Büffelei nämlich gar nicht gebrauchen.

Liebe Grüße

Peregrine

Benutzeravatar
crack
Administrator
Beiträge: 280
Registriert: Dienstag 21. Dezember 2004, 15:02
Wohnort: 53783 Eitorf
Kontaktdaten:

Beitrag von crack » Donnerstag 15. November 2007, 04:26

Zum Problem Nr.1 muss Ich sagen das deine Beobachtung richtig ist, allerdings sehe Ich darin sogesehen kein grosses Problem, Du kannst den MASM auch so konfigurieren das er das .asm automatisch hinzufügt:
  • Rufe den Qeditor auf
  • klicke auf 'edit'
  • wähle im Menu 'edit settings'
  • ändere in der Box links oben 'File Patterns' das Pattern unter 'Save' von *.* auf *.asm
dann ist die 'Default File Extension' fürs abspeichern: dateiname.asm

Problem Nr.2 muss Ich erstmal selber testen.

[EDIT: Layout verbessert]
mit freundlichen grüssen,
with best regards,

crack

Antworten