INICIO WEB

        

Instrucción: STD

    

123.gif (858 bytes)

              
Función: Guardar indirectamente con desplazamiento
                               
Sintaxis: STD Y+q, Rr
          

123.gif (858 bytes)

          

Código de Operación de 16 bit

                   

10q0

qq1r rrrr 1qqq
                    
                     
Operación: (Y+q) Ü Rr
                
Operandos: 0 £ r £ 31, 0 £ q £ 63
                        
Words: 1 (2 bytes)
                 
Ciclos: 2
                       
Flags: Ninguno
          
Program Counter: PC Ü PC + 1
  

Descripción: ST guarda un byte indirecto con desplazamiento de un registro en el espacio de datos. Para los dispositivos con SRAM, el espacio de datos se compone del archivo de registro, memoria de I/O y SRAM interna (y SRAM externa si es aplicable). Para las dispositivos sin SRAM, el espacio de datos se compone sólo del archivo de registro. La EEPROM tiene un espacio de direcciones separado.

La posición de los datos es apuntada por el registro puntero Y (16 bits) en el archivo de registro. Se limita el acceso de memoria al segmento de datos de 64K bytes. Para acceder a otro segmento de datos en dispositivos con más de 64K bytes de espacio de datos, el RAMPY en el área de I/O tiene que ser cambiado.

 

Ejemplo:

 

CLR r29

; Borrar el byte alto de Y

LDI r28,$60

; Poner el byte bajo de Y a $60

ST Y+,r0

; Guardar r0 en la posición del espacio de datos $60
            ; (Y post-increentado)

ST Y,r1

; Guardar r1 en la posición del espacio de datos $61

LDI r28,$63

; Poner el byte bajo de Y a $63

ST Y,r2

; Guardar r2 en la posición del espacio de datos $63

ST -Y,r3

; Guardar r3 en la posición del espacio de datos $62
           ; (Y pre-decrementado)
STD Y+2,r4 ; Guardar r4 en la posición del espacio de datos $64
            
                                         

ARRIBA