(Tocci et al., 2011) Uma câmera digital, que grava em preto e branco, forma um reticulado sobre uma imagem e, então, mede e grava um número binário, que representa o nível (intensidade) de cinza em cada célula do reticulado. Por exemplo, ao usar números de 4 bits, o valor correspondente ao preto é ajustado em 0000 e o valor correspondente ao branco em 1111, e qualquer nível de cinza fica entre 0000 e 1111. Ao usar 6 bits, o preto corresponderá a 000000 e o branco a 111111, e todos os tons de cinza estarão entre esses dois valores. Suponha que desejemos distinguir entre 254 diferentes tons de cinza em cada célula do reticulado. Quantos bits seriam necessários para representar esses níveis (tons)?

Passo 1

O enunciado quer saber quantos bits precisamos para codificar 254 níveis diferentes de cinza. O conteúdo aqui é codificação binária: com m bits podemos representar até 2^m valores distintos.

Passo 2

Seja m o número de bits. Cada bit dobra o número de valores possíveis, logo com m bits obtemos
2^m
níveis de cinza.

Passo 3

Precisamos que 2^m seja pelo menos 254. Então resolvemos
2^m >= 254
Como 2^7 = 128 < 254 e 2^8 = 256 >= 254, o menor m inteiro que satisfaz a desigualdade é m = 8.

Resposta

Precisamos de 8 bits para representar 254 níveis de cinza.

Exercícios relacionados