instruçâo

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

instruçâo

Mensagempor antonio » 16 Mar 2008 05:53

Pessoal !

Analizando este pedaço de codigo abaixo encontrei algo estranho pelo menos para mim è o seguinte, como devo interpertar esta linha de codigo abaixo;
****}while(bit_test(led_on,3)==0);
Estou confuso devido ao depois de testar o bit,3 da variavel led-on aparece isto ==0); nao sei como devo ler ou interpetar isto, algem pode ajudar??
desde jà agradeço

o resto do codigo està abaixo.

do{
output_a(led_on);
rotate_left(&led_on,1);
delay_ms(300);
}while(bit_test(led_on,3)==0);
antonio
Byte
 
Mensagens: 209
Registrado em: 15 Out 2006 12:34

Mensagempor ivan » 16 Mar 2008 11:38

Antonio,

"==0" => significa se é igual a 0(zero)

Ou seja, testa se o resultado/retorno da função bit_test é igual a zero.

Em C, o operador "=" serve somente para atribuição de valores.
O operador "==" serve para comparar igualdades.
"A mente que se abre a uma nova idéia jamais volta ao seu tamanho original." (Albert Einstein).
Avatar do usuário
ivan
Word
 
Mensagens: 618
Registrado em: 12 Out 2006 21:27

Mensagempor antonio » 16 Mar 2008 12:42

Brigado Ivan por ajudar!!

Cà esta a confusão porque eu custumo fazer assim;
while(!bit_test(led_on,3)); com o "!"

Sendo assim o fazer assim"while(bit_test(led_on,3)==0); ou assim"while(!bit_test(led_on,3));" o resultado è o mesmo??

Grato
antonio
Byte
 
Mensagens: 209
Registrado em: 15 Out 2006 12:34

Mensagempor ivan » 16 Mar 2008 16:10

while(!bit_test(led_on,3)); com o "!"

Sendo assim o fazer assim"while(bit_test(led_on,3)==0); ou assim"while(!bit_test(led_on,3));" o resultado è o mesmo??


Usar o while(bit_test(led_on,3)==0) fica mais legível, porém mais lento pq faz uma instrução igual antes de avaliar o while.

Com "while(!bit_test(led_on,3))" o not é uma instrução mais rápida que o "==", mas dificulta um pouco o entendimento, só isso.

As estratégias de programação são equivalentes sim.
"A mente que se abre a uma nova idéia jamais volta ao seu tamanho original." (Albert Einstein).
Avatar do usuário
ivan
Word
 
Mensagens: 618
Registrado em: 12 Out 2006 21:27

Mensagempor antonio » 16 Mar 2008 16:18

Grande Ivan!
Vc tirou minha duvida....Valeu!!
Até++
antonio
Byte
 
Mensagens: 209
Registrado em: 15 Out 2006 12:34

Mensagempor LeandroPIC » 17 Mar 2008 12:37

respondi no forum da labtools
Avatar do usuário
LeandroPIC
Byte
 
Mensagens: 163
Registrado em: 06 Jul 2007 12:19


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x