begin process at 2012 05 27 15:08:21
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > CRC32 EN ULTRA SIMPLE (WIN32)

CRC32 EN ULTRA SIMPLE (WIN32)


 Information sur la source

Note :
Aucune note
Catégorie :Maths & Algorithmes Classé sous :crc, crc3, win32, rapide Niveau :Débutant Date de création :23/07/2005 Date de mise à jour :06/04/2006 22:07:39 Vu / téléchargé :10 198 / 762

Auteur : BruNews

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (33)
Ajouter un commentaire et/ou une note


 Description

Cliquez pour voir la capture en taille normale
Rien de spécial, juste un CRC32 perso (mais vraiment rapide celui-ci).
Pas de classe ni autre masturbation codienne, passage des params par registres.
L'exe résultant (en rar dans dossier release) fait 3.5 Ko (normalement sorti du linker, sans UPX ni autre).



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   release
    • bnCrc32.rarTélécharger ce fichier [Réservé aux membres club]1 820 octets
    • bnPrecis.dllTélécharger ce fichier [Réservé aux membres club]3 072 octets
  • bnCrc32.apsTélécharger ce fichier [Réservé aux membres club]18 688 octets
  • bnCrc32.cppTélécharger ce fichier [Réservé aux membres club]Voir ce fichier4 837 octets
  • bnCrc32.ncbTélécharger ce fichier [Réservé aux membres club]35 840 octets
  • bnCrc32.rcTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 975 octets
  • bnCrc32.slnTélécharger ce fichier [Réservé aux membres club]Voir ce fichier903 octets
  • bnCrc32.suoTélécharger ce fichier [Réservé aux membres club]8 704 octets
  • bnCrc32.vcprojTélécharger ce fichier [Réservé aux membres club]3 909 octets
  • bnPrecis.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier400 octets
  • bnPrecis.libTélécharger ce fichier [Réservé aux membres club]2 818 octets
  • resource.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier726 octets

Télécharger le zip


 Historique

25 juillet 2005 16:43:48 :
Ajout d'une version 'FAST' qui gagne plus ou moins 7.5%. C'est inclus dans un prog de test des 2 versions. EXE fait 4.5 Ko maintenant, présent en rar dans dossier release.
26 octobre 2005 16:45:04 :
site
06 avril 2006 22:07:39 :
Commentaire.

 Sources du même auteur

Source avec Zip VIDER ELEMENTS DE CORBEILLE WINDOWS7 (WIN64)
Source avec Zip Source avec une capture FIND TEXT (WIN64)
Source avec Zip DELETE DIRECTORY (WIN64)
Source avec Zip ENUM DIRECTORY (WIN64)
Source avec Zip TEMPLATES C/C++ POUR VS 2010

 Sources de la même categorie

Source avec Zip UN EXAMPLE D'APPLICATION EN CUDA DE L'ALGORITHME DE SCAN POU... par oguzaras
Source avec Zip Source avec une capture CHIFFREMENT DE VIGENERE par lajouad
Source avec Zip Source avec une capture ANALYSE SYNTAXIQUE par lajouad
Source avec Zip Source avec une capture STRUCTURE D'UNE MATRICE PAR LES LISTE LINÉAIRE (NON CONTUGUS... par benzarabel
Source avec Zip Source avec une capture DESSINER UNE ARBRE BINAIRE( MODE CONSOLE): par benzarabel

 Sources en rapport avec celle ci

Source avec Zip WIN32 ET MVVM par dguilmain
Source avec Zip Source avec une capture TROUVER LES NOMBRES PREMIERS INFÉRIEURS À UNE LIMITE DONNÉE par angrevol
Source avec Zip WINDOWCAPTURE par FrancoisGauthier
Source avec Zip EASYLIB WIN32 C++ POUR DU PROTOTYPAGE RAPIDE par gourky
Source avec Zip Source avec une capture USB DETECTION par abandonware

Commentaires et avis

Commentaire de Urgo le 23/07/2005 20:08:02

Je suis sûr que je vais en avoir besoin pour augmenter la rapidité de mon SFV Checker :)
Pour les gros fichiers j'avais aussi préféré VirtualAlloc à HeapAlloc.

Bravo pour ce bien bel exemple une fois de plus ;)

Commentaire de MuPuF le 23/07/2005 23:21:13

lol !! tu m'étonne qu'il fasse que 3.5 ko, ya que de l'asm sauf une fonction dedans, meme le winmain est codé en asm ...
Pour ce qui est de la vitesse, c'est mon disque dur qui limite. Le pross est seulement utilisé a  10%. Si tout les programmeurs étaient comme toi (et surtout ceux de microsoft) on aurait droit a  des pc qui iraient deja 3* plus vite, sic, (sans dec vous avez vous le systeme des winks pour msn, ça ramme a la couane ... a se demander si ils le ralentissent pas expres ...)

Commentaire de BruNews le 23/07/2005 23:28:12 administrateur CS

Les winks sont instantanés sur mes PCs, le plugin Flash comme tant d'autres conneries est banni, alors...

Commentaire de MuPuF le 24/07/2005 10:11:39

je parle de la navigation dans les winks, ya une astuce pour tous les avoir et le tps d'ouvrir le panneau de selection des winks ben tu peux aller boire le café, ya que une 50ene de winks pourtant ...

Commentaire de Zazour le 24/07/2005 10:12:04

interessante ta source.
p'tite question:
y'a t'il qu'un language assembleur ou change t'il en fonction du proc utilisé ou de l'environnement de dev?
y'a t'il un livre a conseiller?

Commentaire de MuPuF le 24/07/2005 10:21:28

le langage assembleur dépend des processeur, mais pour les pc, c'est x86 (si je me souviens bien) donc il te faut un assembleur x86, l'environement de dev ne change rien. Attention, le code assembleur ne change pas entre les AMD et les INTEL ou changement de fréquence, par contre le code assembleur PC est différent de celui de MAC. Il doit y avoir des petites subtilitée que je dois pas connaitre sur l'assembleur car j'ai jamais rien programmé avec, je le "comprend" juste un petit peu.

Commentaire de BruNews le 24/07/2005 10:40:18 administrateur CS

ASM dépend de:
- Processeur cible: ici compatible Intel 386 et supérieur.
- De l'Assembleur qu'utilise ton environnement de dev, si c'est MS ou Borland alors syntaxe standard Intel comme ici.

Pour 10 euros, "Assembleur x86" chez CampusPress est très bien.

Commentaire de Arnotic le 24/07/2005 10:41:17 administrateur CS

Les processeurs INTEL et AMD possèdent des différences. Certains jeux d'instructions ne sont supportés que par INTEL.

Commentaire de MuPuF le 24/07/2005 10:46:20

oui d'où ce que je disais sur les petites subtilitée ;-)

Commentaire de Urgo le 24/07/2005 14:41:23

"Assembleur x86" chez CampusPress est dispo à la fnac, comme ça t'es sûr que tu peux l'acquérir pas loin de chez toi.

Commentaire de neoTHGLF le 24/07/2005 15:13:47

Oui il est à la fnac, en revanche, j'aurais préféré l'acheter à 10 euros comme le dit Brunews, plutôt qu'à 45... je ne sais pas où t'as put avoir ce bouquin à 10 euros, mais t'es bien chanceux ! Faudrait que tu me donnes des tuyaux ;).

Commentaire de Arnotic le 24/07/2005 15:18:56 administrateur CS

Je l'ai moi même acheter il y a quelques mois à 10 euros à la FNAC (Défense).

Commentaire de Zazour le 24/07/2005 18:35:54

ok,merçi pour votre aide.Cela confirme ce que je pensais.
Mais un livre type "Intel IA32" par exemple ne comprend t'il pas les explications du language assembleur ?
Et excuses pour ne parler seulement du code posté ici,j'aurai certainement plus de questions une fois ce livre sur assembleur lu.

Commentaire de BruNews le 24/07/2005 21:23:15 administrateur CS

http://www.amazon.fr/exec/obidos/ASIN/2744015644/171-6878149-5129824

Commentaire de neoTHGLF le 24/07/2005 22:55:00

je comprends mieux la différence de prix maintenant !
Je n'ai pas acheté celui ci. J'ai acheté celui là : http://www.fnac.com/Shelf/article.asp?PRID=1427185&OrderInSession=1&Mn=2&SID=c3cfb762-68f3-3b25-80d3-710852fcfbbd&TTL=250720052251&Origin=FnacFR&Ra=-1&To=0&Nu=2&UID=093f55ca3-13bb-52e8-3ab9-5c75d89976ae&Fr=0

Commentaire de BruNews le 24/07/2005 23:00:30 administrateur CS

et tu n'as pas vu que celui que j'ai indiqué est sur la page que tu donnes, et bien à 10 euros. Dommage car je ne conseillerais pas celui que tu as pris.

Commentaire de neoTHGLF le 25/07/2005 10:37:19

Si si j'ai vu. Mais ça ne change pas grand chose, j'ai acheté
ce livre (celui à 45 euros)il y quelques mois et je le trouve
très bien. Pourquoi ne le conseillerais tu pas ?

Commentaire de BruNews le 25/07/2005 11:00:39 administrateur CS

- la segmentation de l'espace mémoire en mode réel
- la gestion des interruptions
- les entrées/sorties avec accès direct au matériel

des pages dont on peut aisément se passer car d'un autre temps, perte de temps et d'argent.

Commentaire de Zazour le 25/07/2005 13:39:06

je suppose que la difference de prix est surtout du au cdrom et MASM.
et que penser de :
http://www.fnac.com/Shelf/article.asp?PRID=1532073&OrderInSession=1&Mn=26&NID=4057472&SID=b556f287-6bca-8d94-9535-9a2ef26c87a7&TTL=260720051042&Origin=FnacFR&Ra=-1&To=0&Nu=23&UID=02b2f4908-9349-5ee4-835b-6b22ef67f257&Fr=2

Commentaire de BruNews le 25/07/2005 13:50:11 administrateur CS

Delphi connais pas.
MASM est fourni gratos par MS, un CD vaut moins d'1 euro.

Commentaire de BruNews le 25/07/2005 16:45:52 administrateur CS

Ajout d'une version plus rapide.

Commentaire de vecchio56 le 25/07/2005 17:07:35 administrateur CS

"qui gagne plus ou moins 7.5%"
Faut-il comprendre "qui gagne ou qui perd 7.5%"?

Commentaire de BruNews le 25/07/2005 17:10:05 administrateur CS

t'as déjà vu qu'on publie une nouvelle version plus mauvaise que la précédente ???
Médisant culturel !!!

Commentaire de Joky le 26/07/2005 16:45:29

Moi je suis du genre a poster une source plus mauvaise que la précédente, enfin quand c'est possible, parce que si la premiere source et vraiment médiocre... Lol enfin vous m'aurez compris :). J'aime bien aussi poster des commentaires sans passer de ligne, pour voir jusqu'ou le forum peut bugger lol

Commentaire de vecchio56 le 06/08/2005 19:45:46 administrateur CS

J'ai regardé le livre assembleur x86 à 10 euros dont vous parlez plus haut et je le trouve plutot inconsistant (très peu d'exemples en particulier, c'est pas terrible pour débuter). Une bonne partie du livre est la description des instructions, on peut trouver ca en mieux dans les livres intel. En plus je trouve que c'est mal écrit (on dirait que le gars ne se relit pas, c'est horrible)
Si quelqu'un a compris l'exemple pp 326-327 sur la table des sinus... Parce que j'ai pas trop compris un truc (il divise 571 par 32678, ca va donner 0, non?)
Je dis pas que c'est une arnaque parce qu'il est pas très cher, mais je suis plutot décu

Commentaire de BruNews le 06/08/2005 20:07:05 administrateur CS

ah oui à partir d'un angle 40, on est déjà hors liste car table fait 80 octets et il multiplie l'angle par 2 avant:
mov ax, [bx]
c'est du grand nimporte quoi, je n'avais pas lu les exemples et ils sont à éviter. L'intérêt du bouquin est dans la liste des instructions en format poche.
On ne peut pas faire autrement mais faut bien avouer que en pdf (de m***de), les manuels Intels ne sont pas pratiques à consulter, faudrait les passer en chm.

Commentaire de vecchio56 le 06/08/2005 21:02:31 administrateur CS

OK pour la liste des instructions (il y a aussi la fpu dedans, je signale), le reste est vraiment pas terrible.
J'ai retenu un passage intéressant:
"Qu'est ce que la canalisation? C'est un principe simple permettant la canalisation de instructions"
La suite est plus explicite, mais c'est le genre de phrase que je n'aime pas lire

Commentaire de jack le 05/03/2010 12:15:31 administrateur CS

Salut BN
Je me risque dans cet espace CPP que je ne maîtrise pas, d'où les questions suivantes :
Mon terrain de prédilection, c'est VB6.
Pour mes sauvegardes perso, j'ai besoin de vérifier l'intégrité des fichiers transférés.
Sous VB6, l'instruction Get limite le pointeur d'accès aux données à 2Go (Long de VB6)
Je recherche donc une DLL capable de lire elle même les données et de me fournir ce fameux CRC.
J'ai un peu regardé dans cette source, mais j'ai du mal à comprendre si c'est l'EXE d'exemple ou la DLL qui assure cette tâche de lecture de buffer.
Je pense que c'est l'EXE car j'ai vu ta variable ONEMEGA (judicieusement nommée) et qui semble être la taille du buffer traité.
Me trompe-je ?

Serait-il pensable de fabriquer une DLL à laquelle on fournirait la chaine d'accès au fichier depuis VB6 ?
Merci de tes éclaircissements.

Commentaire de BruNews le 06/03/2010 11:23:09 administrateur CS

Salut Jack,

http://brunews.com/dllcrc.zip
contient dll et txt explicatif.

Je n'ai ni VB ni temps pour tester, tu me diras.

Commentaire de jack le 06/03/2010 16:17:19 administrateur CS

Merci beaucoup, bn
J'ai mis en application et le tout fonctionne.
Si tu le permets, je vais publier une nouvelle source VB avec cette DLL, avec le lien, bien entendu, symbole d'une fructueuse collaboration !

Juste avant, une petite question :
Sur le calcul de CRC des gros fichiers (~12Go), les résultats ont vraiment des formes particulières (sans signalement de défaut de la part de la DLL) :
Par exemple, sur un fichier de 12.8Gb, le résultat donne 6B6B 6B6B
Sur un autre de 7.4Gb, j'obtiens F1F1 F1F1
Pour 1.93Gb, FCFC FCFC
Pour 583Mb, 3738 B9BA
Ces résultats sont les mêmes avec cette DLL (zip du dernier msg) et avec la DLL de ta source.

Ces résultats me paraissent bien singuliers dès que la taille des fichiers augmentent.
Y aurait-il un problème de saturation de capacité de variable ?

Commentaire de BruNews le 06/03/2010 18:35:54 administrateur CS

Depassement de capacité n'a pas de sens en C, certainement faudrait que je te change l'algo du CRC que je n'avais pas testé sur de gros fichiers.
Je vois ça dès que possible.

Commentaire de BruNews le 06/03/2010 18:41:40 administrateur CS

Je viens de tester avec l'exe qui est ici en source sur des ISO > 2 Go (Sql Server, VS, etc..) no prob, j'ai des résultats tout a fait corrects.

Commentaire de jack le 06/03/2010 19:30:00 administrateur CS

Il semble que jusqu'à 2Gb il n'y ait pas de souci.
J'ai tenté avec un (CRC en hexa)
2.04Gb : 4444 4646 (commence à faire bizarre)
3Gb : 6969 6969
29Gb : D4D4 D4D4

Je vais essayer de faire un test en générant des fichiers de différentes tailles pour voir où commence ce phénomène ...

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Win32(control) [ par NitRic ] Bonjour, pour mon premier prog Win32 en C++ j'ai décider de faire un petit NotPad sauf que la j'ai un problème:J'ai fais des menu et dans le menu Édi Où trouver le Win32 SDK ? [ par PierreP ] ... avec un help ou qqchose de ce genre qui explique comment on utilise les fonctions.Impossible de le trouver sur Le site de Microsoft ! changé curseur dans application Win32 [ par Stoomm ] Bonjour, j'aimerais chargé un curseur autre que celui par défault dans une appli Win32.Quelqu'un peut il me donner la marche à suivre svp.Merci d'avan changé curseur dans application Win32 [ par Stoomm ] Bonjour, j'aimerais chargé un curseur autre que celui par défault dans une appli Win32.Quelqu'un peut il me donner la marche à suivre svp.Merci d'avan demande librairie gtk pour win32 [ par francky ] quelqu'un pourrait-il me donner la librairie gtk.h?ou alors des liens vers des exemples d'interface graphique réaliséemerci d'avance. lien vers librairie glut pour win32 [ par francky ] m'étant fait déja passé pour un con ne sachant pas lire,pour tout ceux qui débutent et ne trouve pas la librairie glut pour windows permettant de cree gtk & win32 & Visual C++ [ par Paisible ] je vais peut être me faire jeter, mais bon...j'ai cherché dans le forum... et impossible de trouver la trace d'un quelconque post concernant la config win32 et sous-classement [ par mozert ] hi.mmm... mwai.. voila mon probleme..le sous-classement (subclassing)..est-il possible de sous-classer une fenetre appartenant à un processus differen Bouton en Win32 [ par punx120 ] J'aimearis savoir comment faire pour faire un bouton avecun bitmap, comme on peut le faire avec CBitmapButton, mais en win32merci @ + Win32 [ par NettoyeurFantome ] Je cherche des cours sur l'API Win32.@+Julien IBARZ alias [Nettoyeur]Fantome


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,780 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales