| 下面的fe_add(fe h,fe f,fe g)本来是汇编写的,因为需要移植到stm32里,2个片子寄存器结构不一样,怕改错,因此想改成c.
 能否请看下这样改是否可以?
 
 typedef unsigned int fe[16];
 
 fe x1;
 fe x2;
 fe z2;
 
 void fe_add(fe h,fe f,fe g); //->见下面汇编
 
 //是否能改成下面c函数
 void fe_add(unsigned int *h,unsigned int *f,unsigned int *g)
 {
 u8 i;
 for(i=0;i<16;i++)
 {
 h[i]=g[i]+f[i];
 }
 }
 
 
 //汇编
 ; h = g + f
 ; R12 holds pointer to h
 ; R13 holds pointer to f
 ; R14 holds pointer to g
 
 mov         30(R14),R15
 add         30(R13),R15
 clr         R11
 adc         R11
 
 rla         R15
 rlc         R11
 clrc
 rrc         R15
 mov         R15,30(R12)
 
 mov         R11,&MPY
 mov         #19,&OP2
 
 mov         @R14+,R11
 add         @R13+,R11
 clr         R15
 adc         R15
 add         &RESLO,R11
 mov         R11,0(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,2(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,4(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,6(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,8(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,10(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,12(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,14(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,16(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,18(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,20(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,22(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,24(R12)
 
 addc        @R14+,R15
 clr         R11
 adc         R11
 add         @R13+,R15
 mov         R15,26(R12)
 
 addc        @R14+,R11
 clr         R15
 adc         R15
 add         @R13+,R11
 mov         R11,28(R12)
 
 addc        R15,30(R12)
 
 pop.w       R11
 eint
 reta
 
 END
 
 
 
 |