entonces no entiendo cómo asigna el PORTA con su dirección de memoria. Alguien sabe cómo funciona?
un saludo.
La respuesta que buscas no es tan obvia como parece y está en 2 archivos.
1) En el pxxx.h que acabas de ver
2) En el .asm que está en \src\traditional\proc\pxxx.asm
El funcionamiento es el siguiente
En el asm, se define la ubicación real de los registros y se declaran como GLOBAL
En el .h , si observas con detenimiento, son estructuras que apuntan a registros externos , son todos 'extern' es decir que le indica al linker que esos archivos provienen de otro lado
Por último ambos archivos se arman en una librería pxxx.lib por eso que no los necesitas incluir en el proyecto aunque sí en el código. El compilador al tener el path de la carpeta lib hace el resto, por el uso del pic como
#include
<pxxx.h
>Donde el mayor y menor indican que el archivo está en el path por default del compilador.
Espero se te haya aclarado el panorama.