Zum Inhalt springen

Perfiliev

Mitglieder
  • Gesamte Inhalte

    13
  • Benutzer seit

  • Letzter Besuch

  1. Hallo Jens, wenn ich später Zeit habe, versuche ich helfen mfg Sergey
  2. Hallo Jens, pcode.pas PCODE.7z ñêà ÷à òü ñ Ôà éëû@Mail.Ru var1 = 10 var2 = 1 if var1 = var2 showmessage("ist 5") elseif var1 = var2 showmessage("ist nicht 5") endif asm code: BITS 32 cpu 486 extern _exit, _show_message extern _set_vergleichswert_A1, _set_vergleichswert_A2, _set_vergleichswert_bychar extern _vergleiche_cmpeq @var_var1: dd 10 @var_var2: dd 1 @Pshow_message0: db "ist 5",0 @Pshow_message1: db "ist nicht 5",0 segment .text global _start_main _start_main: push ebp mov ebp, esp push dword [@var_var1] push dword [@var_var2] call _set_vergleichswert_byvar add esp,8 call _vergleiche_cmpeq cmp eax, 1 jne near Le0 push @Pshow_message0 call _show_message add esp,4 jmp near Lj0 Le0: push dword [@var_var1] push dword [@var_var2] call _set_vergleichswert_byvar add esp,8 call _vergleiche_cmpeq cmp eax, 1 jne near Le2 push @Pshow_message1 call _show_message add esp,4 jMP near Lj2 Le2: jmp near Lj2 Lj2: jmp near Lj0 Lj0: push dword 0 call _exit leave ret mfg Sergey
  3. Hallo Jens, Es gibt nur einen Weg. Debugging, Debugging und noch einmal Debugging. Könntest du DEINE exe-files (lex.exe und yacc.exe)und Quelldatei zu Rapidshare laden?
  4. Es gibt eine Gegenüberstellungstabelle in dem Buch: Windows System Programming (3rd Edition); Johnson M. Hart; ISBN 0-321-25619-0; Addison Wesley, 2004
  5. gcc kann AFAIR auch asm Code erzeugen. Options sind -S und -fverbose-asm Hast du das probiert?
  6. Hallo Jens, zuerst habe ich falsch verstanden, dass vergleiche_cmpeq pascal-call ist und zwei args hat. Jetzt habe ich set_vergleichswert_byvar vergleiche_cmpeq gesehen. Beide sind C-call. Dann ist dieses Code ganz richtig: Und nicht wie: sondern, so: Wenn _show_message auch C-call ist. Wenn ich später Zeit habe,dann versuche ich dir helfen.
  7. call _set_vergleichswert_byvar add esp, 8 Wenn es C-call ist, dann braucht man zwei PUSHs bevor. push dword [@var_var1] push dword [@var_var2] call _vergleiche_cmpeq Procedure _vergleiche_cmpeq hat zwei Args. Oder? Warum gibt es keine Args: Le0: call _vergleiche_cmpeq
  8. Ich möchte gern procedure "_vergleiche_cmpeq" und "_set_vergleichswert_byvar" in ASM sehen. Dann kann man sagen,warum das Stack nicht gleich Stack ist.
  9. Vielleicht habe ich nicht richtig verstanden, was Sie genau erfahren möchten. variable = 12 asm: mov [variable],12 ; Intel syntax movl $12,$variable ; AT&T syntax
  10. int DigitalCount(int x) { int j=0; while(x>0) { x=x/10; j++; } return j; }
  11. Vielleicht braucht man noch msvcm90.dll und msvcr90.dll
  12. Ihre Freunde haben kein msvcp90.dll auf PCs. Deshalb sollen Ihre Freunde msvcp90.dll in C:\Windows\System32 oder in Progs Ordner legen.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...