Plazo para 24 bits

15

¿Hay un término para un entero de 24 bits (3 bytes)?

Sé que los recuentos de bits poco comunes (como un "mordisco" o "nybble" para 4 bits) tienen nombres, y tener 24 bits en tecnología de video y audio, por ejemplo, es muy común.

Qix
fuente
3
Esta pregunta ha sido reabierta por un moderador dos veces ahora. Antes de votar para cerrar, consulte la meta discusión sobre esta pregunta y la guía para nombrar preguntas . Como comunidad, hemos decidido que preguntar sobre el nombre estándar o los nombres de un concepto bien definido es un tema de actualidad.
Thomas Owens

Respuestas:

21

No, no creo que haya un nombre específico para una palabra de 3 bytes.

Tenga en cuenta que esos 24 bits generalmente representan un valor RGB o una coordenada de profundidad X, Y, por lo que generalmente se hace referencia a esos valores con nombres específicos de la API en cuestión.

Martijn Pieters
fuente
¡Me lo imaginé!
Qix
2
Incluso las arquitecturas que tenían registros nativos de 24 bits, por ejemplo, Zilog eZ80, no tenían una palabra especial para estos ( zilog.com/docs/um0077.pdf ). Lo mismo para IBM S / 370 registros de direcciones, etc.
haimg
2
no olvide el almacenamiento, la mayoría de los valores de 24 bits se almacenan en 32 bits debido a los requisitos del bus.
gbjbaanb
@gbjbaanb Cierto, muy buen punto.
Qix
1
Además, el 80286 y el 80386sx tienen un bus de direcciones de 24 bits, tampoco hay un término especial para ello.
ott--
13

He visto tribyte utilizado en varios lugares para esto.

En una exploración adicional , veo que, de hecho, se usa bastante, particularmente para los contextos de audio / video que se mencionaron.

Benedicto
fuente
bueno, si al menos hubiera sido trioctet, pero tribyte, hm ...
shabunc
5

MySQL compuso el nombre no estándar, MEDIUMINT. Encuentro que su TINYINT (en lugar de byte), SMALL (en lugar de short), MEDIUMINT (24 bits), INT (normal, más o menos) y BIGINT (en lugar de long) son muy confusos. Desearía que los hubieran nombrado INT08, INT16, INT24, etc. Dudo en proponer su terminología de ruptura de estándares como un nuevo estándar, pero en ausencia de algo mejor ... Diría que lo llamaría un entero de 24 bits o int24.

GlenPeterson
fuente
2

Real Machines con palabras de 24 y 48 bits describe una sorprendente cantidad de computadoras que usaron palabras de 24 bits. Se podría pensar que si hubiera un término particular que no sea palabra para describir esa unidad de datos, se mencionaría en esa página, pero no veo uno allí.

Caleb
fuente
3
Esto se debe a que el término estándar para el n-byte que se ajusta a la arquitectura de la CPU es 'palabra': en.wikipedia.org/wiki/Word_%28computer_architecture%29 . Entonces, en una máquina de 24 bits, una palabra es de 3 bytes y 3 bytes es una palabra.
Martijn Pieters
Y golly; Crecí con mini computadoras Harris (mi padre solía ser un técnico de Harris), ¡no sabía que eran de 24 bits! Hice cabinas de fantasía para naves espaciales con paneles de interruptor Harris 500. :-P
Martijn Pieters
2
@MartijnPieters Byte no tiene necesariamente 8 bits de ancho, generalmente un patrón de 8 bits se llama octeto . Lo que está diciendo es que una palabra sería de 3 octetos , mientras que la palabra en sí podría ser un solo byte de máquina. De hecho, hay DSP que tienen bytes que no son de 8 bits, como 12, 16, 20, 24 o 32 bits. Un gran ejemplo de esto donde importa son los estándares C y C ++ que establecen que CHAR_BIT> = 8. Esto significa que en las variables char siempre hay un byte de tamaño pero no necesariamente 8 bits.
zxcdw
1
@zxcdw: Si bien ese puede haber sido el caso, ISO / IEC 80000-13 estandarizó el byte a 8 bits (ver en.wikipedia.org/wiki/Byte ).
Martijn Pieters
1
@MartijnPieters Punto tomado, y estoy corregido en la medida en que se mantiene el estándar. Sin embargo, existen aplicaciones con bytes que no son de 8 bits (que no se ajustan al estándar) y lo harán por mucho tiempo y, como tal, creo que la distinción es relevante en ciertos campos.
zxcdw
1

No creo que haya un nombre particular para tal número entero; de hecho, los únicos tamaños enteros con sus propios nombres que se me ocurren son 1 ( bit ), 4 ( mordisquear ) y 8 ( byte ).

Otros tamaños van por "entero de n bits" o nombres que significan cosas diferentes en diferentes plataformas ( palabra, int, largo, corto, palabra doble , etc.) o en diferentes contextos ( caracteres ).

Entonces, en línea con 'entero de 32 bits' y 'entero de 64 bits', 'entero de 24 bits' tiene más sentido.

tdammers
fuente
1
'palabra' es el tamaño estándar de n bytes de una plataforma dada. En 32 bits, una palabra es de 4 bytes, en 64 bits es de 8 bytes. Ver en.wikipedia.org/wiki/Word_%28computer_architecture%29
Martijn Pieters
@ MartijnPieters: Exactamente. Significa cosas diferentes en diferentes plataformas: en una plataforma de 32 bits, es de 32 bits, en una plataforma de 64 bits es de 64 bits, en algunas plataformas antiguas podría ser de 40 u 80 o algo completamente diferente, en algunos chips integrados es 16 bits, etc., etc.
tdammers
-3

Algunos idiomas tienen tipos nombrados de acuerdo con el formato del valor y el ancho de bits. C ++ tiene int32_t, .NET tiene Int32y Go tiene int32.

Todos los programadores deben reconocer de inmediato el significado de un término derivado como int24, por lo que creo que sería aceptable usar en cualquier lugar que no se haya proporcionado un término alternativo.

Incluso hay implementaciones en SO para C ++ y C # .

M. Dudley
fuente