Is there a term for a 24-bit (3-byte) integer?

I know uncommon bit counts (such as a "nibble" or "nybble" for 4 bits) have names, and having 24-bits in both video and audio technology, for instance, is very common.


No, I don't think there is a specific name for a 3-byte word.

Note that those 24 bits usually represent a RGB value, or a X, Y, depth coordinate, so usually those values are referred to with names specific to the API at hand.

  • Figured as much! Aug 23 '12 at 10:25
  • 2
    Even architectures that had native 24-bit registers, e.g. Zilog eZ80, didn't have special word for these (zilog.com/docs/um0077.pdf). Same for IBM S/370 address registers, etc.
    – haimg
    Aug 23 '12 at 14:09
  • 2
    don't forget the storage, most 24-bit values are stored in 32-bits due to bus requirements.
    – gbjbaanb
    Aug 23 '12 at 16:32
  • @gbjbaanb True, very good point. Aug 24 '12 at 7:58
  • 1
    Also, the 80286 and the 80386sx have a 24 bit address bus, there's no special term for it, too.
    – ott--
    Jan 21 '13 at 23:24

I've seen tribyte used in various places for this.

On further exploration I see it is in fact used quite a lot particularly for the audio/video contexts that were mentioned.

  • well, if it at least have been trioctet, but tribyte, hm...
    – shabunc
    Aug 23 '12 at 15:57

MySQL made up the non-standard name, MEDIUMINT. I find their TINYINT (instead of byte), SMALL (instead of short), MEDIUMINT (24-bit), INT (normal - sort of), and BIGINT (instead of long) to be very confusing. I wish they had named them INT08, INT16, INT24, etc. instead. I hesitate to propose their standard-bucking terminology as a new standard, but in the absence of anything better... I'd say call it a 24-bit integer or int24.


Real Machines with 24-bit and 48-bit words describes a surprising number of computers that used 24-bit words. You'd think that if there were a particular term other than word to describe that unit of data, it'd be mentioned on that page, but I don't see one there.

  • 3
    That's because the standard term for the n-byte that fits in the CPU architecture is 'word': en.wikipedia.org/wiki/Word_%28computer_architecture%29. So, on a 24-bit machine, a word is 3 bytes, and 3 bytes is a word. Aug 23 '12 at 19:01
  • And golly; I grew up with Harris mini computers (my father used to be a Harris technician), didn't know those were 24-bit! I made make-believe spaceship cockpits with Harris 500 switch panels. :-P Aug 23 '12 at 19:04
  • 2
    @MartijnPieters Byte is not necessarily 8 bits wide, usually a 8 bit pattern is called an octet. What you're saying is that a word would be 3 octets, while the word itself could be one single machine byte. Indeed, there are DSP's which have non-8 bit bytes, such as 12, 16, 20, 24 or 32 bit bytes. A great example of this where it matters are the C and C++ standards which state that CHAR_BIT >= 8. This means that on char variables are always one byte in size but not necessarily 8 bits.
    – zxcdw
    Jan 21 '13 at 22:51
  • 1
    @zxcdw: While that may once have been the case, ISO/IEC 80000-13 standardized the byte to 8 bits (see en.wikipedia.org/wiki/Byte). Jan 21 '13 at 22:56
  • 1
    @MartijnPieters Point taken, and I stand corrected to an extent which the standard stands. However applications with non 8-bit bytes exist(which don't conform to the standard) and will do so for long onwards and as such I think the distinction is relevant in certain fields.
    – zxcdw
    Jan 21 '13 at 23:00

I don't think there is a particular name for such an integer; in fact, the only integer sizes with their own names that I can think of are 1 (bit), 4 (nibble) and 8 (byte).

Other sizes either go by "n-bit integer" or names that mean different things on different platforms (word, int, long, short, double word, etc.) or in different contexts (character).

So, in line with '32-bit integer' and '64-bit integer', '24-bit integer' makes the most sense.

  • 1
    'word' is the standard n-byte size of a given platform. On 32-bit, a word is 4 bytes, on 64-bit it's 8 bytes. See en.wikipedia.org/wiki/Word_%28computer_architecture%29 Aug 23 '12 at 13:34
  • @MartijnPieters: Exactly. It means different things on different platforms - on a 32-bit platform, it's 32 bits, on a 64-bit platform it's 64 bits, on some ancient platforms it could be 40 bits or 80 or something entirely different, on some embedded chips it's 16 bits, etc. etc.
    – tdammers
    Aug 23 '12 at 20:41

Some languages have types named according to the value format and bit width. C++ has int32_t, .NET has Int32, and Go has int32.

All programmers should immediately recognize the meaning of a derived term like int24, so I think it would be acceptable to use anywhere that an alternative term has not been provided.

There are even implementations on SO for C++ and C#.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.