Convertir Binario : Decimal con java
Revisando mi codigoteca me encontre un par de metodos en java, los cree como parte de un sistema y sirven para convertir un valor binaro a decimal o viceversa.
/** Metodo: String dec2bin(int, int, int) @param num valor base decimal a convertir @param bitSeparacion hace una separacion entre los bits al llegar al bit numero=valor de bitSeparacion @param nBits longitud de la cadena generada @return una cadena con la representacion base binaria */ private static String dec2bin(int num, int bitSeparacion, int nBits){ int _1erBit=(int)(Math.log(num)/Math.log(2)); int aux=0; String repreBin=""; for(int i=nBits-1;i>-1;i--){ if(i>_1erBit) repreBin+="0"; else if(aux+Math.pow(2,i) <= num){ aux+=Math.pow(2,i); repreBin+="1"; } else repreBin+="0"; if(nBits-i == bitSeparacion) repreBin+=" "; } return repreBin; }
Metodo convertir binario a decimal
/** Metodo: int bin2dec(String) @param cadena que representa un valor base binario @return valor convertido a base decimal */ private static int bin2dec(String repreBin){ int res=0; StringTokenizer st = new StringTokenizer(repreBin); String repBin2 = st.nextToken(); if(st.hasMoreTokens()) repBin2 += st.nextToken(); for(int i=repBin2.length()-1;i>=0;i--) res+=(repBin2.charAt(i)=='1'?Math.pow(2,(repBin2.length()-i-1)):0); return res; }
Comentarios
Publicar un comentario