Índice:
Vídeo: Curso online de programação para iniciantes - AULA GRÁTIS: O que é uma linguagem de programação? 2024
Felizmente, você não precisa programar nenhum dispositivo digital escrevendo código de baixo nível, alternando interruptores ou fios de solda. Isso ocorre porque a programação C de hoje acontece em um nível mais alto. Mas ainda assim, dentro da máquina, esse tipo de codificação de baixo nível continua. Você está apenas isolado da sopa primordial de uns e dos zero dos quais todo o software sobe.
Introdução ao binário
Os dígitos binários, ou bits , são 1 e 0. Sozinho, eles são fracos; Mas em grupos, eles conseguem um grande poder. O armazenamento digital usa esses bits em grupos.
Termo | C Variável | Bits | Intervalo de valores não assinado | Faixa de valores assinada |
---|---|---|---|---|
Bit | _Bool | 1 > 0 a 1 | 0 a 1 | Byte |
char | 8 | 0 a 255 | -128 a 127 | Palavra |
short int | 16 > 0 a 65, 535 | -32, 768 a 32, 767 | Long | long int |
32 | 0 a 4, 294, 967, 295 | -2, 147, 483, 648 a 2, 147, 483, 647 |
|
A vantagem de agrupar bits em bytes, palavras e assim por diante é que ele os torna mais fáceis de manipular. O processador pode lidar melhor com informações em pedaços. Como os pedaços obtêm seus valores são baseados em poderes de 2. |
Expressão
Valor binário | 2 | 0 |
---|---|---|
1 1 > 2 | 1 | 2 |
10 2 | 2 | 4 |
100 2 | 3 | 8 |
1000 2 | 4 | 16 |
10000 2 | 5 | 32 |
100000 2 | 6 | 64 |
1000000 2 > 7 | 128 | 10000000 |
|
Na verdade, você encontrará 256 valores possíveis para um byte, que inclui a permutação totalmente zero. Isso também é um valor. | Abaixo mostra como os poderes do mapa 2 em armazenamento binário. Assim como as casas decimais em uma base, o número 10 aumenta por potências de 10, bits em um número binário aumentam por potências de 2, lendo da direita para a esquerda. |
5, 2
3
, 2 1 e 2 < 0 . Quando você multiplica esses valores pelas suas contrapartes decimais e depois o totaliza, você obtém a representação decimal do binário 00101011, que é 43. Isso está tudo bem e bom, mas não o memorize! Não se preocupe com a tradução de binário em valores decimais; A computação faz esse trabalho para você o tempo todo. Na verdade, o computador vê apenas binário e, em seguida, exibe números decimais como uma cortesia para seus globos oculares humanos.Mas quando você manipula valores binários, ajuda a saber o que está acontecendo. Alterar o valor de um bit para 1 é referido como configurando o bit. Alterar o valor de um bit para 0 é referido como
reiniciar um bit.
-
Como exibir valores binários
-
Para entender melhor os operadores de manipulação binária da linguagem C, ele ajuda a ver um número binário em ação. A função printf () não possui um caractere de conversão binária e a biblioteca C não hospeda uma função de saída binária. Não, para ver um número binário, você deve criar sua própria função. A função
-
binbin () apresenta uma função de saída binária chamada binbin (). A função binbin (), na Linha 15 na função
binbin ()
, engole um valor int. A saída é uma string que representa esse valor int em dígitos binários.
THE BINBIN () FUNÇÃO #include char * binbin (int n); int main () {int input; printf ("Digite um valor 0 a 255:"); scanf ("% d", & entrada); printf ("% d é binário% sn", entrada, binbin (entrada)); return (0);} char * binbin (int n) {sta char char [9]; int x; para (x = 0; x <8; x ++) {bin [x] = n & 0x80? '1': '0'; n << = 1;} bin [x] = "; return (bin);} De um modo geral, o conteúdo da função binbin () parece bastante misterioso. Isso está bem.
Exercício 1 : Digite o código-fonte da função
binbin ()
em um novo projeto. Crie e execute-o algumas vezes para ver como números inteiros aparecem como números binários.
Conforme escrito em Binbin () Função, binbin () exibe apenas 8 bits de dados, embora o tipo de variável int geralmente armazene muitos outros bits. Exercício 2:
Modifique a função binbin () do < binbin () Função para que ele exiba 16 bits do valor int. (Bem, tecnicamente, 16 bits é um int curto). Para isso, você precisa alterar esses itens: Linha 9: Altere o texto para que 65535 seja especificado em vez de 255.
Linha 17: Modifique o tamanho da matriz para 17 para representar 16 caracteres na saída mais o (caractere nulo) no final da string. Linha 20: Ajuste o valor imediato 8 no código para 16 para representar os 16 caracteres em a saída. Linha 22: Substitua o valor 0x80 por 0x8000. Essa alteração torna o campo de bits maior. Exercício de construção 2. Execute-o algumas vezes para ver o que o campo de bits parece para valores maiores.