Ostatnio otrzymalem taka wskazowkę:
Najedź w lewym okienku na nazwę Twojego pliku źródłowego. Prawym przyciskiem myszy i wybierz "Options for ...".
Tam, w zakładce Properties wyłącz "Assemble SRC files" oraz "Generate assembler SRC file".
Jak to jest włączone to program się kompiluje inaczej. W pamięci umieszczane jest wszystko kolejno. Wówczas robisz tak, jak TDV zasugerował. Niestety, żeby robić wstawki asemblerowe musisz mieć te opcje włączone.
Jeżeli te opcje są wyłączone, funkcje umieszczane są w pamięci zgodnie ze zdrowym rozsądkiem.
Marmur99
tymczasem gdy tak robie to w kodzie wynikowym *.hex nic sie nie zmienia:
prosze by mi ktos skompilowal cos takiego tymi dwoma sposobami i pokazal roznice
#include <reg51.h>
void main(void) {
EX0=1;
EA=1;
IT0=1;
while(1);
}
void add(void) interrupt 0 {
P1++;
}
Najedź w lewym okienku na nazwę Twojego pliku źródłowego. Prawym przyciskiem myszy i wybierz "Options for ...".
Tam, w zakładce Properties wyłącz "Assemble SRC files" oraz "Generate assembler SRC file".
Jak to jest włączone to program się kompiluje inaczej. W pamięci umieszczane jest wszystko kolejno. Wówczas robisz tak, jak TDV zasugerował. Niestety, żeby robić wstawki asemblerowe musisz mieć te opcje włączone.
Jeżeli te opcje są wyłączone, funkcje umieszczane są w pamięci zgodnie ze zdrowym rozsądkiem.
Marmur99
tymczasem gdy tak robie to w kodzie wynikowym *.hex nic sie nie zmienia:
prosze by mi ktos skompilowal cos takiego tymi dwoma sposobami i pokazal roznice
#include <reg51.h>
void main(void) {
EX0=1;
EA=1;
IT0=1;
while(1);
}
void add(void) interrupt 0 {
P1++;
}