strin ausgeben
-
Hallo ich wollte einen Strin ausgeben die funzt auch soweit ziemlich gut, nur habe ich davor immer noch irgendwelche Wahllosen sonderzeichen. Wäre cool wenn jemand helfen könnte.
.model tiny .code .stack 100h START: mov ah, 09h mov dx, offset string INT 21h mov ah,4ch INT 21h string db 'text',10d,13d,'$' END START
-
Hi.
Versuch' mal
START: mov ax, cs mov ds, ax mov ah, 09h mov dx, offset string INT 21h
, um ds auf das Codesegment zu setzen.
-
Hi vielen dank erstmal, Funktioniert super
was ich nur nicht so recht verstehe ist was folgende Zeilen bedeuten.mov ax, cs mov ds, ax
-
Im Speichermodel "tiny", welches du verwendest, liegen Daten, Stack und Code in einem Segment.
In genannten 2 Zeilen wird der Inhalt des Segmentregisters CS (CodeSegment) zuerst in das Register AX und von AX dann in das Segmentregister DS kopiert.
Damit zeigt DS dann also auf das selbe Speichersegment wie CS und beim Funktionsaufruf von int 21h kann so mit DS:DX der Text korrekt adressiert werden.
-
Ahh, super erklärung Danke.