При компиляции пректа возникает ошибка undefined symbol asmproc (int near*, int, int) in module lab_mas.c Подскажите, как её исправить? Вот код | Код | #include <stdio.h> #include <stdlib.h>
//extern "C" void ASMPROC (int *,int,int);
main() { // extern void _ASMPROC (int *,int,int); int *m; //ukazatel' na massiv int r; //razmer massiva int i; //schetchik FOR dlya vvoda elementov massiva int l; //peremennaya dlya vuchislennoy summu
printf ("\n Vvedite razmer massiva: "); //zaprashivaem razemer scanf ("%d",&r); //vvod razmera
m=(int*)malloc(r*sizeof(int)); //vudelenie pamyati pod massiv
printf ("\n Vvedite elementu massiva: "); //zaprashivaem elementu massiva
for (i=0;i<r;i++) //vvod elementov { printf ("\n a[%d]=",i+1); scanf ("%d",&m[i]); };
ASMPROC(m,r,l);
printf ("\n Summa ravna %d",l);
getchar(); getchar(); return 0; }
|
и для ассемблеровского файла
| Код | .model small .code _ASMPROC proc C near ARG am:ptr, ar:word, asum:word public _ASMPROC push si push cx push bx pushf
mov si,[am] ;SI-smeshenie massiva xor bx,bx ;obnulyaem BX
met_cikl: ;nachalo cikla dlya vuchisleniya summu lodsw ;AX=znachenie ocherednogo elementa massiva mov bx,ax cmp ax,bx je m1 jb m2 m1: cmp bx,20 jb m2 je m3 m2: mov ax,bx mov l,ax m3: inc si cmp si,ar ;sravnivaem znachenie SI i razmer massiva jbe met_cikl ;esli znachenie SI men'she razmera massiva, to cikl snova nachnet ispolnyat'sya popf pop bx pop cx pop si ret _ASMPROC endp ends end
|
|