Einzelnen Beitrag anzeigen

mumu

Registriert seit: 28. Okt 2003
Ort: Bamberg
519 Beiträge
 
#1

Assembler, was bedeutet $

  Alt 4. Jan 2006, 12:38
Code:
.DATA;----------------------------------------------------------
  ; ( 1 )
  MiniArray EQU $
  ; ( 2 )
  ORG $ + 32               ;reserviert 32 Byte
  ; ( 3 )
  i    DW              ? ;kriegt ein Alias-Symbol:
  iLow EQU           $-2 ;...:für das 1.Byte
        ;                 ;... und ein eigenes Symbol
  iHigh EQU           $-1 ;...:für das 2.Byte
  DsDatenPointer DW OFFSET DsDatenPointer ;Zeigt auf sich selbst!
.CODE;----------------------------------------------------------
  ; ( 4 )
  ;Indizierter Zugriff auf das 3.Byte von MiniArray
  MOV DI,2;
  MOV BYTE PTR (MiniArray+DI),Do      ; Bei Do handelt es sich um ein EQU: Do EQU '$'
  ;MOV BYTE PTR (MiniArray+2),36
 
  ; ( 5 )
  ;Indirekter Wort-Zugriff mit Indizierung (auf "iLow" bzw "i")
  MOV DI,2
  MOV BX,DsDatenPointer ; zeigt auf sich selbst => wirkt wie MOV BX,OFFSET DsDatenPointer
  MOV WORD PTR [BX-DI],5
also hier hab ich noch ein paar fragen:
zu ( 1 ):
was bedeutet dieses $ und was mache ich mit MiniArray EQU $???
zu ( 2 ):
was macht ORG $ + 32
zu ( 3 ):
definiere ich hier ein Word (also 2 bytes) und iLow zeigt aufs erste Byte von i und iHigh aufs zweite Byte.
Was macht in diesem Fall $ genau?!
zu ( 4 ):
was passiert hier? versteh ich irgendwie überhaupt nicht? BYTE PTR?
zu ( 5 ):
was passiert hier?

wär klasse wenn mir jemand ein paar Fragen möglichst ausführlich erklären würde.

Vielen Dank schonmal
  Mit Zitat antworten Zitat