Syntax: Operands: Program Counter:
(i) LDS Rd,k 0 d 31, 0 k 65535 PC PC + 2
32-bit Opcode:
1001
|
000d
|
dddd
|
0000
|
kkkk
|
kkkk
|
kkkk
|
kkkk
|
Status Register (SREG) Boolean Formula:
I T H S V N Z C
Exemplu:
-
lds
|
r2, $FF00
|
; Load r2 with the contents of data space location $FF00
|
add
|
r2, r1
|
; add r1 to r2
|
ST - Store Indirect From Register to data space using Index X
Descriere:
Încarcă indirect un octet dintr-un registru în zona de date.
Adresa locaţiei este data de X (16 biţi) . Accesul la memorie este limitat de segmentul de date curent, de 64Kocteţi. Pentru accesarea altui segment de date cu mai mult de 64Kocteţi, trebuie schimbat RAMPX din domeniul registrelor de I/O.Registrul X rămâne neschimbat sau poate fi post-incrementat sau pre-decrementat.
Aceste caracteristici sunt favorabile în special pentru accesarea tablourilor. De reţinut că doar byte-ul inferior al pointerului X este utilizat iar byte-ul superior al pointerului X , nu este utilizat de această instrucţiune şi poate fi utilizat in alte scopuri. Rezultatul operatiilor de mai jos este nedefinit:
ST X+, r26
ST X+, r27
ST -X, r26
ST -X, r27
Dostları ilə paylaş: |