Re: Откуда эта лютая любовь к знаковым целым?
От: Erop Россия  
Дата: 07.05.20 22:47
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Откуда такое пристрастие, кроме как от лени? Вроде как сколько-нибудь массовых процессоров, где беззнаковые целые поддерживались бы ограниченно, не существует. Есть в этом хоть какое-то рациональное зерно?


Насколько я понял, речь идёт о читабельности кода, в первую очередь, а не о тонкостях оптимизации там или ещё чем-то таком.
В целом тут уже была пара флеймов на тему signed vs unsigned, сопоставимых с Linux vs Windows и "плюсы и минусы STL". Так что там можно почитать в количестве

Если же коротко повторить, что бы не обсуждать в нескольких подветках, то
unsigned -- это кольцо по модулю вычетов известных степеней 2
signed -- это отрезок целых с доопределением операции деления на случай некратных чисел при помощи целочисленного деления и взятия остатка.

Соответственно, если мы где-то можем рассуждать о коде, игнорируя разрядность целых, то есть как о числах в математическом смысле, то этот код более читабельный и высокоуровневый, чем такой, где мы не можем игнорировать разрядность переменных.

И в этом смысле семантика индексов -- это тоже отрезок целого ряда, просто другой. И создавать его поверх отрезка целых [INT_MIN, INT_MAX] намного естественнее, чем над кольцом по модулей вычетов.

И, к концу тезисов, небольшой бонус.
Возможно это тебе понравится больше, чем unsigned
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Отредактировано 11.05.2020 7:29 Erop . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.