albundy
16.02.2005, 18:33
Hallo,
ich will mittels einer Variablen einen Pointer über die 256 Byte Grenze verschieben.
ldi r16,3 ;über die Variable in r16 soll der Pointer auf Text1,2 oder 3 zeigen
ldi Zh,High(Text?*2)
ldi Zl,Low(Text?*2)
Lpm r17,Z+
out Porta,r17
Text1: .db 0,0,0,0,... ;144 Byte
Text2: .db 0,0,0,0,... ;144 Byte
Text3: .db 0,0,0,0,... ;144 Byte
------------------------------------------------------------------
in Bascom würde ich einfach schreiben:
Restore Text1,2 oder 3 ->und damit ist der Pointer gesetzt
Read Wert
Porta=Wert
Aber wie geht das in Assembler ?
Kann mir einer helfen ? 8-[
ich will mittels einer Variablen einen Pointer über die 256 Byte Grenze verschieben.
ldi r16,3 ;über die Variable in r16 soll der Pointer auf Text1,2 oder 3 zeigen
ldi Zh,High(Text?*2)
ldi Zl,Low(Text?*2)
Lpm r17,Z+
out Porta,r17
Text1: .db 0,0,0,0,... ;144 Byte
Text2: .db 0,0,0,0,... ;144 Byte
Text3: .db 0,0,0,0,... ;144 Byte
------------------------------------------------------------------
in Bascom würde ich einfach schreiben:
Restore Text1,2 oder 3 ->und damit ist der Pointer gesetzt
Read Wert
Porta=Wert
Aber wie geht das in Assembler ?
Kann mir einer helfen ? 8-[