C 8051中外部中断的素数例程

C 8051中外部中断的素数例程,c,interrupt,8051,C,Interrupt,8051,我使用Keil C51为8051编写了一个中断例程,如下所示: void intrupt1(void) interrupt 2 // ext interrupt 1 vector { char i,j,prime; P2 = 0; for(i=2;i<128;i++) { prime = 1; for(j=2;j<i;j++) { if(i%j==0)

我使用Keil C51为8051编写了一个中断例程,如下所示:

void intrupt1(void) interrupt 2        // ext interrupt 1 vector
{   
    char i,j,prime;
    P2 = 0;
    for(i=2;i<128;i++)
    {
        prime = 1;
        for(j=2;j<i;j++)
        {
            if(i%j==0)
                prime = 0;
        }
        if(prime == 1)
        {
            P2 = i;
            delay2();
        }
    }
    P2 = 0;
}
void intrupt1(void)中断2//ext中断1向量
{   
chari,j,素数;
P2=0;

for(i=2;i最有可能
char
在编译器中被签名(C标准允许
char
被签名或未签名),其范围为-128到127。此范围内的任何值都小于128。因此,循环条件始终为真,因此循环是无限的