Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > XProfan > Spezielles

Spezielles Für die Bereiche API, Subclassing, Inline-Assembler, Prozesse, ect.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26915, Antworten: 4218
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3326, Antworten: 122
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 312, Antworten: 19
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7643, Antworten: 185
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 20, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 23, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 58, Antworten: 6
Gehe zum ersten neuen Beitrag Rechner fährt herunter,...
Aufrufe: 146, Antworten: 9
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 71, Antworten: 4
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50944, Antworten: 1395
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 17.10.2009, 17:16   #1 (Direktlink)
Weiß worum´s geht
 
Registriert seit: 20.02.2009
Ort: Essen
Beiträge: 119
Standard Meine ersten Versuche in Xpia

Hallo ,
ich versuche mich gerade in Xpia, aber leider ohne Erfolg. Wer kann mir erklären, warum der Compiler mit Fehlermeldung abbricht????

HTML-Code:
$make I 'CLE
declare A&

AsmStart
  mov eax,1
  mov ebx,1
  
    .while ebx == 10
      add ebx,ebx
    .endw
AsmEnd

waitkey
2. Frage:
ist es möglich aus einer .while .endw Schleife Werte an XProfan zu übergeben und wie
__________________
Viele Grüsse
Mike

Window XP Prof SP3 Windows 7 ultimate
Xprofan X2
cyberangle ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 17.10.2009, 20:19   #2 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Daumen hoch

Hi.

Freut mich, dass du den Mut hast, mal Neues auszuprobieren!

Zu deinem Code: Du hast vergessen hinter AsmStart einen Namen für die Funktion zu übergeben, z.B. AsmStart Name.

In deinem Code kannst du keine Werte aus der Schleife an XProfan übergeben, weil XProfan wartet, bis die Funktion abgearbeitet wird. Du kannst zwar Werte an Variablen übergeben...

Code:
$make I
declare A&

AsmStart Name(Addr(a&))
  mov eax,1
  mov ebx,1
  
mov edx,para1
    .while ebx == 10
  add ebx,ebx
  mov [edx],ebx
    .endw
AsmEnd

waitkey
...und hier würde auch die XProfan-Variable A& immer neu bestückt. Aber wenn der Assemblerteil läuft, hat das Hauptprogramm natürlich Pause. Das ist genauso, als würde eine Prozedure laufen.
Du könntest aber im Assemblerteil einen zweiten Thread starten und dort die Werte übergeben. Dann laufen quasi zwei "Programme" gleichzeitig. Schau dir mal das XPIA-Beispiel "Permanente_Uhr.prf" an. Dort passiert nämlich genau das.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 18.10.2009, 10:32   #3 (Direktlink)
Weiß worum´s geht
 
Registriert seit: 20.02.2009
Ort: Essen
Beiträge: 119
Standard

@ Frank,

vielen Dank für Deine Hilfe. Habe erst gestern mit XPIA angefangen und erst nach Deinem Posting Programme im XPIA-Ordner entdeckt. Die werde ich mir jetzt erst mal zu Gemüte führen.

Eine Frage hätte ich noch, bei dem Progammtext in meinem ersten Posting Meldete der Compiler einen Fehler in Zeile 147. Mein Progamm hat aber nicht mal 20 Zeilen. Auf Welche Datei bezieht sich der Compiler.
__________________
Viele Grüsse
Mike

Window XP Prof SP3 Windows 7 ultimate
Xprofan X2
cyberangle ist offline   Mit Zitat antworten
Alt 18.10.2009, 11:40   #4 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

XPIA erstellt aus deinen ASM-Funktionen eine Dll. Die Zeilennummer bezieht sich auf den Quellcode dieser .asm-Datei, da die Fehlermeldung vom Assembler stammt. Diese Datei wird im XPIA-Ordner sources generiert, unter gleichem Namen wie deine Ursprungsdatei. Dadurch, dass der Funktionsname fehlt, generiert der Assembler irrtümlich:

Code:
; ________________________________________________________________________________________________________________
   eax,1 proc
; ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
push ebx
push edi
push esi
mov eax,1
mov ebx,1
.while ebx == 10
add ebx,ebx
.endw

pop esi
pop edi
pop ebx
ret 0
eax,1 endp
Zitat:
last.asm(141): Error! E235: Syntax error: eax
last.asm(156): Error! E235: Syntax error: eax
Mal sehen, ob ich den Fehler nicht schon mit XPIA abfangen kann. Ich muss eh noch ein Update machen, weil noch ein Problem bestand, wenn sehr viel Speicher zur Verfügung steht. Danke nochmal an Jac.

Jedenfall generiert XPIA eine Dll mit allen Funktionen. Die Dll wird in Quellcode-Form in deinen Source eingebaut und dann per Memory-Module beim Starten geladen und passend angesprungen.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.

Geändert von Frabbing (18.10.2009 um 11:45 Uhr)
Frabbing ist offline   Mit Zitat antworten
Alt 18.10.2009, 13:41   #5 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Hab gerade ein kleines Update gemacht auf Version 4.13.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 18.10.2009, 16:13   #6 (Direktlink)
Weiß worum´s geht
 
Registriert seit: 20.02.2009
Ort: Essen
Beiträge: 119
Standard

Hallo,

ich habe folgenden Programmtext:

HTML-Code:
$make I ;CLE
declare A&,b&, Uhr$
a& = 1
Uhr$ = time$(1)
Print uhr$
AsmStart Schleife(a&)
  ;mov eax,para1
  
    .while eax == 1000000
      add eax,para1
    .endw
    
AsmEnd (b&)
Uhr$ = time$(1)
Print uhr$
Print " nach Schleife"
Print b&
waitkey
Wenn ich das Prg mit der nicht auskommentierten Zeile mov eax,para1 starte erhalte ich als Rückgabewert in b& am Progammende den Wert 1.
Sollte ich dort nicht der Wert 1000001 finden, da die Schleife ja 1000000 durchlaufen wird.
Kommentiere ich die mov-Zeile aus erhalte ich den Wert 239439564. Wie kann das

Wird der Rückgabewert immer aus eax gelesen?
__________________
Viele Grüsse
Mike

Window XP Prof SP3 Windows 7 ultimate
Xprofan X2
cyberangle ist offline   Mit Zitat antworten
Alt 18.10.2009, 17:01   #7 (Direktlink)
Unregistriert
Gast
 
Beiträge: n/a
Standard

Ja, ist üblich - auch XProfan bezieht den Übergabewert aus dem EAX-Register.
  Mit Zitat antworten
Alt 18.10.2009, 19:09   #8 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Zitat:
Sollte ich dort nicht der Wert 1000001 finden, da die Schleife ja 1000000 durchlaufen wird.
Kommentiere ich die mov-Zeile aus erhalte ich den Wert 239439564. Wie kann das
Die Schleife wird gar nicht durchlaufen, weil die Bedingung nicht/nie erfüllt ist. Du mußt schreiben <1000000.
239439564 ist ein zufälliger Wert, der sich beim Starten der Funktion in EAX befand.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Antwort

  Paules-PC-Forum.de > Programmierung > XProfan > Spezielles

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Neue Xpia profanfan Spezielles 49 01.07.2009 06:34
XPIA-Neuigkeiten Frabbing Helfer & Tools 16 14.06.2009 20:00
XPIA > neu profanfan Helfer & Tools 10 30.04.2009 17:08
XPIA - was brauche ich AHT Spezielles 39 29.04.2009 16:57
PC braucht mehrere Versuche zum Hochfahren dumbid Windows 95/98/ME/2000/NT 3 16.03.2004 10:13



Alle Zeitangaben in WEZ +2. Es ist jetzt 06:04 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2