I don't understand why 8bits is defined as being equal to 1byte or 1octet but at the same time the maximum capacity of an 8bit bus or 8bit databus would be 255 bytes because

128 64 32 16 8 4 2 1
1 1 1 1 1 1 1 1 =255🤔

Likewise with 16bit & so on where it's equal to 2bytes/2octets but a 16bit bus can have a max capacity of 65536 values but in terms of memory the highest it could go is 65535bytes or rounded down to 64kb.

  • 7
    Looks like you're mixing up the value a number of a certain size can hold (0..255 in this case) with the storage needed to store it (1 Byte). I sense a steep learning curve ahead before doing 6502 (or any other ) Assembly :)
    – Raffzahn
    Oct 14, 2020 at 15:14
  • 3
    With only two decimal digits, I can represent one hundred different values. The principle is the same. Oct 15, 2020 at 12:24
  • an example in decimal: 3 digits = 1 declet, and 3 digits can represent values from 000-999
    – phuclv
    Oct 16, 2020 at 14:12

2 Answers 2


A one octet word (eight bits, also known as a byte) can take a value 0-255 as you've found. When you use a byte as an address, you can identify 256 different locations.

A two-octet word (sixteen bits) can take a value 0-65535. When you use that value as an address, like on a Z80 or 6502 processor, you can identify 65536 different locations.


An 8-bit (also called a 1-byte) number, can hold one of 256 distinct values, often an integer between 0 and 255.

When used as an address, an 8-bit or 1-byte number can address up to 256 different values, such as different bytes in memory.

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