Προς το περιεχόμενο

Μια library φτιαγμένη σε assembly.


godlike

Προτεινόμενες αναρτήσεις

Δημοσ.

Η glib είναι μια βιβλιοθήκη για την MS VC++ με συναρτήσεις γενικής χρήσης φτιαγμένη εξʼ ολοκλήρου στον masm. Η ταχύτητα δεν είναι τεράστια άλλα μερικών millisecond. Όποιος δεν βαριέται ας τους ρίξει μια ματιά.

 

Η δεύτερη έκδοση: Αφού έμαθα μερικά πραγματάκια στην assembly και αφού διάβασα τον Optimization Guide της Intel (400+ σελίδες) ξαναέφτιαξα όλες τις συναρτήσεις. Οι νέες συναρτήσεις είναι δομημένες με βάση την αρχιτεκτονική των Pentium Pro και μεταγενέστερων. Η gPrintf για παράδειγμα είναι 26% γρηγορότερη από την προηγούμενη έκδοσή της και 29% από αυτήν της VC++ 6 σε release build.

 

Download από: http://www.ancientritual.tk

Direct Link: http://www.freewebs.com/ancientritual/files/glib.zip

 

Οι συναρτήσεις:

>int gStrlen         (char* pc)
int gStrcpy         (char* dest, char* src)
int gStrcat         (char* dest, char* src)
void gMemcopy       (void* dest, void* src, int size)
void gPrintf        (char* pcFormat, ...)
int gStdOut         (char* pc)
int gfGetLine       (HANDLE hFile, char* pcDest, char cDelim)
int gIntToStr       (char* pcDest, int num)
int gUIntToStr      (char* pcDest, int num)
int gIntToStrHex    (char* pcDest, int num)
int gDoubleToStr    (char* pcDest, double dbl)
int gStrToInt       (char* str)
int gStrToIntHex    (char* str)
double gStrToDouble (char* str)

 

Η gPrintf για παράδειγμα δουλεύει όπως και η printf (χωρίς όλες τις δυνατότητες).

Η gStrToDouble παίρνει ένα string τύπου “+123.123” ή “1.234e-1” και το μετατρέπει σε αριθμό κινητής υποδιαστολής διπλής ακριβείας.

Και τα λοιπά.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...