mesta | Bonjour.
J'ai un probleme avec les sources dun logiciel. En fait je veux changer le type dune variable pour pouvoir lui affecter une valeur plus grande, mais j'ai un probleme.
Fichier de declaration de variables:
Code :
- sp_adt : word; { averaging }
|
Fichier avec code ASM:
Code :
- procedure get_spi;assembler;
- const qq = 100;
- var n,nn,mm,a,i,j,md,vv,ia,l,ii,bb,i0,zz,aa : integer; fb : byte;
- { In ax 0..N }
- asm
- mov zz, 0ffffh
- mov a, ax ; call get_pb
- mov ax,scan.sp_nx; mov n, ax; mov nn, ax; mov mm, ax
- push sp_adt ; pop in_nmb
- etc .....
|
Quand je declare sp_adt en DOUBLE par exemple, au niveau du push sp_adt il me met l'erreur suivant:
Code :
- Error 155: Invalid combinaison of opcode and operands.
|
Je ne connais pas torp l'assembleur, donc je ne sais pas comment resoudre ce probleme. Quelqu'un aurait une idée ?
ps: a la base c'est du pascal, mais la procedure ou il y a l'erreur est en asm donc j'ai prefere poster ma question ici.
ps2: je compile avec turbo pascal 7 Message édité par mesta le 05-05-2003 à 10:44:11
|