Татарин>> Нет. Не совсем, я и хочу этого красиво избежать
pokos> Хотеть не вредно.
Татарин>> Но даже если так, то экономия-то никуда бы не делась. Как, по-твоему, сейчас работает с байтом 64-битная машина с 64-битной шиной памяти?
pokos> Она работает вот так, например:
pokos> https://web.archive.org/web/.../DDR4/JESD79-4%20DDR4%20SDRAM.pdf
Это 8-битная микросхема с 8-битной шиной памяти.
Я тебя другое спросил - как по 64-битной шине модифицируется байт?
Впрочем, ты ниже же и ответил.
pokos> Я тебе скажу больше, в современный 64-битных машинах сделано всё, чтобы удлиннить, а не укоротить пакет обращения к внешнему ОЗУ. Это у них называется "burst". (стр. 107 документа, "4.25.1 Write Burst Operation")
pokos> Всё, что нужно делать меньше ширины шины внешнего ОЗУ, делается в АЛУ и, очень редко где, в кэше L0. А меньше байта, как ты понимаешь, сейчас никто пересылок не делает.
Всё правильно, и всё это общеизвестно.
Ну так в контексте - никакой особой разницы. А если уж ты затронул большие пакеты чтения/записи, то и там уж и вовсе пофигу.
Что 7 бит ты модифицируешь, что 8 - для современной (или несовременной) машины с широкой шиной разницы нет. Разница была бы существенной, радикальной и даже принципиальной на 8-битных машинах, где байт и был словом, минимальной отдельной единицей перемещения и обработки данных.
А если у тебя данные по шине памяти выбираются 64-битными кусками, обрабатываются 64-битными кусками и вот всё это - ну какая тебе уже разница, 7 бит или 8?
Никакой.