Vamos supor que eu criei uma variável com o nome "num". Se num valer -10, eu quero que passe a valer 10. Se num valer 10, eu quero que continue valendo 10. Ou seja, se for negativa, quero torná-la positiva, e se for positiva, quero mantê-la positiva.
Sei que dá pra fazer isso usando if's e funções matemáticas, mas o que eu quero mesmo é fazer uma manipulação nos bits da variável. Quero mudar o último bit da variável, ou seja, aquela que quando é 0 significa que o número é positivo e quando é 1 significa que o número é negativo. Quero mudá-la pra passar a ser 0 se for 1, e continuar sendo 0 se for 0.
Sei que existem aqueles operados binários (&, ^ e |) e imagino que eu tenha que usar algum deles.
Pergunta
Ricardo Martins
O que eu quero fazer é o seguinte:
Vamos supor que eu criei uma variável com o nome "num". Se num valer -10, eu quero que passe a valer 10. Se num valer 10, eu quero que continue valendo 10. Ou seja, se for negativa, quero torná-la positiva, e se for positiva, quero mantê-la positiva.
Sei que dá pra fazer isso usando if's e funções matemáticas, mas o que eu quero mesmo é fazer uma manipulação nos bits da variável. Quero mudar o último bit da variável, ou seja, aquela que quando é 0 significa que o número é positivo e quando é 1 significa que o número é negativo. Quero mudá-la pra passar a ser 0 se for 1, e continuar sendo 0 se for 0.
Sei que existem aqueles operados binários (&, ^ e |) e imagino que eu tenha que usar algum deles.
Então, como se faz essa operação?
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.