We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
/*******************************************/ /*compiler Keil C51 v6.23*/ /*name:main*/ unsigned char xdata temp; unsigned char xdata *p; void func(void); void main(void) { unsigned char xdata i; while(1) { p = &temp; *p = 98; func(); i = *p; } } /******************************************/ /*-------------------------------------- compile following program to assembly program, then link with the main function.ERROR!!! Why and how to chang the assembly program.please help me,thank you.! ------------------------------------------*/ #pragma src(MYPTR.A51) small extern unsigned char xdata *p; void func(void) { *p = 0xdd; } my E-mail:inspra@xjgroup.com name:huangjian
Read the section on pointers in the C51 manual - this tells you how pointer values are actually represented in memory. Then all you need to do is write your assembler accordingly to use those values!