base2=new Array('0','1');
base16=new Array('0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F');

function BintoDec(chaine)
{
	resultat=0;
	for(i=0;i<chaine.length;i++)
		for(j=0;j<base2.length;j++)
			if(chaine.charAt(i)==base2[j])
				resultat+=j*Math.pow(2,~(i-chaine.length));
	return resultat;
}

function DectoBin(nombre)
{
	resultat='';
	while(nombre)
	{
		reste=nombre%2;
		nombre=Math.floor(nombre/2);
		resultat=reste+resultat;
	}
	return resultat;
}

function HextoDec(chaine)
{
	resultat=0;
	for(i=0;i<chaine.length;i++)
		for(j=0;j<base16.length;j++)
			if(chaine.charAt(i)==base16[j])
				resultat+=j*Math.pow(16,~(i-chaine.length));
	return resultat;
}

function DectoHex(nombre)
{
	resultat2='';
	binaire=DectoBin(nombre);
	for(i2=0;i2<binaire.length;i2+=4)
		resultat2=base16[BintoDec(binaire.substring(i2,i2+4))]+resultat2;
	return resultat2;
}