AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

ASM mit NASM Problem

Ein Thema von Luckie · begonnen am 9. Okt 2003 · letzter Beitrag vom 10. Okt 2003
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

ASM mit NASM Problem

  Alt 9. Okt 2003, 22:59
So, ich versuche mich gerade an ASM. Dazu hab eich ein Buch für MASM und TASM. Dort steht folgender Code:
Code:
daten segment

meldung   db "Assembler ist geil."
   db "$"

daten   ends

code   segment

   assume cs:code, ds:daten

anfang:   mov ax, daten
   mov ds,ax
   mov dx, offset meldung
   mov ahg,9
   int 21h
   mov ah, 4ch
   int 21h
   
code   ends

   end anfang
Und als Ergebnis habe ich dann das:
Code:
E:\Programmierung\ASM\NASM\nasm-0.98.35-win32>nasm
test.asm:1: error: parser: instruction expected
test.asm:6: error: symbol `daten' redefined
test.asm:6: error: parser: instruction expected
test.asm:8: error: parser: instruction expected
test.asm:10: error: parser: instruction expected
test.asm:14: error: comma or end of line expected
test.asm:20: error: symbol `code' redefined
test.asm:20: error: parser: instruction expected
test.asm:22: error: parser: instruction expected
Wie bekomme ich den Code unter NASM zum Laufen?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: ASM mit NASM Problem

  Alt 9. Okt 2003, 23:22
So habe es etwas verbessern können:
Code:
daten   segment

meldung   db "Assembler ist geil."
   db "$"

ends
   
code
   mov ax,daten
   mov ds,ax
   mov dx,offset meldung
   mov ah,9
   int 21h
   mov ah,4ch
   int 21h
ends
Aber immer noch:
Code:
test.asm:1: error: parser: instruction expect
test.asm:11: error: comma or end of line expe
test.asm:16: error: symbol `ends' redefined
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: ASM mit NASM Problem

  Alt 9. Okt 2003, 23:26
Moin Luckie,

falls Du es nicht haben solltest:

http://nasm.sourceforge.net/documentation.php
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: ASM mit NASM Problem

  Alt 9. Okt 2003, 23:34
Ah, danke für den Link. Ich habe 32 Bit NASM, könnte es daran liefen? Der Code ist wohl für 16 Bit.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: ASM mit NASM Problem

  Alt 9. Okt 2003, 23:45
Moin Luckie,

soweit hatte ich den Code schon, dass an anderer Stelle gemeckert wurde:

Code:
anfang:  mov ax, seg meldung
          mov ds,ax
          mov dx,meldung
          mov ah,9 
          int 21h
          mov ah, 4ch
          int 21h
          ret

meldung  db "Assembler ist geil."
          db "$"
Ich hatte dann allerdings im Moment keine weitere Lust tiefer einzusteigen, um's zum Laufen zu bringen.
Der 16-Bit Nasm bringt übrigens den gleichen Fehler. Die mögen offensichtlich die Segmente nicht
Da der int 21h ja der DOS Aufruf schlechthin ist, wäre ich wirklich mal neugierig ob das unter Windows überhaupt lauffähig wäre
Ich muss direkt mal wieder meinen guten alten TASM (2.0) rauskramen.
Hast Du mal im Borland Museum nachgesehen, ob's den da gibt?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: ASM mit NASM Problem

  Alt 9. Okt 2003, 23:57
Ich habe mir jetzt mal TASM 5.0 geliehen.
Damit kopiliert er das:
Code:
daten   segment

meldung db "Assembler ist geil."
      db "$"

daten  ends

code   segment

   assume cs:code, ds:daten

anfang:  
   mov ax, daten
   mov ds,ax
   mov dx,offset meldung
   mov ah,9 
   int 21h
   mov ah,4ch
   int 21h
   
code   ends

   end anfang
tasm32 tes.asm test.exe
Aber er gibt nichts aus.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
NicoDE
(Gast)

n/a Beiträge
 
#7

Re: ASM mit NASM Problem

  Alt 10. Okt 2003, 04:09
'mov ax, daten' dürfte das Problem sein, hab mal schnell mit TASM5 getestet...

HelloExe.bat
Code:
;@goto build


data segment
    Hello db "Hello, World!", 0Dh, 0Ah, "$"
data ends

code segment
Start:
    mov    ax, seg Hello
    mov    ds, ax
    mov    dx, offset Hello
    mov    ah, 09h
    int    21h
    mov    ax, 4C00h
    int    21h
code ends

end Start


:build
@echo off
set PATH=P:\BORLAND\TASM5\BIN;%PATH%
tasm /m3 /ml /q /t /w2 /z HelloExe.bat, HelloExe.obj
tlink /c /k /Tde /x HelloExe.obj, Hello.exe
del HelloExe.obj
Hello.exe
pause
HelloCom.bat
Code:
;@goto build


code segment
org 100h
Start:
    mov    ah, 09h
    lea    dx, Hello
    int    21h
    mov    ax, 4C00h
    int    21h
Hello:
    db     "Hello, World!", 0Dh, 0Ah, "$"
code ends

end Start


:build
@echo off
set PATH=P:\BORLAND\TASM5\BIN;%PATH%
tasm /m3 /ml /q /t /w2 /z HelloCom.bat, HelloCom.obj
tlink /c /t /x HelloCom.obj, Hello.com
del HelloCom.obj
Hello.com
pause
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: ASM mit NASM Problem

  Alt 10. Okt 2003, 04:37
HA! Das geht. Jetzt weiß ich schon mal, wie so was generell aufgebaut sein muß. Dank dir. Auf den Meister ist doch immer wieder verlass.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#9

Re: ASM mit NASM Problem

  Alt 10. Okt 2003, 11:18
statt LEA DX,Message musst du LDS DX,Message nehmen.

Gruß Hagen
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#10

Re: ASM mit NASM Problem

  Alt 10. Okt 2003, 12:49
Den zweiten hatte ich gar nicht ausprobiert, weil mich com-Dateien nicht weiter interessieren werden.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz