e aí e aí e aí o olá aqui fala wagner gaspar do canal programa e seu futuro e seja muito bem vindo a nossa aula de número 18 e nessa aula nós vamos entender melhor agora sobre o tamanho de um inteiro na memória nós já vimos que o inteiro ocupa 4 bytes de memória ou seja 32 bits na aula anterior nós vimos o operador short que reduza essa quantidade de memória pela metade para 2 bytes ou 16 bits vamos então trabalhar agora com uma única variável inteira a nossa variável x e aí eu vou alterar
essa nossa variável porque o inteiro também tem o seu limite tanto inferior número negativo quanto superior para número positivo e aí eu vou dizer então que essa variável x possui o valor dois milhões 104 dois bilhões 147 milhões em 183 1647 este é o maior número positivo que nós conseguimos guardar em um número inteiro aqui então eu vou imprimir o valor desse nosso número inteiro aqui eu vou incrementar um e aqui eu vou tentar novamente imprimir o valor desse nosso número inteiro o que que vai acontecer vou compilar aqui o meu programa oi e aí
semelhante ao caso anterior percebo o que que aconteceu aqui na primeira impressão eu tenho o número corretamente 2147483647 porém quando eu somei um a esse número que deveria ter ido para 48 positivo percebia que ele ficou negativo e aí vamos lá na nossa calculadora de decimal para binário novamente para fazer a conversão desse número para binário e ver qual vai ser o resultado e eu vou então copiar esse valor aqui porque ele é bem grande e vou lá na nossa calculadora agora eu vou então substituir esse valor aqui por aquele número bem grande que nós
temos lá e aí perceba que nós temos uma série de uns aqui o fato de não tem nenhum 10 aqui no meio já indica que provavelmente nós estamos representando aqui o limite de uma variável do tipo inteiro eu imagino que nós teremos aqui então 31 dígitos será que é isso mesmo vamos contar aqui um dois três quatro cinco seis sete oito nove dez 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 então o 32º beach que nós temos aqui ele é utilizado para armazenar
o final desse número esse o motivo o e negativo consequentemente quando eu adiciono um a esse número aqui eu preciso de mais um bit para poder representar perceba que não tem nenhum espaço com 10 aqui então eu preciso de mais um bit consequentemente ele passa usar a parte de sinal para tentar representar esse número e aí ocorre então essa confusão significa que nós tivemos ali um estouro de memórias nós tentamos armazenar em 32 bits é de memória um número que precisa de mais beats precisa de pelo menos 33 bits de memória para armazenar armazenar esse
número perceba que aqui nós temos agora uma sequência de 31 zeros e f1 aqui indica para gente de forma esse número aqui e aí nós temos aqui um 33º beach para indicar o sinal que esse número é positivo vamos voltar então lá para o nosso code blocks e aí talvez você esteja se perguntando poxa mas se eu precisar armazenar números inteiros maiores que esse valor ou menores que esse valor o que que eu faço nas aulas seguintes nós veremos então uma forma de você conseguir armazenar números maiores e esse aqui até a nossa próxima aula