Witam, pracuje nad symulatorem dla układu PIC16F84. Do kompilacji kodu (który ma trafić do symulatora) używam MPLAB. Nie mogę jednak zrozumieć czemu taki zapis w kodzie:
Powoduje utworzenie w pliku wyjściowym linijki:
:02400E00FF3F72
Analizując ją mamy tutaj do czynienia z instrukcją 2 bajtową która ma zostać zapisana w adresie 400E. Przecież to jest jakaś bzdura bo układ ten pamięci programu ma tylko 1K. Adres taki dziesiętne oznaczał by potrzebę wystąpienia 16398 komórki pamięci. Czy ktoś może powiedzieć dlaczego pojawia się taka rozbieżność. Nawet jeśli przyjąć że rejestr konfiguracyjny zaczyna się od adresu 2000h i kończy na 3FFFh to liczba 400E jest przesadą.
list p=16F84, r=hex
#include p16f84.inc
__config b'11111111111111
Powoduje utworzenie w pliku wyjściowym linijki:
:02400E00FF3F72
Analizując ją mamy tutaj do czynienia z instrukcją 2 bajtową która ma zostać zapisana w adresie 400E. Przecież to jest jakaś bzdura bo układ ten pamięci programu ma tylko 1K. Adres taki dziesiętne oznaczał by potrzebę wystąpienia 16398 komórki pamięci. Czy ktoś może powiedzieć dlaczego pojawia się taka rozbieżność. Nawet jeśli przyjąć że rejestr konfiguracyjny zaczyna się od adresu 2000h i kończy na 3FFFh to liczba 400E jest przesadą.