Einzelnen Beitrag anzeigen
Alt 05.02.2002, 19:36   #1
detonation997
Senior Member
 
Registriert seit: 07.07.2001
Beiträge: 197


detonation997 eine Nachricht über ICQ schicken
Standard Assembler in C++

Ich muss für die Schule ein "Chat-Programm" schreiben. Die "Daten" werden über die Serielle Schnittstelle transportiert.

Mein Problem:

Ich möchte dem Benutzer Eingabe der I/O-Adresse ersparen. Das heißt, ich will mittels Assembler von der Adresse 0040:0000 das Word lesen, da steht die I/O-Adresse ja drin.

Mein Vorschlag wäre:

asm{
mov ax,40
mov ds,ax
mov bx,0
mov cx,[bx]
mov io,cx
}

io ist eine bereits initialisierte Integervariable. Mit der will ich dann weiter arbeiten. Die Zeile

mov ds,ax

macht Probleme; da hängt sich das ganze so ziemlich auf. Wisst ihr woran das liegt? Wenn ich das Datensegment (ds) durch das Extrasegment (es) ersetze, stürtzt er zumindest nicht ab (funktionieren tuts natürlich nicht...)

Danke schon im Voraus
detonation997 ist offline   Mit Zitat antworten