Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/09/2011, à 15:47

ehmicky

[x86]Instructions les plus fréquentes

Bonjour à tous,

Je me suis amusé à désassembler l'ensemble des codes exécutables (sections .plt, .text, .init et .fini des exécutables et bibliothèques partagées) de mon PC pour voir les instructions les plus courantes. Voici le résultat ! ("Présence" est le pourcentage de fichiers avec du code exécutable ayant au moins une occurence de cette instruction)

OPCODE    FREQUENCE(%)    FREQUENCE CUMULEE    PRESENCE(%)    ARCHITECTURE    EXTENSION
                    
mov    44.4870203    44.4870203    99.9664        
call    8.8395074    53.3265277    99.88801        
lea    6.931867    60.2583947    99.74244        
push    3.6951799    63.9535746    99.944        
jmp    3.564656    67.5182306    99.78723        
test    3.4684624    70.986693    99.64165        
add    3.3249257    74.3116187    99.77603        
je    3.2710429    77.5826616    99.69764        
pop    2.8175398    80.4002014    99.87681        
cmp    2.730277    83.1304784    99.75363        
nop    2.646571    85.7770494    97.84994        
sub    2.166679    87.9437284    99.91041        
jne    1.7580636    89.701792    99.76483        
ret    1.2679828    90.9697748    99.92161        
AUTRES    9.0289096                
movzx    0.9655471    91.9353219    86.05823        
xor    0.9412933    92.8766152    97.71556        
fstp    0.52296    93.3995752    41.243    x87    
fld    0.4740133    93.8735885    38.86898    x87    
and    0.4452092    94.3187977    83.54983        
xchg    0.3238556    94.6426533    91.43337        
setne    0.2749146    94.9175679    57.84994        
lock    0.2733012    95.1908691    19.00335        
or    0.2731167    95.4639858    66.41657        
shl    0.2560816    95.7200674    63.62821        
jle    0.2255755    95.9456429    77.41321        
sar    0.2065391    96.152182    98.15229        
shr    0.1894724    96.3416544    59.02575        
fxch    0.1879906    96.529645    28.44344    x87    
ja    0.1870781    96.7167231    71.11982        
jbe    0.185011    96.9017341    68.62262        
imul    0.1678382    97.0695723    53.77379        
jg    0.1560971    97.2256694    69.3617        
fmul    0.1530484    97.3787178    28.86898    x87    
js    0.1227581    97.5014759    62.31802        
leave    0.1108236    97.6122995    99.3729        
movsx    0.0990476    97.7113471    46.1926        
jb    0.0771999    97.788547    98.44344        
jae    0.0737431    97.8622901    97.98432        
fadd    0.0722736    97.9345637    22.88913    x87    
jl    0.0672313    98.001795    54.86002        
fild    0.0626085    98.0644035    33.75139    x87    
faddp    0.0623003    98.1267038    19.00335    x87    
fst    0.0602202    98.186924    21.45576    x87    
fldcw    0.0587042    98.2456282    28.79059    x87    
sete    0.0582429    98.3038711    55.02799        
jge    0.0577154    98.3615865    48.7458        
sbb    0.0554005    98.416987    49.46248        
movq    0.0524516    98.4694386    1.2206    PentiumMMX    MMX
cmove    0.0518361    98.5212747    55.91265    PentiumPro    
not    0.0440324    98.5653071    45.80067        
jns    0.0423067    98.6076138    42.4748        
inc    0.0419137    98.6495275    8.27547        
fldz    0.040469    98.6899965    27.64837    x87    
fucomi    0.0399206    98.7299171    18.63381    PentiumPro    x87
adc    0.0364008    98.7663179    25.33034        
cmovne    0.0358788    98.8021967    48.01791    PentiumPro    
neg    0.0345599    98.8367566    32.56438        
fsub    0.0340686    98.8708252    15.49832    x87    
repz    0.0317632    98.9025884    50.30235        
fucomip    0.0290736    98.931662    20.48152    PentiumPro    x87
movss    0.0289449    98.9606069    0.45912    PentiumIII    sse1
fistp    0.0285487    98.9891556    28.21948    x87    
rep    0.0278874    99.017043    40.39193        
fmulp    0.0276697    99.0447127    19.9552    x87    
movsd    0.0250476    99.0697603    0.19036        
dec    0.0221831    99.0919434    6.99888        
paddw    0.0208409    99.1127843    0.77267    PentiumMMX    MMX
fsubrp    0.0200286    99.1328129    12.68756    x87    
mulss    0.0195148    99.1523277    0.15677    PentiumIII    sse1
fnstcw    0.0191696    99.1714973    28.58902    x87    
fld1    0.0191401    99.1906374    22.32922    x87    
movaps    0.0189686    99.209606    0.6047    PentiumIII    sse1
fabs    0.0184162    99.2280222    5.97984    x87    
jp    0.0181317    99.2461539    13.66181        
fnstsw    0.017434    99.2635879    3.94176    x87    
mulsd    0.0166958    99.2802837    0.07838    PentiumIV    sse2
fdiv    0.0166958    99.2969795    20.6047    x87    
sahf    0.0161032    99.3130827    3.53863        
addss    0.0160646    99.3291473    0.22396    PentiumIII    sse1
movapd    0.0159444    99.3450917    0.15677    PentiumIV    sse2
idiv    0.0155311    99.3606228    25.26315        
movd    0.0147417    99.3753645    1.06382    PentiumMMX    MMX
fsubr    0.014691    99.3900555    13.05711    x87    
movdqa    0.0144939    99.4045494    0.34714    PentiumIV    sse2
div    0.014431    99.4189804    29.28331        
ud2    0.0142908    99.4332712    0.17917        
fchs    0.0142883    99.4475595    12.58678    x87    
seta    0.0139861    99.4615456    37.03247        
addsd    0.0137883    99.4753339    0.12318    PentiumIV    sse2
rol    0.0127144    99.4880483    6.8197        
mul    0.0120683    99.5001166    23.30347        
bswap    0.01198    99.5120966    7.64837        
punpcklbw    0.0117142    99.5238108    0.95184    PentiumMMX    MMX
shrd    0.011345    99.5351558    9.16013        
cmovle    0.0111855    99.5463413    24.86002    PentiumPro    
ror    0.0111491    99.5574904    8.80179        
setb    0.0107093    99.5681997    32.55319        
cmovg    0.0095658    99.5777655    21.35498    PentiumPro    
psubw    0.0093898    99.5871553    0.55991    PentiumMMX    MMX
fsubp    0.0093531    99.5965084    11.13101    x87    
cmovns    0.0091991    99.6057075    22.81075    PentiumPro    
fucom    0.0085099    99.6142174    1.53415    x87    
bt    0.0082764    99.6224938    8.49944        
jnp    0.0081546    99.6306484    7.72676        
pxor    0.00806    99.6387084    1.04143    PentiumMMX    MMX
cmovs    0.007866    99.6465744    19.77603    PentiumPro    
fdivr    0.0078606    99.654435    15.05039    x87    
cmovbe    0.0075793    99.6620143    20.6159    PentiumPro    
fdivrp    0.0074607    99.669475    19.04815    x87    
pand    0.006849    99.676324    0.85106    PentiumMMX    MMX
cmovge    0.0068079    99.6831319    19.3729    PentiumPro    
packuswb    0.0067867    99.6899186    0.83986    PentiumMMX    MMX
addps    0.0066845    99.6966031    0.38073    PentiumIII    sse1
mulps    0.0063969    99.703    0.44792    PentiumIII    sse1
(bad)    0.0060406    99.7090406    0.16797        
out    0.0059545    99.7149951    1.14221        
setg    0.0059488    99.7209439    20.91825        
shld    0.0058913    99.7268352    8.54423        
mulpd    0.0057533    99.7325885    0.08958    PentiumIV    sse2
psraw    0.0056543    99.7382428    0.49272    PentiumMMX    MMX
por    0.0053904    99.7436332    0.79507    PentiumMMX    MMX
pmullw    0.0053464    99.7489796    0.55991    PentiumMMX    MMX
cmovl    0.0051366    99.7541162    15.49832    PentiumPro    
fdivp    0.0049756    99.7590918    12.94512    x87    
cwde    0.0046158    99.7637076    8.48824        
pmulhw    0.0044946    99.7682022    0.53751    PentiumMMX    MMX
cmova    0.004463    99.7726652    17.32362    PentiumPro    
repnz    0.0043902    99.7770554    12.90033        
paddd    0.0043408    99.7813962    0.53751    PentiumMMX    MMX
in    0.0043035    99.7856997    1.16461        
psubusb    0.0040048    99.7897045    0.50391    PentiumMMX    MMX
paddsw    0.0037653    99.7934698    0.41433    PentiumMMX    MMX
fsqrt    0.0037191    99.7971889    5.77827    x87    
psllw    0.0037169    99.8009058    0.6159    PentiumMMX    MMX
fcomi    0.0037143    99.8046201    1.8365    PentiumPro    x87
fucomp    0.0035707    99.8081908    1.1982    x87    
punpckhbw    0.0035593    99.8117501    0.75027    PentiumMMX    MMX
pavgb    0.0035175    99.8152676    0.40313    PentiumIII    sse1
subps    0.0035093    99.8187769    0.27995    PentiumIII    sse1
fucompp    0.0034523    99.8222292    1.53415    x87    
cmovae    0.0033963    99.8256255    15.80067    PentiumPro    
pmaddwd    0.003384    99.8290095    0.47032    PentiumMMX    MMX
psrlw    0.0031454    99.8321549    0.80627    PentiumMMX    MMX
psadbw    0.00309    99.8352449    0.21276    PentiumIII    sse1
cmovb    0.0029916    99.8382365    13.26987    PentiumPro    
punpcklwd    0.0029394    99.8411759    0.6159    PentiumMMX    MMX
shufps    0.0028977    99.8440736    0.35834    PentiumIII    sse1
setbe    0.0028926    99.8469662    12.04927        
addpd    0.0028366    99.8498028    0.08958    PentiumIV    sse2
fcomip    0.0026401    99.8524429    1.95968    PentiumPro    x87
cdq    0.0025642    99.8550071    3.50503        
stos    0.0025502    99.8575573    2.74356        
fcmovbe    0.0024626    99.8600199    6.03583    PentiumPro    x87
setle    0.0024585    99.8624784    12.21724        
psrlq    0.0024322    99.8649106    0.71668    PentiumMMX    MMX
punpckhwd    0.0023636    99.8672742    0.5823    PentiumMMX    MMX
movs    0.0022728    99.869547    3.95296        
fist    0.0022449    99.8717919    6.18141    x87    
movdqu    0.0022092    99.8740011    0.36954    PentiumIV    sse2
cld    0.0021993    99.8762004    5.74468        
fcmovnbe    0.0021728    99.8783732    6.13661    PentiumPro    x87
shufpd    0.0021493    99.8805225    0.06718    PentiumIV    sse2
bsr    0.0021164    99.8826389    11.66853        
pavgusb    0.0020633    99.8847022    0.17917        
xorps    0.0020611    99.8867633    0.47032    PentiumIII    sse1
setl    0.0020478    99.8888111    9.18253        
int3    0.0019304    99.8907415    0.34714        
paddusw    0.0017984    99.8925399    0.29115    PentiumMMX    MMX
setae    0.0017871    99.894327    6.33818        
setnp    0.001781    99.896108    3.1131        
xorpd    0.0017228    99.8978308    0.12318    PentiumIV    sse2
pcmpeqb    0.0016845    99.8995153    0.38073    PentiumMMX    MMX
hlt    0.0016823    99.9011976    33.53863        
psllq    0.0016437    99.9028413    0.54871    PentiumMMX    MMX
subss    0.0015855    99.9044268    0.14557    PentiumIII    sse1
punpckldq    0.0015852    99.906012    0.45912    PentiumMMX    MMX
setp    0.001544    99.907556    3.61702        
psrad    0.0015051    99.9090611    0.36954    PentiumMMX    MMX
paddusb    0.0014618    99.9105229    0.50391    PentiumMMX    MMX
cmps    0.001452    99.9119749    0.08958        
ins    0.0014377    99.9134126    0.05599        
retf    0.0014254    99.914838    0.06718        
palignr    0.0014159    99.9162539    0.12318    Core2    ssse3
outs    0.0014127    99.9176666    0.05599        
lods    0.0013998    99.9190664    0.12318        
movhps    0.0013934    99.9204598    0.19036    PentiumIII    sse1
packssdw    0.0013703    99.9218301    0.42553    PentiumMMX    MMX
scas    0.0013697    99.9231998    0.04479        
ucomiss    0.0013425    99.9245423    0.14557    PentiumIII    sse1
movsxd    0.0012814    99.9258237    0.03359        
setge    0.0012726    99.9270963    8.96976        
fcmovb    0.0012422    99.9283385    1.66853    PentiumPro    x87
movlps    0.0012299    99.9295684    0.30235    PentiumIII    sse1
cvtsi2ss    0.0012159    99.9307843    0.08958    PentiumIII    sse1
ucomisd    0.0011969    99.9319812    0.11198        
psubsw    0.00117    99.9331512    0.40313    PentiumMMX    MMX
punpckhdq    0.0011362    99.9342874    0.36954    PentiumMMX    MMX
cvttss2si    0.0011223    99.9354097    0.15677    PentiumIII    sse1
emms    0.0011083    99.936518    1.36618    PentiumMMX    MMX
prefetcht0    0.0010979    99.9376159    0.19036    PentiumIII    sse1
prefetchnta    0.0010884    99.9387043    0.36954        
subsd    0.001077    99.9397813    0.07838        
pshufw    0.0010723    99.9408536    0.38073    PentiumIII    sse1
int    0.0010555    99.9419091    0.49272        
pshufd    0.0009666    99.9428757    0.29115    PentiumIV    sse2
fxam    0.0009422    99.9438179    0.75027    x87    
pushf    0.0009163    99.9447342    1.88129        
pmaxsw    0.0009096    99.9456438    0.20156    PentiumIII    sse1
movups    0.0008653    99.9465091    0.27995    PentiumIII    sse1
pmulhuw    0.0008619    99.947371    0.25755    PentiumIII    sse1
pusha    0.0008328    99.9482038    0.25755        
popf    0.0008248    99.9490286    1.8701        
comiss    0.0007904    99.949819    0.07838    PentiumIII    sse1
popa    0.0007894    99.9506084    0.20156        
std    0.0007698    99.9513782    0.20156        
icebp    0.000759    99.9521372    0.03359        
fwait    0.0007495    99.9528867    0.14557    x87    
jo    0.0007467    99.9536334    0.10078        
cmc    0.0007445    99.9543779    0.05599        
sti    0.0007435    99.9551214    0.08958        
enter    0.0007423    99.9558637    0.05599        
aam    0.0007356    99.9565993    0.04479        
psrld    0.0007337    99.957333    0.42553    PentiumMMX    MMX
jno    0.0007337    99.9580667    0.04479        
lahf    0.0007299    99.9587966    0.04479        
iret    0.0007299    99.9595265    0.08958        
clc    0.000729    99.9602555    0.06718        
loop    0.0007264    99.9609819    0.10078        
loopne    0.0007258    99.9617077    0.07838        
jecxz    0.0007258    99.9624335    0.20156        
stc    0.0007223    99.9631558    0.08958        
cli    0.0007179    99.9638737    0.11198        
aas    0.0007166    99.9645903    0.05599        
daa    0.0007087    99.965299    0.02239        
aad    0.0007078    99.9660068    0.03359        
das    0.0007059    99.9667127    0.03359        
arpl    0.000703    99.9674157    0.03359        
loope    0.0007021    99.9681178    0.03359        
into    0.0006983    99.9688161    0.04479        
aaa    0.000691    99.9695071    0.02239        
psrldq    0.0006894    99.9701965    0.22396    PentiumIV    sse2
psubd    0.0006872    99.9708837    0.26875    PentiumMMX    MMX
fimul    0.0006726    99.9715563    0.20156    x87    
movupd    0.0006692    99.9722255    0.08958    PentiumIV    sse2
paddb    0.0006685    99.972894    0.40313    PentiumMMX    MMX
psubb    0.0006597    99.9735537    0.32474    PentiumMMX    MMX
fcmovnb    0.0006204    99.9741741    1.48936    PentiumPro    x87
movntq    0.0006078    99.9747819    0.45912    PentiumIII    sse1
fidivr    0.0005749    99.9753568    0.19036    x87    
rcr    0.0005692    99.975926    0.06718        
pshuflw    0.0005499    99.9764759    0.21276    PentiumIV    sse2
rcl    0.0005492    99.9770251    0.06718        
lds    0.0005454    99.9775705    0.03359        
fprem    0.000542    99.9781125    1.88129    x87    
unpcklps    0.0005382    99.9786507    0.25755    PentiumIII    sse1
les    0.0005299    99.9791806    0.04479        
fcmove    0.0005024    99.979683    1.8253    PentiumPro    x87
divss    0.0004923    99.9801753    0.12318    PentiumIII    sse1
punpcklqdq    0.00046    99.9806353    0.14557    PentiumIV    sse2
lddqu    0.0004391    99.9810744    0.10078    PentiumIV    sse3
pminsw    0.0004315    99.9815059    0.21276    PentiumIII    sse1
pslld    0.0004211    99.981927    0.44792    PentiumMMX    MMX
pmovmskb    0.0003546    99.9822816    0.16797    PentiumIII    sse1
bsf    0.0003515    99.9826331    1.03023        
unpckhps    0.0003436    99.9829767    0.20156    PentiumIII    sse1
pcmpgtw    0.0003385    99.9833152    0.33594    PentiumMMX    MMX
pmaddubsw    0.0003309    99.9836461    0.10078    Core2    ssse3
fcom    0.0003303    99.9839764    0.07838    x87    
cpuid    0.0003284    99.9843048    2.19484        
cvtps2pd    0.0003186    99.9846234    0.05599    PentiumIV    sse2
pandn    0.0003119    99.9849353    0.40313    PentiumMMX    MMX
pfadd    0.0003113    99.9852466    0.14557        
paddq    0.0003047    99.9855513    0.05599    PentiumMMX    SSE2
pfmul    0.0003005    99.9858518    0.13437        
fcmovne    0.0002929    99.9861447    2.21724    PentiumPro    x87
divsd    0.0002809    99.9864256    0.07838    PentiumIV    sse2
packsswb    0.0002749    99.9867005    0.35834    PentiumMMX    MMX
pmaxub    0.0002711    99.9869716    0.23516    PentiumIII    sse1
cvtpd2ps    0.0002711    99.9872427    0.04479    PentiumIV    sse2
pslldq    0.0002667    99.9875094    0.21276    PentiumIV    sse2
movntdq    0.0002575    99.9877669    0.20156    PentiumIV    sse2
unpcklpd    0.0002566    99.9880235    0.06718    PentiumIV    sse2
movhlps    0.000255    99.9882785    0.23516    PentiumIII    sse1
psubusw    0.0002502    99.9885287    0.33594    PentiumMMX    MMX
pminub    0.0002487    99.9887774    0.20156    PentiumIII    sse1
fcomp    0.0002474    99.9890248    0.07838    x87    
pmuludq    0.0002439    99.9892687    0.07838    PentiumIV    sse2
cdqe    0.000243    99.9895117    0.02239        
fidiv    0.0002357    99.9897474    0.13437    x87    
pcmpeqw    0.0002344    99.9899818    0.31354    PentiumMMX    MMX
fiadd    0.0002186    99.9902004    0.13437    x87    
fcmovu    0.0002135    99.9904139    0.21276    PentiumPro    x87
pabsw    0.0002104    99.9906243    0.10078    Core2    ssse3
cvtsi2sd    0.0002085    99.9908328    0.10078    PentiumIV    sse2
pcmpeqd    0.0002037    99.9910365    0.30235    PentiumMMX    MMX
pshufhw    0.000199    99.9912355    0.19036    PentiumIV    sse2
pfsub    0.000198    99.9914335    0.12318        
fisttp    0.0001885    99.991622    0.02239    PentiumIV    x87
pcmpgtb    0.0001813    99.9918033    0.26875    PentiumMMX    MMX
pause    0.0001809    99.9919842    0.27995    PentiumIV    sse2
pshufb    0.0001794    99.9921636    0.15677    Core2    ssse3
cbw    0.0001664    99.99233    1.34378        
fisub    0.0001651    99.9924951    0.15677    x87    
pavgw    0.0001645    99.9926596    0.15677    PentiumIII    sse1
punpckhqdq    0.0001604    99.99282    0.11198    PentiumIV    sse2
paddsb    0.0001569    99.9929769    0.12318    PentiumMMX    MMX
fldpi    0.0001531    99.99313    0.42553    x87    
frndint    0.0001509    99.9932809    0.51511    x87    
fisubr    0.0001433    99.9934242    0.06718    x87    
sets    0.0001303    99.9935545    0.96304        
prefetch    0.00013    99.9936845    0.19036        
psubsb    0.0001294    99.9938139    0.11198    PentiumMMX    MMX
femms    0.0001284    99.9939423    0.27995    x87    
movlhps    0.0001262    99.9940685    0.17917    PentiumIII    sse1
ficomp    0.0001252    99.9941937    0.02239    x87    
cmovnp    0.0001167    99.9943104    0.10078    PentiumPro    
cvttsd2si    0.0001154    99.9944258    0.06718    PentiumIV    sse2
andps    0.0001151    99.9945409    0.16797    PentiumIII    sse1
minss    0.0001142    99.9946551    0.10078    PentiumIII    sse1
cvtps2pi    0.0001059    99.994761    0.19036    PentiumIII    sse1
comisd    0.0001028    99.9948638    0.04479    PentiumIV    sse2
mpsadbw    0.0001009    99.9949647    0.04479    Core2    sse4.1
ftst    0.0000958    99.9950605    0.04479    x87    
fyl2x    0.0000936    99.9951541    0.44792    x87    
maxss    0.0000898    99.9952439    0.12318    PentiumIII    sse1
fnstenv    0.0000876    99.9953315    0.04479    x87    
movlpd    0.0000873    99.9954188    0.06718    PentiumIV    sse2
sfence    0.0000857    99.9955045    0.34714    PentiumIII    sse1
movhpd    0.0000825    99.995587    0.07838    PentiumIV    sse2
bound    0.0000775    99.9956645    0.03359        
fnsave    0.0000749    99.9957394    0.05599    x87    
fbstp    0.0000724    99.9958118    0.02239    x87    
fscale    0.0000705    99.9958823    0.41433    x87    
frstor    0.0000683    99.9959506    0.10078    x87    
pswapd    0.0000664    99.996017    0.08958        
rdtsc    0.0000661    99.9960831    0.6047    Pentium1    
fbld    0.0000654    99.9961485    0.03359    x87    
pf2id    0.0000645    99.996213    0.08958        
fsincos    0.0000632    99.9962762    0.49272    x87    
f2xm1    0.0000588    99.996335    0.35834    x87    
movddup    0.0000566    99.9963916    0.05599    PentiumIV    sse3
fpatan    0.0000553    99.9964469    0.32474    x87    
movabs    0.0000541    99.996501    0.03359        
ptest    0.0000537    99.9965547    0.06718    Core2    sse4.1
fcos    0.0000522    99.9966069    0.41433    x87    
setns    0.0000518    99.9966587    0.6047        
cmovp    0.0000509    99.9967096    0.20156    PentiumPro    
andpd    0.0000496    99.9967592    0.04479        
cvtpi2ps    0.0000493    99.9968085    0.12318    PentiumIII    sse1
fsin    0.0000474    99.9968559    0.40313    x87    
ldmxcsr    0.0000465    99.9969024    1.03023    PentiumIII    sse1
bts    0.0000417    99.9969441    0.26875        
orps    0.0000411    99.9969852    0.10078    PentiumIII    sse1
fldln2    0.0000411    99.9970263    0.44792    x87    
maxps    0.0000408    99.9970671    0.20156    PentiumIII    sse1
fcmovnu    0.0000398    99.9971069    0.20156    PentiumPro    x87
fldl2e    0.0000395    99.9971464    0.38073    x87    
movntps    0.0000379    99.9971843    0.13437    PentiumIII    sse1
pcmpgtd    0.0000376    99.9972219    0.14557    PentiumMMX    MMX
stmxcsr    0.000037    99.9972589    1.01903    PentiumIII    sse1
movdq2q    0.000037    99.9972959    0.06718    PentiumIV    sse2
cvtsd2ss    0.000036    99.9973319    0.03359    PentiumIV    sse2
psignw    0.0000351    99.997367    0.06718    Core2    ssse3
fcompp    0.0000335    99.9974005    0.05599    x87    
vmwrite    0.0000329    99.9974334    0.03359    PentiumIV    sse2
minps    0.0000316    99.997465    0.17917    PentiumIII    sse1
subpd    0.0000313    99.9974963    0.08958        
pfacc    0.0000313    99.9975276    0.05599        
sqrtss    0.0000303    99.9975579    0.08958    PentiumIII    sse1
pmulhrsw    0.0000275    99.9975854    0.07838    Core2    ssse3
cvtdq2ps    0.0000268    99.9976122    0.10078    PentiumIV    sse2
sqrtsd    0.0000259    99.9976381    0.07838    PentiumIV    sse2
cvtss2sd    0.0000256    99.9976637    0.02239    PentiumIV    sse2
fxsave    0.000024    99.9976877    0.76147    PentiumPro    x87
rdmsr    0.0000237    99.9977114    0.06718    Pentium1    
andnps    0.0000237    99.9977351    0.13437    PentiumIII    sse1
fldlg2    0.0000224    99.9977575    0.14557    x87    
ffreep    0.0000224    99.9977799    0.03359    x87    
pushw    0.0000215    99.9978014    0.02239        
vpunpckhwd    0.0000205    99.9978219    0.03359        
movsldup    0.0000202    99.9978421    0.07838    PentiumIV    sse3
btr    0.0000202    99.9978623    0.25755        
fldenv    0.0000199    99.9978822    0.05599    x87    
cvtps2dq    0.0000199    99.9979021    0.11198    PentiumIV    sse2
prefetchw    0.0000196    99.9979217    0.06718        
cvttpd2dq    0.0000193    99.997941    0.03359    PentiumIV    sse2
cmplepd    0.0000193    99.9979603    0.03359        
vpaddw    0.0000189    99.9979792    0.02239        
vpunpckhqdq    0.000018    99.9979972    0.03359        
rcpss    0.000018    99.9980152    0.02239    PentiumIII    sse1
pblendw    0.0000174    99.9980326    0.03359    Core2    sse4.1
pextrw    0.0000167    99.9980493    0.08958    Core2    sse4.1
fstcw    0.0000167    99.998066    0.34714    x87    
pfsubr    0.0000164    99.9980824    0.05599        
rcpps    0.0000151    99.9980975    0.06718    PentiumIII    sse1
pcmpistri    0.0000151    99.9981126    0.03359    Core2    sse4.2
fprem1    0.0000142    99.9981268    0.10078    x87    
fstsw    0.0000139    99.9981407    0.06718    x87    
psubq    0.0000129    99.9981536    0.05599    PentiumMMX    SSE2
pinsrw    0.0000123    99.9981659    0.08958    PentiumIII    sse1
pi2fd    0.0000123    99.9981782    0.05599        
rsqrtss    0.000012    99.9981902    0.03359    PentiumIII    sse1
pfpnacc    0.000012    99.9982022    0.06718        
lzcnt    0.0000107    99.9982129    0.04479        
wrmsr    0.0000104    99.9982233    0.04479    Pentium1    
vpsraw    0.0000101    99.9982334    0.02239        
fyl2xp1    0.0000091    99.9982425    0.04479    x87    
fptan    0.0000091    99.9982516    0.14557    x87    
fnclex    0.0000091    99.9982607    0.07838    x87    
divps    0.0000091    99.9982698    0.11198    PentiumIII    sse1
vpunpckhbw    0.0000085    99.9982783    0.03359        
vpsubusb    0.0000085    99.9982868    0.02239        
movq2dq    0.0000085    99.9982953    0.05599    PentiumIV    sse2
vmread    0.0000079    99.9983032    0.03359    PentiumIV    sse2
sidtd    0.0000079    99.9983111    0.17917        
sgdtd    0.0000075    99.9983186    0.15677        
cmpless    0.0000075    99.9983261    0.02239        
vpavgb    0.0000072    99.9983333    0.03359        
unpckhpd    0.0000072    99.9983405    0.03359    PentiumIV    sse2
seto    0.0000072    99.9983477    0.02239        
minsd    0.0000069    99.9983546    0.05599    PentiumIV    sse2
prefetcht2    0.0000066    99.9983612    0.06718    PentiumIII    sse1
popw    0.0000066    99.9983678    0.02239        
pf2iw    0.0000066    99.9983744    0.02239        
cvttps2pi    0.0000066    99.998381    0.03359    PentiumIII    sse1
vpunpckhdq    0.0000063    99.9983873    0.02239        
fninit    0.0000063    99.9983936    0.08958    x87    
cwd    0.0000063    99.9983999    0.05599        
pinsrd    0.000006    99.9984059    0.03359    Core2    sse4.1
movmskps    0.000006    99.9984119    0.04479    PentiumIII    sse1
retw    0.0000056    99.9984175    0.02239        
lfence    0.0000056    99.9984231    0.06718    PentiumIV    sse2
vshufps    0.0000053    99.9984284    0.03359        
pmulhrw    0.0000053    99.9984337    0.05599        
pabsb    0.0000053    99.998439    0.03359    Core2    ssse3
maxsd    0.0000053    99.9984443    0.03359    PentiumIV    sse2
lgdtd    0.0000053    99.9984496    0.04479        
cmpltss    0.0000053    99.9984549    0.03359        
lss    0.000005    99.9984599    0.03359        
cmpxchg    0.000005    99.9984649    0.05599        
ltr    0.0000047    99.9984696    0.04479        
cmpnleps    0.0000047    99.9984743    0.04479        
btc    0.0000047    99.998479    0.04479        
sqrtps    0.0000044    99.9984834    0.04479        
sldt    0.0000044    99.9984878    0.05599        
vpalignr    0.0000041    99.9984919    0.02239        
prefetcht1    0.0000041    99.998496    0.03359    PentiumIII    sse1
popaw    0.0000041    99.9985001    0.02239        
pextrd    0.0000041    99.9985042    0.03359    Core2    sse4.1
fxrstor    0.0000041    99.9985083    0.05599    PentiumPro    x87
finit    0.0000041    99.9985124    0.14557    x87    
cvtpi2pd    0.0000041    99.9985165    0.04479    PentiumIV    sse2
cmpnless    0.0000041    99.9985206    0.03359        
cmpleps    0.0000041    99.9985247    0.06718        
xadd    0.0000037    99.9985284    0.05599        
vpblendw    0.0000037    99.9985321    0.02239        
rsqrtps    0.0000037    99.9985358    0.03359    PentiumIII    sse1
vpsubusw    0.0000034    99.9985392    0.03359        
cvttps2dq    0.0000034    99.9985426    0.02239    PentiumIV    sse2
andnpd    0.0000034    99.998546    0.03359    PentiumIV    sse2
vpsrld    0.0000031    99.9985491    0.02239        
fxtract    0.0000031    99.9985522    0.02239    x87    
fldl2t    0.0000031    99.9985553    0.02239    x87    
vpand    0.0000028    99.9985581    0.03359        
pfcmpge    0.0000028    99.9985609    0.05599        
orpd    0.0000028    99.9985637    0.03359    PentiumIV    sse2
movmskpd    0.0000028    99.9985665    0.02239    PentiumIV    sse2
maxpd    0.0000028    99.9985693    0.03359    PentiumIV    sse2
cmovno    0.0000028    99.9985721    0.02239    PentiumPro    
callw    0.0000028    99.9985749    0.02239        
vpxor    0.0000025    99.9985774    0.02239        
maskmovq    0.0000025    99.9985799    0.02239    PentiumIII    sse1
vpsubw    0.0000022    99.9985821    0.02239        
pinsrb    0.0000022    99.9985843    0.03359    Core2    sse4.1
cmpnltss    0.0000022    99.9985865    0.04479        
cmpltps    0.0000022    99.9985887    0.02239        
vpslldq    0.0000018    99.9985905    0.02239        
vpmaddwd    0.0000018    99.9985923    0.02239        
vmclear    0.0000018    99.9985941    0.02239    PentiumIV    sse2
pushfw    0.0000018    99.9985959    0.02239        
lidtd    0.0000018    99.9985977    0.03359        
xlat    0.0000015    99.9985992    0.02239        
vpunpcklqdq    0.0000015    99.9986007    0.03359        
vpsrldq    0.0000015    99.9986022    0.02239        
vpshufb    0.0000015    99.9986037    0.02239        
vpcmpeqb    0.0000015    99.9986052    0.02239        
vmxon    0.0000015    99.9986067    0.02239    PentiumIV    sse2
vmxoff    0.0000015    99.9986082    0.02239    PentiumIV    sse2
vmptrld    0.0000015    99.9986097    0.02239    PentiumIV    sse2
psignd    0.0000015    99.9986112    0.02239    Core2    ssse3
packusdw    0.0000015    99.9986127    0.03359    Core2    sse4.1
maskmovdqu    0.0000015    99.9986142    0.02239    PentiumIV    sse2
cmpnltsd    0.0000015    99.9986157    0.02239        
cmpnlepd    0.0000015    99.9986172    0.02239        
cmpeqps    0.0000015    99.9986187    0.02239        
cmpeqpd    0.0000015    99.9986202    0.02239        
vpunpcklwd    0.0000012    99.9986214    0.02239        
vpaddsw    0.0000012    99.9986226    0.02239        
vmovss    0.0000012    99.9986238    0.02239        
vmovsd    0.0000012    99.998625    0.02239        
retfw    0.0000012    99.9986262    0.02239        
pushaw    0.0000012    99.9986274    0.02239        
popfw    0.0000012    99.9986286    0.02239        
lldt    0.0000012    99.9986298    0.02239        
fsave    0.0000012    99.998631    0.04479    x87    
fclex    0.0000012    99.9986322    0.02239    x87    
cmpxchg8b    0.0000012    99.9986334    0.04479    Pentium1    
vpsignd    0.0000009    99.9986343    0.02239        
vpaddb    0.0000009    99.9986352    0.02239        
vmsave    0.0000009    99.9986361    0.02239        
vmpsadbw    0.0000009    99.998637    0.02239        
vmload    0.0000009    99.9986379    0.02239        
cvtss2si    0.0000009    99.9986388    0.02239    PentiumIII    sse1
xgetbv    0.0000006    99.9986394    0.02239    Core2    
vpsubb    0.0000006    99.99864    0.02239        
vpsrlw    0.0000006    99.9986406    0.02239        
vpsadbw    0.0000006    99.9986412    0.02239        
vpmullw    0.0000006    99.9986418    0.02239        
vpmaddubsw    0.0000006    99.9986424    0.02239        
vmrun    0.0000006    99.998643    0.02239        
vmlaunch    0.0000006    99.9986436    0.02239    PentiumIV    sse2
stgi    0.0000006    99.9986442    0.02239        
smsw    0.0000006    99.9986448    0.02239        
frstorw    0.0000006    99.9986454    0.02239    x87    
fldenvw    0.0000006    99.998646    0.02239    x87    
clgi    0.0000006    99.9986466    0.02239        
xsha256    0.0000003    99.9986469    0.01119        
xrstor    0.0000003    99.9986472    0.01119    Core2    
xcrypt-ecb    0.0000003    99.9986475    0.01119        
xcrypt-ctr    0.0000003    99.9986478    0.01119        
xcrypt-cfb    0.0000003    99.9986481    0.01119        
wbinvd    0.0000003    99.9986484    0.01119        
vxorps    0.0000003    99.9986487    0.01119        
vxorpd    0.0000003    99.998649    0.01119        
vunpcklps    0.0000003    99.9986493    0.01119        
vunpckhps    0.0000003    99.9986496    0.01119        
vucomisd    0.0000003    99.9986499    0.01119        
vsubss    0.0000003    99.9986502    0.01119        
vsqrtps    0.0000003    99.9986505    0.01119        
vsqrtpd    0.0000003    99.9986508    0.01119        
vshufpd    0.0000003    99.9986511    0.01119        
vrsqrtss    0.0000003    99.9986514    0.01119        
vrcpps    0.0000003    99.9986517    0.01119        
vpunpckldq    0.0000003    99.998652    0.01119        
vpsubq    0.0000003    99.9986523    0.01119        
vpsrlq    0.0000003    99.9986526    0.01119        
vpsllw    0.0000003    99.9986529    0.01119        
vpshufhw    0.0000003    99.9986532    0.01119        
vpshld    0.0000003    99.9986535    0.01119        
vprotd    0.0000003    99.9986538    0.01119        
vpmulhuw    0.0000003    99.9986541    0.01119        
vpmadcswd    0.0000003    99.9986544    0.01119        
vpextrw    0.0000003    99.9986547    0.01119        
vpavgw    0.0000003    99.998655    0.01119        
vpandn    0.0000003    99.9986553    0.01119        
vpackuswb    0.0000003    99.9986556    0.01119        
vpacksswb    0.0000003    99.9986559    0.01119        
vorps    0.0000003    99.9986562    0.01119        
vmulss    0.0000003    99.9986565    0.01119        
vmresume    0.0000003    99.9986568    0.01119    PentiumIV    sse2
vmptrst    0.0000003    99.9986571    0.01119        
vmovupd    0.0000003    99.9986574    0.01119        
vmovsldup    0.0000003    99.9986577    0.01119        
vmovntps    0.0000003    99.998658    0.01119        
vmovmskpd    0.0000003    99.9986583    0.01119        
vmovlps    0.0000003    99.9986586    0.01119        
vmovlpd    0.0000003    99.9986589    0.01119        
vmovhlps    0.0000003    99.9986592    0.01119        
vmovdqu    0.0000003    99.9986595    0.01119        
vmovdqa    0.0000003    99.9986598    0.01119        
vmovd    0.0000003    99.9986601    0.01119        
vmovaps    0.0000003    99.9986604    0.01119        
vminss    0.0000003    99.9986607    0.01119        
vmaskmovdqu    0.0000003    99.998661    0.01119        
vhsubpd    0.0000003    99.9986613    0.01119        
vfrczpd    0.0000003    99.9986616    0.01119        
vfmadd213ss    0.0000003    99.9986619    0.01119        
vfmadd213sd    0.0000003    99.9986622    0.01119        
verw    0.0000003    99.9986625    0.01119        
verr    0.0000003    99.9986628    0.01119        
vcvttsd2si    0.0000003    99.9986631    0.01119        
vcvtss2sd    0.0000003    99.9986634    0.01119        
vcvtsi2sd    0.0000003    99.9986637    0.01119        
vcvtps2pd    0.0000003    99.998664    0.01119        
vcvtpd2dq    0.0000003    99.9986643    0.01119        
vcvtdq2pd    0.0000003    99.9986646    0.01119        
vcmpsd    0.0000003    99.9986649    0.01119        
vandps    0.0000003    99.9986652    0.01119        
vandpd    0.0000003    99.9986655    0.01119        
vandnps    0.0000003    99.9986658    0.01119        
vandnpd    0.0000003    99.9986661    0.01119        
vaddsubpd    0.0000003    99.9986664    0.01119        
vaddsd    0.0000003    99.9986667    0.01119        
vaddpd    0.0000003    99.998667    0.01119        
ud1    0.0000003    99.9986673    0.01119        
sysret    0.0000003    99.9986676    0.01119        
sysexit    0.0000003    99.9986679    0.01119    PentiumII    
sysenter    0.0000003    99.9986682    0.01119    PentiumII    
syscall    0.0000003    99.9986685    0.01119        
setno    0.0000003    99.9986688    0.01119        
rsm    0.0000003    99.9986691    0.01119        
rdpmc    0.0000003    99.9986694    0.01119    PentiumMMX    
popcnt    0.0000003    99.9986697    0.01119    Core2    
pmaxsb    0.0000003    99.99867    0.01119    Core2    sse4.1
phsubbq    0.0000003    99.9986703    0.01119        
pfrsqrt    0.0000003    99.9986706    0.01119        
pfrsqit1    0.0000003    99.9986709    0.01119        
pfrcpit2    0.0000003    99.9986712    0.01119        
pfnacc    0.0000003    99.9986715    0.01119        
pcmpgtq    0.0000003    99.9986718    0.01119    Core2    sse4.2
movshdup    0.0000003    99.9986721    0.01119    PentiumIV    sse3
movnti    0.0000003    99.9986724    0.01119    PentiumIV    sse2
movntdqa    0.0000003    99.9986727    0.01119    Core2    sse4.1
minpd    0.0000003    99.998673    0.01119    PentiumIV    sse2
mfence    0.0000003    99.9986733    0.01119    PentiumIV    sse2
lsl    0.0000003    99.9986736    0.01119        
lmsw    0.0000003    99.9986739    0.01119        
lgs    0.0000003    99.9986742    0.01119        
lfs    0.0000003    99.9986745    0.01119        
leavew    0.0000003    99.9986748    0.01119        
lar    0.0000003    99.9986751    0.01119        
jmpw    0.0000003    99.9986754    0.01119        
jcxz    0.0000003    99.9986757    0.01119        
iretw    0.0000003    99.998676    0.01119        
invvpid    0.0000003    99.9986763    0.01119    Core2    VMX
invlpga    0.0000003    99.9986766    0.01119        
invlpg    0.0000003    99.9986769    0.01119        
invept    0.0000003    99.9986772    0.01119    Core2    VMX
invd    0.0000003    99.9986775    0.01119        
haddps    0.0000003    99.9986778    0.01119    PentiumIV    sse3
getsec    0.0000003    99.9986781    0.01119    Core2    SMX
fstenv    0.0000003    99.9986784    0.01119    x87    
frstpm    0.0000003    99.9986787    0.01119    x87    
fnsetpm    0.0000003    99.998679    0.01119    x87    
fnop    0.0000003    99.9986793    0.01119    x87    
fneni    0.0000003    99.9986796    0.01119    x87    
fndisi    0.0000003    99.9986799    0.01119    x87    
fincstp    0.0000003    99.9986802    0.01119    x87    
ficom    0.0000003    99.9986805    0.01119    x87    
ffree    0.0000003    99.9986808    0.01119    x87    
fdecstp    0.0000003    99.9986811    0.01119    x87    
enterw    0.0000003    99.9986814    0.01119        
cvtsd2si    0.0000003    99.9986817    0.01119    PentiumIV    sse2
cmpps    0.0000003    99.998682    0.01119    PentiumIII    sse1
cmpnltps    0.0000003    99.9986823    0.01119        
cmpneqps    0.0000003    99.9986826    0.01119        
cmpltsd    0.0000003    99.9986829    0.01119        
cmplesd    0.0000003    99.9986832    0.01119        
cmovo    0.0000003    99.9986835    0.01119    PentiumPro    
clts    0.0000003    99.9986838    0.01119        
clflush    0.0000003    99.9986841    0.01119    PentiumIV    sse2
addsubps    0.0000003    99.9986844    0.01119    PentiumIV    sse3

?ui=2&ik=a5b4af97d0&view=att&th=132b565c72c6ac9f&attid=0.1&disp=inline&realattid=f_gt5se18u0&zw

(j'ai eu la flemme de finir la colonne sur les architectures et extensions)
On voit que quasiment une instruction sur deux est un "mov", et que seulement 7 instructions sont utilisées dans 75% des cas (mov, call, lea, push, jmp, test, add). Ce qui veut dire que quand vous écrivez une ligne de code par exemple C ou C++, vous avez (en quelque sorte... tongue) des chances pour que la moitié des instructions compilées soient de simples "mov" big_smile
On voit aussi que la quasi-totalité des binaires sont compatibles i686, avec vraiment aucune utilisation des extensions sse et mmx. Les rares fichiers utilisant des instructions exotiques sont ou bien des codes systèmes, ou des codes obfusqués (skype ayant l'air d'être par exemple diablement obfusqué, avec des vingtaines d'opcodes non-documentés).

Bon encore une fois, c'est un test limité, car c'est particulier à mon PC, x86 32 bits, et sous Ubuntu. J'ai pas inclus le noyau également.

Dernière modification par ehmicky (Le 29/09/2011, à 15:53)


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#2 Le 29/09/2011, à 16:08

Nasman

Re : [x86]Instructions les plus fréquentes

Ce n'est pas forcément représentatif d'un "bon" code. Effectivement les mov sont les instructions les plus employées, les push, pop proviennent souvent de l'empilement des paramètres avant appel à un sous programme.

Ceci provient d'un compromis des langages de plus haut niveau qui utilisent des routines standard déjà existantes plutôt que de réécrire (souvent de façon plus succinte) quelque chose qui existe déjà.

Genre :

bla 
bla
bla
push truc
push machin
push bidule
call routine existante

au lieu de

bla 
bla
bla
machin
bidule

Avec

machin
bidule

qui fait la même chose que

routine existante

PC fixe sous Bionic 64 bits et portable avec Focal 64 bits

Hors ligne

#3 Le 29/09/2011, à 16:24

Compte supprimé

Re : [x86]Instructions les plus fréquentes

bonjour ehmicky,
Cela signifie-t-il que ce n'est pas optimisé ?

Dernière modification par Compte supprimé (Le 29/09/2011, à 16:33)

#4 Le 29/09/2011, à 16:33

Bousky

Re : [x86]Instructions les plus fréquentes

L_d_v_c@ a écrit :

Cela signifie-t-il que ce n'est pas optimisé ?

En fait c'est un compromis entre lisibilité du code, durée d'exécution et taille de l'exécutable.


Linux qui plante complètement ? Plus rien ne répond ? On peut toujours le redémarrer proprement :
Alt + SysRq + REISUB (Retourne En Islande Sur Un Bateau !)

Hors ligne

#5 Le 29/09/2011, à 16:37

ehmicky

Re : [x86]Instructions les plus fréquentes

Euh en fait effectivement la plupart des binaires et libraries sous Ubuntu sont précompilées et ne tiennent pas en compte les dernières extensions sorties, donc par exemple pas de "vector optimization".
Par contre le fait qu'il y ait plein de "mov" ne signifie pas que c'est pas optimisé. Par exemple, les entrées de frames sont typiquement compilées par gcc avec "push ebp ; mov ebp, esp ; sub esp, X" et non "enter X, 0", parce que c'est plus efficient, même si ça prend plus de place en mémoire (et comme le dit Bouksy, moins lisible au désassemblage).

Dernière modification par ehmicky (Le 29/09/2011, à 16:39)


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#6 Le 29/09/2011, à 16:52

Compte supprimé

Re : [x86]Instructions les plus fréquentes

Ok merci.

#7 Le 30/09/2011, à 09:25

Compte supprimé

Re : [x86]Instructions les plus fréquentes

Et d'un point de vue énergétique, non optimisé pour être "lisible" génère donc de gros codes, demandant plus d'énergie pour fonctionner ? Facture d'électricité plus importante, équivalente à une autonomie réduite sur batteries sur portables ?

#8 Le 30/09/2011, à 12:19

ehmicky

Re : [x86]Instructions les plus fréquentes

Je dirais que si c'est plus efficient, c'est que ça demande moins de cycles CPU, donc moins de consommation d'énergie.
Par exemple, sur un Intel486 :
  "enter X,0" demande 14 cycles
  "push ebp ; mov ebp, esp ; sub esp,X" demande 1+1+2 = 4 cycles
Après, ça partirait du principe que les cycles CPU consomment tous la même énergie, et je suis pas électronicien, si un ingénieur électronicien peut confirmer ça big_smile
Est-ce que deux instructions demandant le même nombre de cycle, mais l'une ne tenant que sur 1 octet, l'autre sur 3, demandent la même énergie ?

Dernière modification par ehmicky (Le 30/09/2011, à 12:39)


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#9 Le 30/09/2011, à 12:51

Compte supprimé

Re : [x86]Instructions les plus fréquentes

Je suis d'accord avec toi que dans l'ensemble plus il y a de cycles consommés, plus cela semble consommer.
"Nop" est peut-être l'instruction qui consomme le moins.
Ensuite je demandais l'optimisation par rapport à certain processeurs qui ont des jeux d'instructions étendues et dont l'emploi pourrait justement raccourcir le code, ou le temps puisque tu as bien souligné que trois instructions peuvent être plus économes qu'une seule instruction en cycles d'horloges (un peu comme autrefois faire un décalage de bits plutôt que de faire une multiplication ×2 sur 68k).

#10 Le 30/09/2011, à 14:15

ehmicky

Re : [x86]Instructions les plus fréquentes

Ensuite je connais pas les processeurs RISC (si c'est ce à quoi tu fais référence)
et me relisant, je me dis qu'il faut sûrement aussi prendre en compte le parallélisme du CPU : out-of-order instructions, register renaming, etc., mais je n'y connais rien sur le sujet, mais je me souviens que d'autres membres du forum oui, donc s'ils peuvent éclairer nos lanternes sur le sujet (et corriger les bêtises que j'ai dû dire dans le post précédent... smile )


Stego++, bibliothèque libre de stéganographie (avec cryptographie), à venir !
Besoin de votre aide :
Stats sur les compilateurs C++ les plus utilisés
Comment utiliser les archetypes C++ ?

Hors ligne

#11 Le 30/09/2011, à 15:20

Compte supprimé

Re : [x86]Instructions les plus fréquentes

Les Motorola 68k sont de vrais CISC (sauf le 68060 qui est un RISC) et justement il était plus avantageux sur des CISC de faire des décalages de bits si possible que des multiplications qui consommaient plusieurs cycles d'horloges.
(j'ai vu beaucoup de démonstration 40ko et 64kio qui affichaient 5 mn de vidéo en moyenne avec un .mod sonore en fond sur Motorola 68k, et je ne connais que Zoom3 sur PC qui arrive à la cheville et dépasse même les anciennes démonstrations grâce à la programmation en code machine x86 d'un PC en exploitant la carte graphique)