你用一个数组变量(也就是开辟一个接收缓冲区)就OK了如:#include#define uchar unsigned charuchar buf[16],num;void ser_isr() interrupt 4{if(RI){RI=0;buf[num]=SBUF;num++;num&=0x0f;}}main(){TMOD=0x20;SCON=0x50;TH1=TL1=0xfd;TR1=1;ES=1;EA=1;while(1);}