Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sniperfox47

When isn't a byte 8-bits?

Recommended Posts

Posted · Original PosterOP

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 post
Share on other sites

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


r5 3600 | Noctua Nh l9x65 am4 | MSI b450i gaming ac | crucial ballistix 2x8 3600mhz | 256GB Samsung 950 pro nvme | 1TB Adata su800 | 4TB HGST drive | Silverstone SX500-LG | Silverstone ML08

HTPC i7 7700k | Gigabyte GA-B250M-DS3H | 16GB G Skill | Adata XPG SX8000 128GB M.2 | Many HDDs | Msi rx 560 aero itx | Rosewill FBM-01 | Corsair CXM 450W

Link to post
Share on other sites

Can't recall any time. 


Helpful Links: PSU Tier List 4.0 | Why not group reg? | Avoid the EVGA G3 | EVGA BR/BT? no. noooo. | buy (almost) anything except focus

 

Helios EVO (Main):

Intel Core™ i7-8700K (Won at LTX, signed by Dennis) | 16GB G.Skill Ripjaws V DDR4-3200 | GIGABYTE Z370 AORUS GAMING 5 | Sapphire NITRO+ AMD RX VEGA 64 | NZXT H510 | GIGABYTE G750H PSU | MasterLiquid ML240L

 

Pacific Spirit XT - Server

AMD FX-8120 | Asus M5A97 | 16GB Kingston HyperX DDR3-1866 | ASUS DirectCUII HD 7970 3G | Define C TG | Corsair CX450M | Hyper 212 Black RGB Edition

 

Daily Driver Laptop (HP Elitebook 850 G2)/Gaming Laptop (Legion Y7000)

Spoiler

Elitebook: i7 5500U | 8GB DDR3L-1333 | 500GB SAMSUNG 860 Evo | AMD R7 M260 (I found this in a garbage bin at the airport)

Legion: i5 8300H | 16GB RAM | 256GB SSD | 1TB HDD | 1050 Ti | Power Brick (Not often used anymore, only for travelling)


 

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 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 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 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). .


QuicK and DirtY. Read the CoC it's like a guide on how not to be moron.  Also I don't have an issue with the VS series.

Sometimes I miss contractions like n't on the end of words like wouldn't, couldn't and shouldn't.    Please don't be a dick,  make allowances when reading my posts.

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 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

I will never succumb to the New Cult and I reject the leadership of @Aelar_Nailo and his wicked parrot armies led by @FakeCIA and @DildorTheDecent. I will keep my eyes pure and remain dedicated to the path of the One True; IlLinusNati

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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

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 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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

Link to post
Share on other sites
Posted · Original PosterOP
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 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 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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

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 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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

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.


QuicK and DirtY. Read the CoC it's like a guide on how not to be moron.  Also I don't have an issue with the VS series.

Sometimes I miss contractions like n't on the end of words like wouldn't, couldn't and shouldn't.    Please don't be a dick,  make allowances when reading my posts.

Link to post
Share on other sites
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 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 7 3.8ghz at 1.3V Corsair vengeance LPX 8GB 2800mhz @ 3200mhz CAS 16 + 2*4GB micron ballistics @ 3200mhz cas 16 ;Gigabyte ga-ab350-Gaming 3; cooler master nepton 240M ; CF r9 290x tri x + r9 290 tri x ; CX750M PSU ; SPEC 03 case with 9 120mm fans ; windows 10 64 bit 

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


×