AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Wert einer Variablen in ASM ausgeben, String zusammensetzen
Thema durchsuchen
Ansicht
Themen-Optionen

Wert einer Variablen in ASM ausgeben, String zusammensetzen

Ein Thema von Luckie · begonnen am 10. Okt 2003 · letzter Beitrag vom 11. Okt 2003
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Luckie
Luckie

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

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 14:46
Das habe ich mir aus Code gebastelt, welcher eine Zeichenkette byteweise kopieren soll.
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
 
#12

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 15:36
Moin Luckie,

Du hast vor Loop nirgends ECX initialisiert, und somit hat die Schleife eine unbestimmte Anzahl von Durchläufen.

Code:
lodsb
stosb
kannst Du durch

Code:
movsb
bzw. die ganze Schleife durch

Zitat:
rep movsb
austauschen.
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
 
#13

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 19:10
Und wie sähe dass dann aus?
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
 
#14

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 20:44
Moin Luckie,

cih würde mal sagen so:

Code:
data segment
  dummy  DW 512 dup ($)
data ends


code segment
Start:
  mov  ax, 5 
  add  ax, 2 

  lea  si, ax
  lea  di, dx
  mov  ecx,strlen ; strlen = Länge die kopiert werden soll
  rep  movsb
  mov  dummy, ax
  mov  dx, offset dummy
  mov   ah, 9h
  int  21h
  mov  ax, 4C00h
  int  21h
code ends

end Start
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
 
#15

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 21:59
Leider auch nicht:
Code:
  lea  si, ax
**Error** build.bat(14) Illegal immediate
  lea  di, dx
**Error** build.bat(15) Illegal immediate
  mov  ex, 10 ; strlen = Lõnge die kopiert werden soll
**Error** build.bat(16) Undefined symbol: ex
  mov  ex, 10 ; strlen = Lõnge die kopiert werden soll
*Warning* build.bat(16) Argument needs type override
  mov  dummy, ax
**Error** build.bat(18) Can't address with currently ASSUMEd segment registers
Verdammt, das kann doch nicht so schwer sein den Inhalt eines Registers auf dem Monitor auszugeben. In meinem Assemblerbuch stehen wunbderbare Beispile zu allen Grzundrechenarten usw. drin, nur leider unvollständige Code Schnipppsel - die haben sich immer um die Ausgabe gedrückt.

Hier http://www.c-plusplus.de/forum/viewt...=370126#370126 habe ich von jemanden Code bekommen, ich muß nur noch rausfinden, wie ich den einzubinden habe.
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
 
#16

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 23:06
Moin Luckie,

sorry, ich dachte es ging Dir nur um die Schleife:
Du kannst auch mal versuchen, ob's ohne die e's vor den Registerbezeichnungen geht, mit sind's halt die ganzen 32 Bit


Code:
data segment
  dummy  DW 512 dup ($)
data ends


code segment
Start:
  mov  eax, 5 
  add  eax, 2 

  lea  esi,[eax]
  lea  edi,[edx]
  mov  ecx,10 ; strlen = Länge die kopiert werden soll
  rep  movsb
  mov  dx, offset dummy
  mov  ah, 9h
  int  21h
  mov  ax, 4C00h
  int  21h
code ends

end Start
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
 
#17

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 23:23
Wie viele Enttäuschungen haltet ihr noch aus?
Code:
data segment
  dummy  DW 512 dup ($)
data ends


code segment
Start:
  mov  ax, 5 
  add  ax, 2 

  lea  si,[ax]
  lea  di,[dx]
  mov  cx,10 ; strlen = Länge die kopiert werden soll
  rep  movsb
  mov  dx, offset dummy
  mov  ah, 9h
  int  21h
  mov  ax, 4C00h
  int  21h
code ends

end Start
lea si,ax
**Error** build.bat(14) Illegal immediate
lea di,dx
**Error** build.bat(15) Illegal immediate

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
 
#18

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 23:24
Moin Luckie,

Zitat von Luckie:
Verdammt, das kann doch nicht so schwer sein den Inhalt eines Registers auf dem Monitor auszugeben.
In welcher Form willst Du es denn darstellen? Binär, Hex, Dezimal? Byte, Word, Dword?
Oder soll das Register (in Deinem Falle wohl ax) einen darstellbaren Inhalt haben?
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
 
#19

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

  Alt 10. Okt 2003, 23:25
Nun ja, ich rechne ja 5+2 und es wäre schön wenn da dann 7 stünde.
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
 
#20

Re: Wert einer Variablen in ASM ausgeben, String zusammenset

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

Code:
lea si,ax
Code:
lea si,[color=red][[/color]ax[color=red]][/color]
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
Antwort Antwort
Seite 2 von 3     12 3      


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:51 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