Anfängerproblem.
-
Hallo,
so ich habe mir heute die Assembler-FAQ durchgelesen, habe mir TASM herunter-
geladen(natürlich ohne Linker den mußte ich mir extra besorgen), habe alles
in ein Verzeichnis kopiert und mir danach ein hier empfohlenes Tutorial
besorgt.
Danach habe ich aus dem Tutorial folgendes Programm abgetippt und gespeichert.
Dann habe ich im Dos-Fenster "tasm first.asm" eingegeben und als
Ausgabe bekam ich:tasm: Number of errors = 19
Könnt mir bitte jemand helfen, und mir sagen was nicht stimmt?
TITLE Das erste Programm ;Diese Zeile ist optional IDEAL ;IDEAL-Modus einschalten MODEL SMALL ;Speichermodell STACK 100 ;100 Bytes fr den Stack DATASEG ;Beginn des Datensegments derText db 'Das erste Programm$' ;1. CODESEG ;Beginn des Codesegments start: ;2. STARTUPCODE mov ah, 009h ;3. mov dx, OFFSET derText ;4. int 21h ;5. EXITCODE END start ;6.
Grüße,
Tutorialfresser
-
Ich bin mir nicht ganz sicher was einige Zeilen bedeuten sollen.
IDEAL ;IDEAL-Modus einschalten MODEL SMALL ;Speichermodell
Was möchtest Du damit erreichen?
mov ah, 009h ;3.
AH ist doch ein 16 Bit Register?
mov dx, OFFSET derText ;4.
Was möchtest Du hier mit OFFSET erreichen?
int 21h ;5.
Interrupt 21h ?
-
@TutorialFresser:
Ich kann keine Fehler erkennen und bei mir assembliert der Code auch ohne Probleme. Welche eigenartige Version von TASM benutzt du denn und welche 19 Fehler werden denn nun genau angezteigt?analyzer schrieb:
Was möchtest Du damit erreichen?
Die 1. Zeilen schalten den TASM IDEAL-Modus ein (die eigentliche TASM-Syntax IMO) und die 2. erstellt aus dem Gewurstel da AFAIR ein Programm wo wie bei einer .com-Datei alles in ein Segment gepackt wird.
analyzer schrieb:
AH ist doch ein 16 Bit Register?
1. ah hat 8bit und 2. würde es an genau dieser Stelle keinen Unterschied machen.
analyzer schrieb:
Was möchtest Du hier mit OFFSET erreichen?
Ist doch eigentlich intuitiv ganz gut zu erraten: Hier wird das Offset des Labels "derText" nach dx geholt.
Das ist die TASM-Syntax.analyzer schrieb:
Interrupt 21h ?
Ja. Und?
-
Hallo,
Nobuo T schrieb:
Welche eigenartige Version von TASM benutzt du denn
http://www.roboternetz.de/phpBB2/dload.php?action=file&file_id=1
dort habe ich es mir runtergeladen, den Linker habe ich von einem Hinweis
im Assamler-FAQ von c-plusplus.net aber ich weis nicht mehr wo das war.analyzer schrieb:
Was möchtest Du damit erreichen?
Code:
mov ah, 009h ;3.Woher um Himmelswillen soll ich denn das wissen!
Ich habe nicht die gringste Ahnung von ASM aber ich will
es gerade lenen, und dann sag ich es Dir versprochen!Grüße,
Tutorialfresser
-
Das, was du dir da runtergeladen hast, sieht nach einem Assembler fuer Microcontroller aus.
Dein BeispielCode ist wohl eher fuer den TurboAssembler von Borland (ein Assembler fuer x86-CPU) gedacht. Der ist AFAIK auch freeware, aber Borland ist sich zu fein, das Ding zum Download anzubieten. => bemuehe nochmal google.Hm, vielleicht werde ich bei gelegenheit nochmal den Borland-Support zu der Sache befragen ...
-
Hallo,
gut zu wissen.
Vielen Dank!Grüße,
Tutorialfresser