cs_Urgo
Messages postés780Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention16 avril 2009
-
23 juil. 2005 à 20:08
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
6 mars 2010 à 19:30
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 6 mars 2010 à 19:30
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 ...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 6 mars 2010 à 18:41
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.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 6 mars 2010 à 18:35
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.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 6 mars 2010 à 16:17
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 ?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 6 mars 2010 à 11:23
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 5 mars 2010 à 12:15
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.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 6 août 2005 à 21:02
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
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 6 août 2005 à 20:07
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.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 6 août 2005 à 19:45
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
cs_Joky
Messages postés1787Date d'inscriptionlundi 22 novembre 2004StatutMembreDernière intervention31 janvier 20092 26 juil. 2005 à 16:45
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
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 25 juil. 2005 à 17:10
t'as déjà vu qu'on publie une nouvelle version plus mauvaise que la précédente ???
Médisant culturel !!!
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 25 juil. 2005 à 17:07
"qui gagne plus ou moins 7.5%"
Faut-il comprendre "qui gagne ou qui perd 7.5%"?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 25 juil. 2005 à 16:45
Ajout d'une version plus rapide.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 25 juil. 2005 à 13:50
Delphi connais pas.
MASM est fourni gratos par MS, un CD vaut moins d'1 euro.
Zazour
Messages postés120Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention14 janvier 2006 25 juil. 2005 à 13:39
je suppose que la difference de prix est surtout du au cdrom et MASM.
et que penser de :
http://www.fnac.com/...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 25 juil. 2005 à 11:00
- 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.
neoTHGLF
Messages postés65Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention17 décembre 2007 25 juil. 2005 à 10:37
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 ?
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 juil. 2005 à 23:00
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.
neoTHGLF
Messages postés65Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention17 décembre 2007 24 juil. 2005 à 22:55
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/...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 juil. 2005 à 21:23
Zazour
Messages postés120Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention14 janvier 2006 24 juil. 2005 à 18:35
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.
cs_Arnotic
Messages postés933Date d'inscriptiondimanche 1 avril 2001StatutMembreDernière intervention 9 janvier 2012 24 juil. 2005 à 15:18
Je l'ai moi même acheter il y a quelques mois à 10 euros à la FNAC (Défense).
neoTHGLF
Messages postés65Date d'inscriptiondimanche 7 septembre 2003StatutMembreDernière intervention17 décembre 2007 24 juil. 2005 à 15:13
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 ;).
cs_Urgo
Messages postés780Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention16 avril 20091 24 juil. 2005 à 14:41
"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.
MuPuF
Messages postés536Date d'inscriptionmercredi 27 avril 2005StatutMembreDernière intervention22 août 2008 24 juil. 2005 à 10:46
oui d'où ce que je disais sur les petites subtilitée ;-)
cs_Arnotic
Messages postés933Date d'inscriptiondimanche 1 avril 2001StatutMembreDernière intervention 9 janvier 2012 24 juil. 2005 à 10:41
Les processeurs INTEL et AMD possèdent des différences. Certains jeux d'instructions ne sont supportés que par INTEL.
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 24 juil. 2005 à 10:40
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.
MuPuF
Messages postés536Date d'inscriptionmercredi 27 avril 2005StatutMembreDernière intervention22 août 2008 24 juil. 2005 à 10:21
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.
Zazour
Messages postés120Date d'inscriptionmercredi 7 mai 2003StatutMembreDernière intervention14 janvier 2006 24 juil. 2005 à 10:12
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?
MuPuF
Messages postés536Date d'inscriptionmercredi 27 avril 2005StatutMembreDernière intervention22 août 2008 24 juil. 2005 à 10:11
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 ...
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 23 juil. 2005 à 23:28
Les winks sont instantanés sur mes PCs, le plugin Flash comme tant d'autres conneries est banni, alors...
MuPuF
Messages postés536Date d'inscriptionmercredi 27 avril 2005StatutMembreDernière intervention22 août 2008 23 juil. 2005 à 23:21
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 ...)
cs_Urgo
Messages postés780Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention16 avril 20091 23 juil. 2005 à 20:08
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 ;)
6 mars 2010 à 19:30
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 ...
6 mars 2010 à 18:41
6 mars 2010 à 18:35
Je vois ça dès que possible.
6 mars 2010 à 16:17
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 ?
6 mars 2010 à 11:23
http://brunews.com/dllcrc.zip
contient dll et txt explicatif.
Je n'ai ni VB ni temps pour tester, tu me diras.
5 mars 2010 à 12:15
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.
6 août 2005 à 21:02
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
6 août 2005 à 20:07
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.
6 août 2005 à 19:45
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
26 juil. 2005 à 16:45
25 juil. 2005 à 17:10
Médisant culturel !!!
25 juil. 2005 à 17:07
Faut-il comprendre "qui gagne ou qui perd 7.5%"?
25 juil. 2005 à 16:45
25 juil. 2005 à 13:50
MASM est fourni gratos par MS, un CD vaut moins d'1 euro.
25 juil. 2005 à 13:39
et que penser de :
http://www.fnac.com/...
25 juil. 2005 à 11:00
- 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.
25 juil. 2005 à 10:37
ce livre (celui à 45 euros)il y quelques mois et je le trouve
très bien. Pourquoi ne le conseillerais tu pas ?
24 juil. 2005 à 23:00
24 juil. 2005 à 22:55
Je n'ai pas acheté celui ci. J'ai acheté celui là : http://www.fnac.com/...
24 juil. 2005 à 21:23
24 juil. 2005 à 18:35
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.
24 juil. 2005 à 15:18
24 juil. 2005 à 15:13
24 juil. 2005 à 14:41
24 juil. 2005 à 10:46
24 juil. 2005 à 10:41
24 juil. 2005 à 10:40
- 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.
24 juil. 2005 à 10:21
24 juil. 2005 à 10:12
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?
24 juil. 2005 à 10:11
23 juil. 2005 à 23:28
23 juil. 2005 à 23:21
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 ...)
23 juil. 2005 à 20:08
Pour les gros fichiers j'avais aussi préféré VirtualAlloc à HeapAlloc.
Bravo pour ce bien bel exemple une fois de plus ;)