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

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [duda] ¿Unsigned int de 64 bits?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [duda] ¿Unsigned int de 64 bits?  (Leído 1,015 veces)
oxydec

Desconectado Desconectado

Mensajes: 42



Ver Perfil
[duda] ¿Unsigned int de 64 bits?
« en: 28 Octubre 2012, 23:29 pm »

Hola, me ha picado el interes por el tema de las operaciones bitwise y tengo un par de dudas:

1) me gustaria saber si es posible y como definir un tipo entero sin signo de 64 bits
2) ¿como puedo contar el numero de bits "1" en un tipo como el anterior u otra variable? Preferiblemente con el minimo de instrucciones posible.


En línea

xiruko


Desconectado Desconectado

Mensajes: 437


Ver Perfil
Re: [duda] ¿Unsigned int de 64 bits?
« Respuesta #1 en: 28 Octubre 2012, 23:40 pm »

1) fijate en este hilo donde usan un entero de 64 bits:
http://foro.elhacker.net/programacion_cc/ayuda_con_ejercicio_en_c-t374559.0.html

2) suponiendo que a sea un entero de 64 bits:
Código
  1. for (i=0; i<64; i++)
  2.     if ((a>>i) & 1) contador++;

un saludo!


En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: [duda] ¿Unsigned int de 64 bits?
« Respuesta #2 en: 29 Octubre 2012, 02:23 am »

2) ¿como puedo contar el numero de bits "1" en un tipo como el anterior u otra variable? Preferiblemente con el minimo de instrucciones posible.
Utilizando un bucle mas o menos así:
Código
  1. for (num_bits = 0; num != 0; num &= num - 1)
  2.   num_bits++;

* Al verificar que el numero es distinto de cero sabemos que existe al menos un bit a uno.

* La expresión "num & num - 1" desactiva el bit menos significativo.

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
duda 16 o 32 bits
ASM
freak7z 3 2,424 Último mensaje 16 Julio 2009, 22:51 pm
por Eternal Idol
Duda en conversion de 24 bits a 32 bits
Programación C/C++
armizh 6 2,566 Último mensaje 23 Enero 2012, 07:03 am
por BlackZeroX (Astaroth)
Como es que un unsigned tiene 16 bits?
Programación C/C++
traviatØ 2 1,276 Último mensaje 24 Octubre 2012, 12:58 pm
por xiruko
[Duda] Unsigned int y enumeraciones
Programación C/C++
xRodak 5 1,506 Último mensaje 6 Febrero 2014, 02:20 am
por rir3760
unsigned int 8 , unsigned int 8 y demas [DUDA] « 1 2 »
Programación C/C++
bash 10 2,269 Último mensaje 9 Abril 2015, 20:08 pm
por bash
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines