Deutsch
Forum

Was sind native Funktionen?

 
- Seite 1 -



Weil du immer noch nicht verständlich erklärt hast, was nprocs sind.


Hallo Nico,

danke für den Hinweis und den Thread hier - leider kann ich damit aber nichts anfangen da ich nicht wissen kann, was Du nicht verstehst.

Vlt. kannst Du mir unter Beachtung der Dokumentation  [...]  sagen, was Dir unklar ist.


Inline-Assembler:
 
11.11.2009  
 



 
- Seite 10 -



Nico
Madysa
Ja, du hast recht und ich es kapiert. Funktionen dürfen wir so viele wie nötig, möglich und gewollt bereitstellen.

Zur Exponentialfunktion habe ich jetzt noch was gefunden.
KompilierenMarkierenSeparieren
n ist eine beliebige, möglichst hohe Zahl; je höher, desto genauer ist exp(x!)

nproc exp

    parameters x!
    var n& = 1024
    var exp! = 1

    whileloop n&

        exp! = exp! * (1.0 + x! / n&)

    EndWhile

    return exp!

endproc


Für n&=1000 stimmen schon mal die ersten beiden Nachkommastellen; für n& = 10000 dann auch die dritte. Immer noch recht unschön.

Man könnte zusätzlich ausnutzen, dass exp(x) = 2^k * exp(x-k*ln(2)) gilt. Man müsste also ein k-faches von ln(2) (das ja als Konstante vorliegen kann) abziehen, sodass dieses Ergebnis möglichst nahe bei 0 liegt. (bei Null sind die obigen Verfahren wohl genauer.) Davon errechnet man dann das Ergebnis Y, das man dann wohl mit Y * (1 << k) auf das richtige Ergebnis bringen kann. Dagt die Wikipädie  [...]  zumindest.

Beim Logarithmus hilft vielleicht das hier weiter:  [...]  s ist sogar ein hübsches Ködchen dabei.
 
Nico Madysa
03.12.2009  
 




Nico
Madysa
Hmm ... Erkannte XPSE nicht mal den allgemeinen Includepfad? Neuerdings muss ich #include compatible.inc jedesmal zu $I D:XProfanXprofanINCLUDEcompatible.inc umschreiben.
Desweiteren: Wenn ich eine NProc namens "Test" habe, wieso funktioniert dann
KompilierenMarkierenSeparieren
, aber nicht:
KompilierenMarkierenSeparieren
procAddr("test",1)

? (Fehler: "Funktion nicht gefunden" im Interpreter, "Zu wenig Parameter" kompiliert)
Bei XProfan-Funktionen sind die Anführungszeichen doch auch ohne Bedeutung.
 
Nico Madysa
03.12.2009  
 



Schau mal Procaddr:  [...] 

Nimmst Du XProfEd und wie sind die Pfade?
 
03.12.2009  
 




Nico
Madysa
Ah gut, das hätte ich lesen müssen. ^^

Jau, ich nehme XProfEd. Doch was meinst du mit: "Wie sind die Pfade?"
Im Haupt-XProfan-Ordner liegen XProfEd und der Ordner "INCLUDE", der alle allgmeinen Includes und Header (Math.inc, compatible.inc, controls.inc, Messages.ph, ...) enhält.
 
Nico Madysa
03.12.2009  
 



Und wo liegt die Prf?
 
03.12.2009  
 




Nico
Madysa
Vom XProfEd aus in ./../Tests/Doppelstern.prf (Also ein Verzeichnis nach oben)
Ich habe da mein eigenes System.
 
Nico Madysa
03.12.2009  
 



Ok dann reagiert XPSE doch korrekt - oder? (ich hatte dazu nämlich einen Fehler behoben)

Wie sollte er bei Dir auf D:XProfanXprofanINCLUDEcompatible.inc kommen, denn die Include-Anweisung sollte relativ zur Prf stimmen. Andernfalls gäbe es Probleme wenn Includes aus inkludierten Includes Includes inkludieren - dort ja dann auch wieder aus Sicht der jeweiligen Include... - alles nur wegen hilfreichem #include. (mit "include_once"-Funktion  [...]  )
 
03.12.2009  
 




E.T.
iF, Beitrag=55315, Zeitpunkt=03.12.2009
... wenn Includes aus inkludierten Includes Includes inkludieren - dort ...




 
Grüße aus Sachsen... Mario
WinXP, Win7 (64 Bit),Win8(.1),Win10, Win 11, Profan 6 - X4, XPSE, und 'nen schwarzes, blinkendes Dingens, wo ich das alles reinschütte...
04.12.2009  
 




Nico
Madysa
iF, Beitrag=55315, Zeitpunkt=03.12.2009
Wie sollte er bei Dir auf D:XProfanXprofanINCLUDEcompatible.inc kommen


Nun, ganz einfach weil Profan.exe und Profcomp.exe auch darauf kommen. Zu keinem anderen Zwecke habe ich ja in der IDE als allgemeinen Include-Pfad "D:XProfanXProfanINCLUDE" angegeben.

So wie ich es mal verstand, sucht Profan zuerst in so einem Includeordner nach einem Header, einer Unit, etc. -- und erst wenn dort nichts liegt, suchen sie im Verzeichnis der PRF/PRC.
 
Nico Madysa
05.12.2009  
 



Jupp, den Includepfad von XProfEd beachtet XPSE nicht - kann ich ja mal nachholen.

Du hast {$pushincludepath ...}.
 
05.12.2009  
 




Nico
Madysa
Ah, also giebt es auch dafür ein Extra-Gimmick.
 
Nico Madysa
05.12.2009  
 



Damals, wegen der alten IDE - den Includepfad hingegen liesst XPSE.

Pushincludepath ist sehr alt, vlt. funktioniert es auch noch.

Auf jeden Fall schuppt es mir grad unter den Augen weil bezugs include_once bzw. #include eigentlich auch noch ein Bug sein müsste bei gleichnamigen Includes aus verschiedenen Verzeichnissen - ich schaue mir das nochmal genauer an und füg dann auch den Includepfad von XProfEd hinzu.

Nachtrag: Sorry, {$pushincpath kann in aktueller Version garnicht funktionieren, next Update...
 
05.12.2009  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

39.123 Betrachtungen

Unbenanntvor 0 min.
p.specht15.11.2018
Ernst02.07.2016
funkheld11.04.2016
HofK26.01.2016
Mehr...

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie