Autor Tema: Cómo se testea un bit en C?  (Leído 2061 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado teve

  • PIC12
  • **
  • Mensajes: 65
Cómo se testea un bit en C?
« en: 07 de Mayo de 2005, 12:17:00 »
Hola compañeros, estoy investigando en ejemplos y no  encuentro nada, necesitaria saber como se puede testear un bit utilizando el lenguane c, ejemplo:
dato = 0b10000000 ; como leo por ejemplo el valor de la ultima posicion, si es un 1 o un cero de la variable dato.Un saludo.RollEyes

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: Cómo se testea un bit en C?
« Respuesta #1 en: 07 de Mayo de 2005, 14:37:00 »
Bit= ((valor & 0x80)!=0);

Si en vez de ver el bit más significativo, quieres ver otro, vas cambiando el 0x80 por otros valores.

Desconectado Lager.

  • Moderadores
  • PIC18
  • *****
  • Mensajes: 477
RE: Cómo se testea un bit en C?
« Respuesta #2 en: 07 de Mayo de 2005, 14:44:00 »
Asi es pana Teve,
Una forma es usando la mascara que te comenta el pana nocturno66 ,para saber el valor.. otra es usando el comando BIT_TEST():
Ejemplo:
Formato:
value = bit_test (var, bit)

donde bit es un numero de 0 a 31;var es la variable que contiene el valor del cual vas a testear dicho bit, puede ser de 8,16 o 32 bits(dword) ; y value es donde pondra ese bit para ser revizado dandote un 0 o 1 logico...

Salu2 pana Sonrisa

Desconectado teve

  • PIC12
  • **
  • Mensajes: 65
RE: Cómo se testea un bit en C?
« Respuesta #3 en: 07 de Mayo de 2005, 15:34:00 »
Un saludo, abrazo  y agradecimiento a los dosGiño.