elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  decimal a binario con bitset
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: decimal a binario con bitset  (Leído 2,684 veces)
jorgediazbass

Desconectado Desconectado

Mensajes: 8


Ver Perfil
decimal a binario con bitset
« en: 29 Julio 2016, 07:44 am »

me encontraba viendo que existen métodos de convertir de decimal a binario mediante recursividad y otros, pero revisando tanto las librerías pensé que debería existir algo que trabajara a bajo nivel y conseguí la librería bitset, tiene una serie de métodos interesantes y que resultaran muy útiles, este code es solo un ejemplo básico, se que podría adaptar para poder manejar double.
Código
  1. /*
  2. Name: decimal a binario menores o iguales a 32bits
  3. Copyright: jorge diaz
  4. Author: jorge diaz
  5. Date: 29/07/16 01:20
  6. Description: se puede mejorar, por ahora solo pruebo los recursos de la librería
  7. */
  8.  
  9. #include <bitset>
  10. int main()
  11. {
  12. std::bitset <0x20> _;
  13. scanf("%d",&_);
  14. std::string __ = _.to_string();
  15. const char *p=__.c_str();
  16. for(register short _=0x0;_<=0x20;_++)
  17. {
  18. if(_%0x4==0x0)
  19. {
  20. printf(" ");
  21. }
  22. printf("%c",*p);
  23. *p++;
  24. }
  25. return 0;
  26. }
  27.  


En línea

AlbertoBSD
Programador y
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.696


🏴 Libertad!!!!!


Ver Perfil WWW
Re: decimal a binario con bitset
« Respuesta #1 en: 30 Julio 2016, 23:52 pm »

Se puede trabajar a mas bajo nivel usando operadores de bits.

Código
  1. char *binario(unsigned int n){
  2.  static char b[33];
  3.  int i =0;
  4.  do{
  5.     b[i++] (n &1 ) ? '1' : '0';
  6.     n = n>>1;
  7.  }while(n);
  8.  b[i] = '\0';
  9.  return b;
  10. }


« Última modificación: 30 Julio 2016, 23:55 pm por AlbertoBSD » En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: decimal a binario con bitset
« Respuesta #2 en: 31 Julio 2016, 01:57 am »

Código
  1. std::bitset <0x20> _;
  2. scanf("%d",&_);
  3.  

Y bueno, ten en cuenta que es una clase. Funciona, sí, pero no es la forma de asignarle valores. Tiene un constructor al que le puedes enviar el valor inicial.
En línea

jorgediazbass

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: decimal a binario con bitset
« Respuesta #3 en: 31 Julio 2016, 21:06 pm »

Y bueno, ten en cuenta que es una clase. Funciona, sí, pero no es la forma de asignarle valores. Tiene un constructor al que le puedes enviar el valor inicial.

cual seria el constructor? xq tengo entendido que se llaman igual que clase osea seria algo asi?
Código
  1. bitset.bitset(argumento);
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: decimal a binario con bitset
« Respuesta #4 en: 31 Julio 2016, 21:55 pm »

Código
  1. std::bitset b(valor);
http://www.cplusplus.com/reference/bitset/bitset/bitset/
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[ code=C++] Conversor binario-decimal-binario « 1 2 »
Programación C/C++
Chonk 11 23,575 Último mensaje 9 Julio 2010, 17:52 pm
por Debci
Pasar decimal a binario
.NET (C#, VB.NET, ASP)
Cuasar 7 7,631 Último mensaje 8 Febrero 2011, 04:00 am
por Cuasar
[BATCH] Decimal > Binario
Scripting
Puntoinfinito 7 8,684 Último mensaje 17 Mayo 2019, 13:02 pm
por d.gromero
swing binario decimal
Java
winnipu 2 3,471 Último mensaje 19 Mayo 2014, 18:36 pm
por winnipu
Decimal a binario
Programación C/C++
Zeit 3 1,516 Último mensaje 19 Marzo 2016, 23:20 pm
por Zeit
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines