Inverte uma cadeia binaria.
Publicado por Ygor Thomaz 05/05/2004
[ Hits: 9.318 ]
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; }
Bhaskara - Cálculo de raízes de equações do segundo grau
Utilização de Ponteiros em C (2)
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Grub Customizer no Ubuntu 24.04
Preparando pendrive com GNU/Linux [Corretamente!]
Instalando Google Chrome no Fedora 40
Habilitando a importação de senhas no Firefox
Como corrigir o erro do VirtualBox travar a máquina virtual em tela cheia
Som continua saindo no auto-falante mesmo com headphone, como conserto... (3)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (39)