Re:Zero Codexery

Zero's Ring

Uma convenção de numeração onde o primeiro elemento recebe o índice 0.

A numeração baseada em zero é uma forma de numeração na qual o elemento inicial de uma sequência recebe o índice 0, em vez do índice 1, como é típico em situações cotidianas não matemáticas ou não relacionadas à programação. Na numeração baseada em zero, o elemento inicial é às vezes chamado de elemento zero, em vez de primeiro elemento; 'zero' é uma palavra cunhada para o número ordinal zero. Em alguns casos, um objeto ou valor que não pertence (originalmente) a uma determinada sequência, mas que poderia ser naturalmente colocado antes de seu elemento inicial, pode ser chamado de elemento zero. Não há um amplo acordo sobre a correção do uso de zero como ordinal (nem sobre o uso do termo 'zero'), pois isso cria ambiguidade para todos os elementos subsequentes da sequência quando falta contexto.

Creator
Satella (Witch of Envy)
Primary user
Subaru Natsuki
First appearance
Arc 1: The Beginning of the End
Nature
Cursed Artifact / Magical Seal
Associated curse
Return by Death

Contexto e história

Numerar sequências começando em 0 é bastante comum na notação matemática, em particular na combinatória, embora as linguagens de programação para matemática geralmente indexem a partir de 1. Na ciência da computação, os índices de array geralmente começam em 0 nas linguagens de programação modernas, então programadores de computador podem usar 'zero' em situações onde outros usariam 'primeiro', e assim por diante. Em alguns contextos matemáticos, a numeração baseada em zero pode ser usada sem confusão, quando as formas ordinais têm um significado bem estabelecido com um candidato óbvio para vir antes do primeiro; por exemplo, uma derivada de ordem zero de uma função é a própria função, obtida ao derivar zero vezes. Tal uso corresponde a nomear um elemento que não pertence propriamente à sequência, mas que a precede: a derivada de ordem zero não é realmente uma derivada. No entanto, assim como a primeira derivada precede a segunda derivada, a derivada de ordem zero (ou a própria função original) precede a primeira derivada.

Guia do leitor

Este uso decorre de escolhas de design incorporadas em muitas linguagens de programação influentes, incluindo C, Java e Lisp. Nestas três, os tipos de sequência (arrays em C, arrays e listas em Java, e listas e vetores em Lisp) são indexados começando com o subscrito zero. Particularmente em C, onde arrays estão intimamente ligados à aritmética de ponteiros, isso torna a implementação mais simples: o subscrito se refere a um deslocamento da posição inicial de um array, então o primeiro elemento tem um deslocamento de zero. Referenciar memória por um endereço e um deslocamento é representado diretamente no hardware do computador em praticamente todas as arquiteturas de computador, então esse detalhe de design em C facilita a compilação, ao custo de alguns fatores humanos. Neste contexto, usar 'zero' como ordinal não é estritamente correto, mas é um hábito difundido nesta profissão. Algumas linguagens de programação, como Fortran ou COBOL, têm subscritos de array começando com um, porque foram concebidas como linguagens de programação de alto nível e, como tal, precisavam ter uma correspondência com os números ordinais usuais, que antecedem em muito a invenção do zero. E algumas linguagens de programação, por exemplo, Ada, ALGOL 60, PL/I, permitem um limite inferior arbitrário para cada índice. Pascal permite que o intervalo de um array seja de qualquer tipo ordinal (incluindo tipos enumerados) e Ada permite qualquer subtipo discreto. APL permite definir a origem do índice como 0 ou 1 durante a execução programaticamente. Algumas linguagens mais recentes, como Lua e Visual Basic, adotaram a mesma convenção pela mesma razão. Zero é o menor valor inteiro sem sinal, um dos tipos mais fundamentais em programação e design de hardware. Na ciência da computação, zero é frequentemente usado como caso base para muitos tipos de recursão numérica. Provas e outros tipos de raciocínio matemático na ciência da computação geralmente começam com zero. Por essas razões, na ciência da computação não é incomum numerar a partir de zero em vez de um. Se um array é usado para representar um ciclo, é conveniente obter o índice com uma função módulo, que pode resultar em zero.

Você sabia?

More in Poderes e Artefatos

Elsewhere in Re:Zero

Viu um erro? Sabe mais?

Correções de leitores vão direto para nossa fila de revisão. Sugerir uma correção · Como este site é referenciado

Comentários

Carregando…
Abrir no codex interativo →