在目前的HI-TECH PICC中BANK0.....BANK3这样的声明在默认凊况下已经不起作用,编译器会根据RAM的使用情况尽量把变量全部安排在BANK0我看了半天的用户手册测试也没有找到绝对定位的方法,相反使用全局变量 unsigned long int A @ 0x70 这样的绝对定位却是非常有效的。以前的C教材中警告说这样的绝对定位编译器有可能不保留空间转而会将其空间分配给其怹变量,但目前还没发现编译器这样做相反,如果0X70以前被别的变量占用将0X70绝对定位后,原来占用该地址的变量被分配到其他空间
这種绝对定位适用于多字节变量、数组、结构等多种形式,所定义的地址为数组或结构的第一字节地址例如在下列声明中:union CHUFA{struct{ unsigned char