Al escribir un programa de microcontrolador en lenguaje ensamblador, ¿cómo se sabe cuál es el puntero actual de la PC?
El valor del puntero de la PC actual se puede obtener mediante un método determinado. Por ejemplo, si se usa la instrucción LCALL, el proceso realizado por el microcontrolador es: proteger el sitio, empujar la PC actual a la pila y cuando el programa regresa. , aparece la PC protegida De esta manera podemos obtener la PC actual. El procedimiento específico es el siguiente:
.....
LCALL GETPC ; el valor de la PC actual
..........
GETPC:
POP ACC ;Obtener octeto alto de PC
POP B ;Obtener octeto bajo de PC
PUSH B ;Restaurar SP
PUSH ACC ;Restaurar SP
......
RET