Да, кстати, еще забыл упомянуть, что Я — это развёрнутая R. Кто и когда накосячил — мне доподлинно неизвестно. Сам факт наличия этих перевёртышей в 2020 налицо.
Это просто как общепринятая точка отсчёта, когда люди только послезали с деревьев и математики еще не было — т.е. некий вакуум сформировавшихся привычек. Альтернативное метамодель — «когда я только родился и еще не наслушался местного общепринятого», т.е. был tabula rasa :)
Так что для апологетизма little endianness надо найти более серьёзные основания, чем неверные аналогии.
Основной довод — работа с длинной арифметикой. Простые операции вроде сложения/вычитания можно провернуть как Base-2^32, не переполняясь. А умножение уже может потребоать Base-2^8 подхода по тому же самому массиву цифр. При little-endian эта работает as is с простыми i++ циклами. При big-endian приходится обрабатывать байты в порядке 3-2-1-0-7-6-5-4-…
Я не FOR i:=1 TO N часть ассемблерного кода имел в виду, а про работу дальше с ним по какому-нибудь массиву, т.е. A[i]. который определён как [1..100]. Либо придётся лишний элемент вставлять в начало массива, чтобы 'i' сразу было применимо, либо каждый раз выполнять DEC/SUB ESI/EDI. Либо SIB выкрутасы. Либо цикл умно компилировать, чтобы он для программиста выглядел как 1..N, а для процессора как 0..N-1.
Я не про массив int, а про сам индекс. Допустим, у нас есть набор отрезков. 1..N нотация вкупе с [first;last] мышлением приводит к тому, что программист пишет цикл A1..A2;A2+1..A3;A3+1..A4. Когда нотация в голове [0;N) — имеем дело только с контрольными точками A1,A2,A3,A4, т.е. меньше магических чисел в коде. Плюс эти +1 перескоки не подойдут под float'ные смещения. Я согласен, что это больше про [a;b] vs. [a;b) подход, чем про base0 vs base1.
Кириллицу недолюбливают (как минимум в Чехии) из-за того, что многие привычные по начертанию буквы звучат по-другому относительно латиницы. Примеры — Р, H, В, У, Х. Так же странно выглядит И как развёрнутая N. И не исключаю, что З взяли как цифру три — т.е. как будто Кирилл с Мефодием намеренно сделали «рельсы другой ширины». С другой стороны, в кириллице есть полезные Ж, Ч, Ш и Щ в то время, как на латинице приходится изголяться через zh, ch, sh, sch либо через умляуты. Я думаю, и войны вокруг буквы Ё идут из-за того, что она и Й единственные с умляутами в алфавите.
Я думаю, что лингвистам следует прогибаться под счет, а не наоборот. Да, собственно, так оно скорее всего и было. Нюанс в инерции. Так же люди чаще сравнивают числа, чем складывают/вычитают/умножают (особенно когда цифры описывают деньги). Ну и, возможно, под эту более частую операцию сравнения на предмет меньше/больше и заточили порядок.
Еще особо извращённые в HTTP трафике зачем-то вписывают не только формат даты, который надо угадывать, но и часовой пояс и, о хоспади, день недели! который однозначно из даты вычисляется. Нет бы таймстемпом обойтись и тулзами, парзящими хедер. И это в модемные времена, когда максимально экономили на сетевом трафике.
www.youtube.com/watch?v=SifpUXIsXYM
www.ietf.org/rfc/ien/ien137.txt