Inverte uma cadeia binaria.
Publicado por Ygor Thomaz 05/05/2004
[ Hits: 9.665 ]
Homepage: http://www.ygorthomaz.net/
Este programa utiliza propriedades de manipulação de bits para inverte os bits que compoem o valor de entrada no programa. Ele utiliza duas mascaras para fazer o processo de inversão. O unsigned é usado para "anular" o bit de sinal no programa.
Recomendado para estudantes de logica de computadores e iniciados em C. Aborda Funcões, Manipulacao de bits.
#include<stdio.h> unsigned int inverte(unsigned int numero); void main (void) { unsigned int numero, retorno; printf("Digite o numero que deseja inverter:"); scanf("%u", &numero); retorno = inverte(numero); printf("%u", retorno); } unsigned int inverte(unsigned int numero) { unsigned int mask1 = 1, mask2 = 0x8000, aux = 0; int i; for(i=0; i<16; i++) { if(numero & mask1) { aux = aux | mask2; } mask1 = mask1 << 1; mask2 = mask2 >> 1; } return aux; }
primeirafuncao.c - Criando uma função
Desktop Linux ganha novos apps enquanto IA invade o noticiário
Blender 5.0 Beta, Firefox 144 e avanço da IA dominam o dia no mundo Linux
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Ubuntu 25.10 - Erro ao iniciar o Omnissa Horizon (0)
Erro de instalação do Zorin Os 18 (6)