Einzelnen Beitrag anzeigen

Benutzerbild von Flocke
Flocke

Registriert seit: 9. Jun 2005
Ort: Unna
1.172 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#12

Re: Assembler und Zeiger

  Alt 4. Jan 2006, 14:49
Zitat von mumu:
und was ist damit:

MOV BX,OFFSET Marke
JMP [BX] ;warum muss ich hier JMP BX anstatt JMP [BX] verwenden?!?!?!

Marke:
Weil beides geht!
Code:
jmp BX     ; <-- IP = BX
jmp [BX]   ; <-- IP = [DS:BX]
Die zweite Variante wird z.B. für switch/case-Statements benutzt.

Zitat von opfer.der.genauigkeit:
Hi,

ich habe nur bescheidene ASM-Kenntnisse aber soweit ich weiß, empfiehlt sich der Befehl
lea. Lea ist in die elegantere Variante.

Code:
mov bx, offset Text ---> lea bx, text
LEA ist keine Variante von MOV sondern ein komplett anderer Befehl mit eigenem Opcode. Allerdings übersetzen einige Assembler "LEA BX, Const" mit Konstanten automatisch in "MOV BX, OFFSET Const".
Volker
Besucht meine Garage
Aktuell: RtfLabel 1.3d, PrintToFile 1.4
  Mit Zitat antworten Zitat