Por que os computadores contam a partir do zero?

Apr 16, 2025
Hardware
CONTEÚDO NÃO CHEGADO


Contar a partir do zero é uma prática muito comum em muitas linguagens de computador, mas por quê? Continue lendo enquanto exploramos o fenômeno e por que ele é tão difundido.

A sessão de perguntas e respostas de hoje chega até nós como cortesia do SuperUser - uma subdivisão do Stack Exchange, um grupo de sites de perguntas e respostas voltado para a comunidade

A questão

O leitor SuperUser DragonLord está curioso para saber por que a maioria dos sistemas operacionais e linguagens de programação contam a partir do zero. Ele escreve:

Os computadores tradicionalmente registram valores numéricos a partir de zero. Por exemplo, matrizes em linguagens de programação baseadas em C começam do índice zero.

Que razões históricas existem para isso, e quais vantagens práticas contar do zero tem sobre contar a partir de um?

Por que de fato? Por mais difundida que seja a prática, certamente existem razões práticas para sua implementação.

A resposta

O contribuidor do SuperUser Matteo oferece os seguintes insights:

Contar matrizes de 0 simplifica o cálculo do endereço de memória de cada elemento.

Se uma matriz é armazenada em uma determinada posição na memória (é chamada de endereço), a posição de cada elemento pode ser calculada como

elemento (n) = endereço + n * size_of_the_element

Se você considerar o primeiro elemento o primeiro, o cálculo se torna

elemento (n) = endereço + (n-1) * size_of_the_element

Não é uma grande diferença, mas adiciona uma subtração desnecessária para cada acesso.

Editado para adicionar:

  • O uso do índice da matriz como um deslocamento não é um requisito, mas apenas um hábito. O deslocamento do primeiro elemento pode ser oculto pelo sistema e levado em consideração ao alocar e fazer referência ao elemento.
  • Dijkstra publicou um artigo “Por que a numeração deve começar do zero” ( pdf ), onde ele explica por que começar com 0 é uma escolha melhor. Começar do zero permite uma melhor representação dos intervalos.

Se você deseja se aprofundar na resposta, o artigo Dijkstra é uma leitura informativa.


Tem algo a acrescentar à explicação? Soe fora nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui .

Why Do Computers Count From Zero? (16 Solutions!!)

#1 How Computers Count?

Computers Count From Zero .. Confused?? - How To Fix! (Java / Python)

How Do Computers Keep Time?

Why Do Computers Use 1s And 0s? Binary And Transistors Explained.

Exploring How Computers Work

Why Use Binary? - Computerphile


Hardware - Artigos mais populares

Fones de ouvido sem fio costumavam ser uma merda, mas agora são bons

Hardware Aug 7, 2025

Eu odeio fios. Por muito tempo, eu queria usar exclusivamente fones de ouvido sem fio, mas eles simplesmente não eram bons o suficiente. Era impossível emparelhá-los por Bluetoot..


Os teclados USB apenas enviam sinais ou também os recebem?

Hardware Mar 16, 2025

CONTEÚDO NÃO CHEGADO A maioria de nós nunca pensa muito em nossos teclados, desde que funcionem bem, mas se você parar para pensar por um momento, eles apenas enviam sinais pa..


Como mover um jogo Steam para outra unidade, de maneira fácil

Hardware Jun 30, 2025

O Steam oferece várias pastas de biblioteca, e você pode escolher onde deseja instalar os jogos ao baixá-los. E, graças a uma atualização recente, você pode mover um jogo fac..


Como configurar o Oculus Rift e começar a jogar

Hardware Jun 21, 2025

o olho Rift oferece uma experiência de realidade virtual refinada, embora não tenha a realidade virtual em escala de sala ou controladores de toque como o HTC Vive ..


Como entrar no mundo digital e colocar sua mídia física antiga no PC

Hardware Apr 10, 2025

Por que gerenciar uma coleção de CDs de áudio, DVDs, alguns vídeos em fitas VHS, fotos e outros documentos em formato físico? Torne-se digital para obter todas as suas coisas n..


Como e por que todos os dispositivos em sua casa compartilham um endereço IP

Hardware Jul 12, 2025

Se você for como a maioria das pessoas, seu provedor de serviços de Internet lhe dá um único endereço de protocolo de Internet e seu roteador o compartilha com todos os disposi..


Crie seu próprio ponto de acesso Wi-Fi com um laptop e roteador virtual

Hardware Oct 17, 2025

CONTEÚDO NÃO CHEGADO As conexões de internet sem fio são muito mais prevalentes do que costumavam ser, mas ainda há momentos em que você pode descobrir que está bloqueado a..


Da caixa de dicas: Canetas Faça Você Mesmo, Reciclagem de Discos Antigos em um Jogo e Buscando Protetores de Tela no Flickr

Hardware May 31, 2025

CONTEÚDO NÃO CHEGADO Esta semana, estamos dando uma olhada em como fazer sua própria caneta, transformando seus CDs ou DVDs antigos em um jogo e desenterrando os protetores de tela d..


Categorias