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