2016-04-23 4 views
4

Ich möchte einen Beispiel-Inline-Embedded-Assembly-Code in parasoft C++ Test-Software zu kompilieren und zu testen.
parasoft C++ test - kompilieren Inline-Assembly-Code in

Quellcode:

#include <stdio.h> 
void example() { int arg1, arg2, add, sub, mul, quo, rem ; 

printf("Enter two integer numbers : "); 
scanf("%d%d", &arg1, &arg2); 


__asm__ ("addl %%ebx, %%eax;" : "=a" (add) : "a" (arg1) , "b" (arg2)); 
__asm__ ("subl %%ebx, %%eax;" : "=a" (sub) : "a" (arg1) , "b" (arg2)); 
__asm__ ("imull %%ebx, %%eax;" : "=a" (mul) : "a" (arg1) , "b" (arg2)); 

__asm__ ("movl $0x0, %%edx;" 
      "movl %2, %%eax;" 
      "movl %3, %%ebx;" 
      "idivl %%ebx;" : "=a" (quo), "=d" (rem) : "g" (arg1), "g" (arg2)); 

printf("%d + %d = %d\n", arg1, arg2, add); 
printf("%d - %d = %d\n", arg1, arg2, sub); 
printf("%d * %d = %d\n", arg1, arg2, mul); 
printf("%d/%d = %d\n", arg1, arg2, quo); 
printf("%d %% %d = %d\n", arg1, arg2, rem); 


} 

Der Code hat Fehler. Der Fehler für jedes Wort lautet:

The word 'ebx' is not correctly spelled. 

was soll ich tun?

+1

Geben Sie den Code bitte nicht das Snippet Ihres Bildschirms – sjsam

+0

@sjsam der Quellcode hinzugefügt –

+0

Danke, ich habe gerade die Frage bearbeitet, um das redundante Diagramm zu entfernen .. Jetzt sind die Dinge klarer. – sjsam

Antwort

0

Wahrscheinlich ist dies kein Fehler, der von Parasoft C++ test als solcher erkannt wird, sondern eher ein Hinweis, den Sie von Eclipse CDT IDE (Code-Editor) bekommen. Wahrscheinlich verwenden Sie Parasoft C++ Test als Eclipse-Plugin.