Срок для 24-бит

15

Есть ли термин для 24-битного (3-байтового) целого числа?

Я знаю, что необычные счетчики битов (например, «nibble» или «nybble» для 4 битов) имеют имена, и, например, наличие 24- битных данных как в видео, так и в аудио технологии очень распространено.

Qix
источник
3
Этот вопрос был дважды вновь открыт модератором. Перед закрытием голосования, пожалуйста, ознакомьтесь с мета-дискуссией по этому вопросу и руководством по именованию вопросов . Как сообщество, мы решили, что вопрос стандартного имени или имен четко определенной концепции является актуальным.
Томас Оуэнс

Ответы:

21

Нет, я не думаю, что есть конкретное имя для 3-байтового слова.

Обратите внимание, что эти 24 бита обычно представляют значение RGB или координату глубины X, Y, поэтому обычно на эти значения ссылаются с именами, специфичными для данного API.

Мартейн Питерс
источник
Понял так же!
Qix
2
Даже в архитектурах, которые имели собственные 24-битные регистры, например Zilog eZ80, не было специального слова для них ( zilog.com/docs/um0077.pdf ). То же самое для регистров адресов IBM S / 370 и т. Д.
haimg
2
не забывайте о хранении, большинство 24-битных значений хранятся в 32-битных из-за требований к шине.
gbjbaanb
@gbjbaanb Правда, очень хорошая мысль.
Qix
1
Кроме того, 80286 и 80386sx имеют 24-битную адресную шину, для нее тоже нет специального термина.
ot--
13

Я видел трибайт, используемый для этого в разных местах.

При дальнейшем изучении я вижу, что на самом деле он используется довольно часто, особенно для аудио / видео контекстов, которые были упомянуты.

Бенедикт
источник
ну, если бы это был хотя бы триоктет, но трибит, хм ...
шабун
5

MySQL составил нестандартное имя MEDIUMINT. Я нахожу их TINYINT (вместо байтов), SMALL (вместо коротких), MEDIUMINT (24-битными), INT (нормальными - вроде) и BIGINT (вместо длинных) очень запутанными. Хотелось бы, чтобы они назвали их INT08, INT16, INT24 и т. Д. Я не решаюсь предложить их стандартную терминологию в качестве нового стандарта, но в отсутствие чего-то лучшего ... я бы назвал это 24-битным целым числом или int24.

GlenPeterson
источник
2

Реальные машины с 24-битными и 48-битными словами описывают удивительное количество компьютеров, которые использовали 24-битные слова. Можно подумать, что если бы существовал какой-то конкретный термин, кроме слова, для описания этой единицы данных, он был бы упомянут на этой странице, но я его там не вижу.

Калеб
источник
3
Это потому, что стандартный термин для n-байта, который подходит для архитектуры ЦП, - это «слово»: en.wikipedia.org/wiki/Word_%28computer_architecture%29 . Итак, на 24-битной машине слово составляет 3 байта, а слово 3 байта.
Мартин Питерс
И, черт возьми, Я вырос на мини-компьютерах Harris (мой отец раньше был техником Harris), я не знал, что это 24-битная версия! Я сделал искусственные кабины космического корабля с панелями управления Harris 500. :-P
Мартин Питерс
2
@MartijnPieters Байт не обязательно имеет ширину 8 бит, обычно 8-битный шаблон называется октетом . Вы говорите, что слово будет 3 октета , а само слово может быть одним машинным байтом. Действительно, есть DSP, которые имеют не 8-битные байты, такие как 12, 16, 20, 24 или 32-битные байты. Отличным примером этого, где это имеет значение, являются стандарты C и C ++, которые утверждают, что CHAR_BIT> = 8. Это означает, что переменные типа char всегда имеют размер в один байт, но не обязательно 8 бит.
zxcdw
1
@zxcdw: Хотя это могло когда-то иметь место, ISO / IEC 80000-13 стандартизировал байт до 8 бит (см. en.wikipedia.org/wiki/Byte ).
Мартин Питерс
1
@MartijnPieters Точка взята, и я исправлен до такой степени, что стандарт стоит. Однако существуют приложения с не 8-битными байтами (которые не соответствуют стандарту), и они будут делать это в течение длительного времени, и, как таковое, я считаю, что различие имеет значение в определенных областях.
zxcdw
1

Я не думаю, что есть конкретное имя для такого целого числа; на самом деле, единственные целочисленные размеры с их собственными именами, о которых я могу думать, это 1 ( бит ), 4 ( клев ) и 8 ( байт ).

Другие размеры либо идут по «n-битному целому числу», либо по именам, которые означают разные вещи на разных платформах ( word, int, long, short, double word и т. Д.) Или в разных контекстах ( символ ).

Таким образом, в соответствии с «32-битным целым числом» и «64-битным целым числом» наиболее целесообразным является «24-битное целое число».

tdammers
источник
1
«слово» - это стандартный n-байтовый размер данной платформы. На 32-битном это слово составляет 4 байта, на 64-битном это 8 байтов. См. En.wikipedia.org/wiki/Word_%28computer_architecture%29
Мартин Питерс
@MartijnPieters: Точно. Это означает разные вещи на разных платформах - на 32-битной платформе это 32 бита, на 64-битной платформе это 64 бита, на некоторых древних платформах это может быть 40 бит или 80 или что-то совсем другое, на некоторых встроенных чипах это 16 бит и т. Д. И т. Д.
tdammers
-3

Некоторые языки имеют типы, названные в соответствии с форматом значения и шириной в битах. C ++ имеет. int32_tNET имеет Int32и Go имеет int32.

Все программисты должны немедленно распознать значение производного термина, например int24, поэтому я думаю, что было бы приемлемо использовать везде, где альтернативный термин не был предоставлен.

Есть даже реализации на SO для C ++ и C # .

М. Дадли
источник