http://ksniko.livejournal.com/ (
ksniko.livejournal.com) wrote in
useless_faq2013-06-27 07:54 pm
Нумерация
А вот почему нумерация домов на улице начинается с единицы, а нумерация памяти в компьютере – с нуля?
Это случайно или в этом есть некий сакральный смысл?
А можно ли наоборот?
Дома с нуля, память с единицы?
Если нельзя, то почему?
Это случайно или в этом есть некий сакральный смысл?
А можно ли наоборот?
Дома с нуля, память с единицы?
Если нельзя, то почему?
no subject
Но город рос-рос, дома становились более-менее похожими. И его потомки стали говорить проще - "мы живем в крайнем доме". А еще пару веков позже, когда кому-то пришла идея нумеровать дома, то потомки говорили "Мы живем в первом доме по улице Могучих Сусликов". Так и повелось. А слово "первый" обозначается на письме цифрой "1". Вот и весь сказ.
А вот другой человек собрал компьютер. Сначала было несколько просто ячеек памяти. Складывал там, вычитал, умножал... Компьютеры совершенствовались, и понадобилось уже составлять списки. А это уже много ячеек памяти. Ну, память-то расширили - проблема не очень большая.
А как бы извлечь нужное число, подумал человек? Ячейки-то тупо нумерованные, от такого-то номера до какого-то еще. Подряд.
И придумал! Ввел т.н. "индекс". И список обозначался как-то так: M,I. Здесь "M" - номер ячейки, где находится первый элемент списка, а "I" - индекс. То есть номер элемента в списке.
И придумал этот человек правило: если мы нашли (вычислили или ввели с перфокарты) элемент списка с номером "I", то записываем его в ячейку с номером M+I. Соответственно, первый элемент записан в M, и ему соответствует номер (индекс) I=0.
Вот она и нумерация с нуля. Собственно, чтобы не путаться, заодно и сами ячейки нумеровали с нуля.
no subject
Изначальные компьютеры были двоичными. Поэтому числа писались, как ряд лампочек, которые, при прибавлении единицы загорались по правилу: если крайняя справа лампочка не горит, то включить ее и отрапортовать о законченной операции. Если горит, то выключить ее и перейти к следующей лампочке, где идем по тому же правилу.
А в начальный момент лампочки не горят вообще - а это по определению ноль. Потоооом только появляется единица. Так что комп считает с нуля.
no subject
Изначально компьютеры были десятичными. Если не брать машины Цузе, но из них практически ничего не выросло. Это уже потом до всех дошло, что с двомчными числами проще, потому что ламп меньше надо. А придумай БШБ транзистор раньше лет на пять — все бы так и обезъянничали за Эйкеном. ;)
no subject