Jump to content

When isn't a byte 8-bits?

Sniperfox47

I know there must be some examples, but I haven't been able to think of any good ones. Can anyone name any modern computer systems that defines a byte as something other than 8-bits?

 

I know there are a ton of historical instances, but is there anything since the mid 90s/early 2000s after the IEC and IEEE standardization.

Link to comment
Share on other sites

Link to post
Share on other sites

this is the closest thing I got for ya https://itxdesign.com/gigabit-vs-gigabyte/

desktop

Spoiler

r5 3600,3450@0.9v (0.875v get) 4.2ghz@1.25v (1.212 get) | custom loop cpu&gpu 1260mm nexxos xt45 | MSI b450i gaming ac | crucial ballistix 2x8 3000c15->3733c15@1.39v(1.376v get) |Zotac 2060 amp | 256GB Samsung 950 pro nvme | 1TB Adata su800 | 4TB HGST drive | Silverstone SX500-LG

HTPC

Spoiler

HTPC i3 7300 | Gigabyte GA-B250M-DS3H | 16GB G Skill | Adata XPG SX8000 128GB M.2 | Many HDDs | Rosewill FBM-01 | Corsair CXM 450W

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Can't recall any time. 

PSU Nerd | PC Parts Flipper | Cable Management Guru

Helpful Links: PSU Tier List | Why not group reg? | Avoid the EVGA G3

Helios EVO (Main Desktop) Intel Core™ i9-10900KF | 32GB DDR4-3000 | GIGABYTE Z590 AORUS ELITE | GeForce RTX 3060 Ti | NZXT H510 | EVGA G5 650W

 

Delta (Laptop) | Galaxy S21 Ultra | Pacific Spirit XT (Server)

Full Specs

Spoiler

 

Helios EVO (Main):

Intel Core™ i9-10900KF | 32GB G.Skill Ripjaws V / Team T-Force DDR4-3000 | GIGABYTE Z590 AORUS ELITE | MSI GAMING X GeForce RTX 3060 Ti 8GB GPU | NZXT H510 | EVGA G5 650W | MasterLiquid ML240L | 2x 2TB HDD | 256GB SX6000 Pro SSD | 3x Corsair SP120 RGB | Fractal Design Venturi HF-14

 

Pacific Spirit XT - Server

Intel Core™ i7-8700K (Won at LTX, signed by Dennis) | GIGABYTE Z370 AORUS GAMING 5 | 16GB Team Vulcan DDR4-3000 | Intel UrfpsgonHD 630 | Define C TG | Corsair CX450M

 

Delta - Laptop

ASUS TUF Dash F15 - Intel Core™ i7-11370H | 16GB DDR4 | RTX 3060 | 500GB NVMe SSD | 200W Brick | 65W USB-PD Charger

 


 

Intel is bringing DDR4 to the mainstream with the Intel® Core™ i5 6600K and i7 6700K processors. Learn more by clicking the link in the description below.

Link to comment
Share on other sites

Link to post
Share on other sites

Got my first pc (Tandy Radio Shack TRS80, Model 1, Level 2) machine in 1979.  Back when everyone that even thought of owning a pc had to know at least "some" bit of msdos, and even way back then, 8 bits was a byte.  One byte is equal to 2 to the 3rd power (2 x 2 x 2).  That's the way it was, and that's the way is will forever be.

 

2x2=4

2x2x2=8

2x2x2x2=16

2x2x2x2x2=32

2x2x2x2x2x2=64

and it goes on and on and on..........

 

Link to comment
Share on other sites

Link to post
Share on other sites

A byte has always been 8 bits and always will be, I don't know what you are talking about. Just like 4 bits is a nibble and 16 bits is a word (also 2 bytes is a word).

CPU : Intel Core i7 3960X, Mobo : X79-UD3, Memory : 4x4GB Vengeance Black Memory 1600MHz, GPU : Asus GTX 970 Strix, Case : Switch 810 Matte Black, Storage : 256GB Samsung 830 SSD, Seagate Barracuda 1TB, PSU : Thermaltake 750W 80+ Bronze, Displays : 3x Asus 1080p Screens, Cooling : Corsair H100i, Keyboard : Logitech G710+, Mouse : Madcat Cyborg R.A.T.7, Sound : Sennheiser HD598, V-Moda Crossfade LP, Logitech Z-5500, HMD : Oculus Rift CV1

Link to comment
Share on other sites

Link to post
Share on other sites

The only time a byte isn't 8 bits is when it is a nibble. :)

 

Edit:  Damn, LapX beat me before I could make my smart ass joke

Link to comment
Share on other sites

Link to post
Share on other sites

As far as I member, the 8 bits per byte is just an agreed on standard.  Prior to 1993 (? or something thereabouts) the byte was a bunch of bits and was platform dependent. Therefore if you want a 10 bit byte you can make one yourself and it would be legit. Although I have no idea why anyone would want to do that and I certainly can't think of anyone who has outside of some shit I read once about sata being a 10 bit byte (but that might just be a controller software quirk more than an actual byte). .

Grammar and spelling is not indicative of intelligence/knowledge.  Not having the same opinion does not always mean lack of understanding.  

Link to comment
Share on other sites

Link to post
Share on other sites

3 minutes ago, Salvasian said:

The only time a byte isn't 8 bits is when it is a nibble. :)

 

Edit:  Damn, LapX beat me before I could make my smart ass joke

Lol sorry, but I wanted to add that he might be confised by 32bit and 64 bit systems, which store data and do operations in packs of that number of bits, but that doesn't change the fact that a byte is 8 bits. 

CPU : Intel Core i7 3960X, Mobo : X79-UD3, Memory : 4x4GB Vengeance Black Memory 1600MHz, GPU : Asus GTX 970 Strix, Case : Switch 810 Matte Black, Storage : 256GB Samsung 830 SSD, Seagate Barracuda 1TB, PSU : Thermaltake 750W 80+ Bronze, Displays : 3x Asus 1080p Screens, Cooling : Corsair H100i, Keyboard : Logitech G710+, Mouse : Madcat Cyborg R.A.T.7, Sound : Sennheiser HD598, V-Moda Crossfade LP, Logitech Z-5500, HMD : Oculus Rift CV1

Link to comment
Share on other sites

Link to post
Share on other sites

5 minutes ago, LapX said:

which store data and do operations in packs of that number of bits, but that doesn't change the fact that a byte is 8 bits. 

No. They still store data in chunks of 8 bits, except for that you can sometimes combine registers to make larger registers using magic.

This Article: http://www.eecg.toronto.edu/~amza/www.mindsec.com/files/x86regs.html Explains it in better detail.

  • There are 8 byte size "general use" registers in x86
    1. AL (A Low)
    2. AH (A High)
    3. BL (B Low)
    4. BH (B High)
    5. CL (C Low)
    6. CH (C High)
    7. DL (D Low)
    8. DH (D High)
  • Those 8 byte size registers can be combined into four 16 bit registers
    1. AX (with AL as the lowest byte)
    2. BX (with BL as the lowest byte)
    3. CX (with CL as the lowest byte)
    4. DX (with DL as the lowest byte)
  • Using magic, those four 16 bit registers can become four 32 bit registers
    1. EAX
    2. EBX
    3. ECX
    4. EDX

ENCRYPTION IS NOT A CRIME

Link to comment
Share on other sites

Link to post
Share on other sites

11 hours ago, r4tch3t said:

Never, the definition of a byte is 8 bits, the same as a score is 20.

 

11 hours ago, LapX said:

A byte has always been 8 bits and always will be, I don't know what you are talking about. Just like 4 bits is a nibble and 16 bits is a word (also 2 bytes is a word).

Thats not true. A byte refers to the smallest addressable amount of memory, and the 8 bit standard has been used since the IBM 360 days. But there has been different amounts in the past, notably 6 and 9 bit bytes were fairly common on early machines ( there has been others as well). 

All of those are valid options, but 8 bits happens to be efficient for handling text. 

The only data type that can be defined as 8 bits is the octet, not the byte. 

 

Same goes for a word. A word refers to the size of the internal registers, or natural width of integer data types in a machine. Modern machines have 32 or 64 bit word lengths. They might be referred to as 16 bits, but that's probably an x86 thing  because of the 8088, although not technically correct anymore. 

 

For OP, i can't name any particular machine, but it's probable some DSP/embedded devices have different bit lengths because of specific use case. Some data transfer protocols send data in packs of 9 or 10 bits ( sata and usb do this if i recall correctly). 

But most actual well known machines that did this are relegated to history. Some of them didn't even define a byte because they could only access words. 

 

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

8 hours ago, LapX said:

Lol sorry, but I wanted to add that he might be confised by 32bit and 64 bit systems, which store data and do operations in packs of that number of bits, but that doesn't change the fact that a byte is 8 bits. 

Read my answer above. An octet is defined as 8 bits. A byte is not. 

 

Edit: saw i already quoted you, nvm. 

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

A byte is 8-bits as per ISO/IEC 2382-1: 1993 . So if you want to be someone who doesn't use 8-bit bytes, you're not going to be compatible with pretty much anyone.

 

However, if you want to get snarky, a lot of communication protocols add bits to a byte, but it's mostly overhead. One of the most commonly used serial data formats (at least from what I encountered) uses 8N1, which sends out 10 bits per byte. Many other high-speed serial protocols use 8b/10b encoding which is also 10 bits per byte.

Link to comment
Share on other sites

Link to post
Share on other sites

41 minutes ago, M.Yurizaki said:

A byte is 8-bits as per ISO/IEC 2382-1: 1993 . So if you want to be someone who doesn't use 8-bit bytes, you're not going to be compatible with pretty much anyone.

 

However, if you want to get snarky, a lot of communication protocols add bits to a byte, but it's mostly overhead. One of the most commonly used serial data formats (at least from what I encountered) uses 8N1, which sends out 10 bits per byte. Many other high-speed serial protocols use 8b/10b encoding which is also 10 bits per byte.

I don't think compatibility would be much of a problem, at least from a software point of view. It would only really matter if you're doing assembly programming, at which point you wouldn't be compatible anyway. And compilers used for actual programming in high level languages would put a layer of abstraction there anyway. 

Most programmers in high level languages don't need to worry about the size of their data types. 

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

9 hours ago, kb5zue said:

Got my first pc (Tandy Radio Shack TRS80, Model 1, Level 2) machine in 1979.  Back when everyone that even thought of owning a pc had to know at least "some" bit of msdos, and even way back then, 8 bits was a byte.  One byte is equal to 2 to the 3rd power (2 x 2 x 2).  That's the way it was, and that's the way is will forever be.

 

2x2=4

2x2x2=8

2x2x2x2=16

2x2x2x2x2=32

2x2x2x2x2x2=64

and it goes on and on and on..........

 

Byte sizes don't actually need to be powers of 2. The only reason something needs to be a power of 2 is for addressing purposes. But modern machines are byte addressable, and 1 byte is always addressed as such, not as 8, 9,6 etc bits. 

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

59 minutes ago, M.Yurizaki said:

A byte is 8-bits as per ISO/IEC 2382-1: 1993 . So if you want to be someone who doesn't use 8-bit bytes, you're not going to be compatible with pretty much anyone.

 

10 hours ago, Sniperfox47 said:

since the mid 90s/early 2000s after the IEC and IEEE standardization.

Yeah, I was aware that the IEC standardized it, and that the IEEE also set that as their standard shortly after.

 

Comm protocols are definitely a good example from a protocol standpoint. Didn't even think of that, I was was only really looking at the memory addressability perspective.

 

@Coaxialgamer Yeah, I figured some microcontrollers might, I'll add DSPs to my list of things to look through for examples.

 

I'd imagine even a lot of custom designed microcontrollers though will be 8 bit addressable to memory so they can use off the shelf memory from standard providers, not to mention these days a lot of common microcontrollers I see are either just ARM (Cortex-M) or MIPs cores under the hood.

Link to comment
Share on other sites

Link to post
Share on other sites

When it's spelt with an 'i'

But no known modern system exists where a byte isn't 8 bits, as far as I'm aware.

Come Bloody Angel

Break off your chains

And look what I've found in the dirt.

 

Pale battered body

Seems she was struggling

Something is wrong with this world.

 

Fierce Bloody Angel

The blood is on your hands

Why did you come to this world?

 

Everybody turns to dust.

 

Everybody turns to dust.

 

The blood is on your hands.

 

The blood is on your hands!

 

Pyo.

Link to comment
Share on other sites

Link to post
Share on other sites

28 minutes ago, M.Yurizaki said:

I also can't really imagine a scenario where not using a power of 2 number of bits for a byte is beneficial other than you want to tag data with stuff. But then I can't really call it an n-bit data structure if the useful data isn't really n-bits.

In the early days , the reason mainly had to do with workload . The main reason we have 8 bits today is because it's efficient for handling the widely-used ASCII character set ( which is 7 bits ) . Many scientific applications use floating point math , and they did back when non-8bit machines where used . A word is always a power of 2 bytes long . In the case of those old computers , it meant that floats were either 32 or 64 bits wide , the former being too small and the latter being too big. 32 bits doesn't allow quite enough precision for those workloads. Anyways , by having a 9 bit byte , you can have 4*9=36 bit words , which gets you the needed precision without needing as much memory as FP64.

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

8 minutes ago, Coaxialgamer said:

In the early days , the reason mainly had to do with workload . The main reason we have 8 bits today is because it's efficient for handling the widely-used ASCII character set ( which is 7 bits ) . Many scientific applications use floating point math , and they did back when non-8bit machines where used . A word is always a power of 2 bytes long . In the case of those old computers , it meant that floats were either 32 or 64 bits wide , the former being too small and the latter being too big. 32 bits doesn't allow quite enough precision for those workloads. Anyways , by having a 9 bit byte , you can have 4*9=36 bit words , which gets you the needed precision without needing as much memory as FP64.

Well I mean in modern times. I'm aware the different bit sizes was mostly due to memory capacity issues that are relatively moot today.

Link to comment
Share on other sites

Link to post
Share on other sites

8 minutes ago, M.Yurizaki said:

Well I mean in modern times. I'm aware the different bit sizes was mostly due to memory capacity issues that are relatively moot today.

I don't see one tbh . Though in ISA instruction design , 9 bit bytes does give you extra bits to play with for instruction encoding , which is good i guess.

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

7 hours ago, M.Yurizaki said:

However, if you want to get snarky, a lot of communication protocols add bits to a byte, but it's mostly overhead. One of the most commonly used serial data formats (at least from what I encountered) uses 8N1, which sends out 10 bits per byte. Many other high-speed serial protocols use 8b/10b encoding which is also 10 bits per byte.

 

I knew I read that somewhere.

Grammar and spelling is not indicative of intelligence/knowledge.  Not having the same opinion does not always mean lack of understanding.  

Link to comment
Share on other sites

Link to post
Share on other sites

  • 2 weeks later...
On 1/19/2018 at 9:45 AM, Coaxialgamer said:

 

Thats not true. A byte refers to the smallest addressable amount of memory, and the 8 bit standard has been used since the IBM 360 days. But there has been different amounts in the past, notably 6 and 9 bit bytes were fairly common on early machines ( there has been others as well). 

All of those are valid options, but 8 bits happens to be efficient for handling text. 

The only data type that can be defined as 8 bits is the octet, not the byte. 

 

Same goes for a word. A word refers to the size of the internal registers, or natural width of integer data types in a machine. Modern machines have 32 or 64 bit word lengths. They might be referred to as 16 bits, but that's probably an x86 thing  because of the 8088, although not technically correct anymore. 

 

For OP, i can't name any particular machine, but it's probable some DSP/embedded devices have different bit lengths because of specific use case. Some data transfer protocols send data in packs of 9 or 10 bits ( sata and usb do this if i recall correctly). 

But most actual well known machines that did this are relegated to history. Some of them didn't even define a byte because they could only access words. 

 

You're getting this a bit too far. It was so long ago that it's no longer engineering, it's history. I'm not an historian.

CPU : Intel Core i7 3960X, Mobo : X79-UD3, Memory : 4x4GB Vengeance Black Memory 1600MHz, GPU : Asus GTX 970 Strix, Case : Switch 810 Matte Black, Storage : 256GB Samsung 830 SSD, Seagate Barracuda 1TB, PSU : Thermaltake 750W 80+ Bronze, Displays : 3x Asus 1080p Screens, Cooling : Corsair H100i, Keyboard : Logitech G710+, Mouse : Madcat Cyborg R.A.T.7, Sound : Sennheiser HD598, V-Moda Crossfade LP, Logitech Z-5500, HMD : Oculus Rift CV1

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, LapX said:

You're getting this a bit too far. It was so long ago that it's no longer engineering, it's history. I'm not an historian.

No. OP asked why a byte isn't defined as 8 bits . Thats why, and i added examples of it. They just happen to be older. 

AMD Ryzen R7 1700 (3.8ghz) w/ NH-D14, EVGA RTX 2080 XC (stock), 4*4GB DDR4 3000MT/s RAM, Gigabyte AB350-Gaming-3 MB, CX750M PSU, 1.5TB SDD + 7TB HDD, Phanteks enthoo pro case

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×