Bonjour,
existe t'il des fonctions pour convertir un nombre décimal en binaire et inversement svp ?
Merci
Version imprimable
Bonjour,
existe t'il des fonctions pour convertir un nombre décimal en binaire et inversement svp ?
Merci
salut,
voici un lien:
http://batch.xoo.it/t1690-bat-Coneve...al-en-hexa.htm
Bon courage.
Merci pour ta réponse !
j'ai essayé SET BIN=101001 SET /a BIN=0%BIN% mais ça ne fonctionne pas :s
imaginons que tu veux savoir ce que la valeur décimale 57 donne en binaire :
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 @echo off setlocal enabledelayedexpansion call :BIN 57 PAUSE exit :BIN SET CNombreDec=%1 SET BIN_RETURN= FOR %%B IN (32768,16384,8192,4096,2048,1024,512,256,128,64,32,16,8, 4, 2, 1) DO ( SET /a Cbit=!CNombreDec!/%%B SET /a CNombreDec=!CnombreDec!%%%%B SET BIN_RETURN=!BIN_RETURN!!Cbit! ) echo !BIN_RETURN!
merci beaucoup :)
en fait j'ai parlé trop vite :s
le décimal en binaire c'est bon mais le binaire en décimal je n'y arrive vraiment pas ...
je ne sais vraiment pas comment me servir de SET BIN=101001 SET /a BIN=0%BIN%
quelqu'un aurait une idée ?
J'ai écrit ce code qui te convertit une valeurs numériques en decimal.
Si tu as des questions n'hésite pas...
AmicalementCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 ::::NUMERIQUE VERS DECIMAL ::::PAR SACHADEE ::::02-2013 @echo off :::::DEFINIR LA VALEUR BINAIRE ICI::::: set num-bin=100000100 :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: cls set puissance2=1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 setlocal enabledelayedexpansion enableextensions :::ON DECOMPOSE LA VALEUR NUMERIQUES PAR SUBSTITUTION set num-bin=%num-bin:1=1 % set num-bin=%num-bin:0=0 % set num-bin=%num-bin:~0,-1% echo.#%num-bin%# :::ON INVERSE L ORDRE POUR AVOIR LA PLUS PETITE VALEUR EN PREMIER for %%a in (%num-bin%) do (set val=%%a set num-bin-inv=!val! !num-bin-inv!) set num-bin-inv=!num-bin-inv:~0,-1! :::ON BOUCLE SUR LA VALEUR INVERSEE SI ON A 1 ON ADDITIONE :::L'EQUIVALENCE DE LA LISTE DES PUISSANCES 2 set compteur=1 set val=0 for %%a in (!num-bin-inv!) do (if %%a==1 (set compteur1=1 for %%b in (%puissance2%) do (if !compteur!==!compteur1! (set /a val=!val!+%%b) set /a compteur1+=1)) set /a Compteur+=1) echo.&echo.RESULTAT : !val!&echo. :end endlocal
merci beaucoup ça marche nickel :)