View Full Version : Megabit?
neutron star
10-11-2000, 01:40 AM
I see this term tossed around a lot, often seemingly interchangably with megabyte. What's the deal? Shouldn't a megabit be 1,000,000 bits or 122 kilobytes? (8 bits in a byte, 1,024 bytes in a kb. 1,000,000 divided by 8, divided by 1,024.)
sailor
10-11-2000, 02:31 AM
Nope, a megabit and a megabyte are *never* interchangeable. Two different things. When talking about RAM, etc you are almost always talking megabytes whereas when talking communication speeds it would more likely be megabits (per second).
A *true* megabyte is 2^20 = 1048576 but hard disk manufacturers, in their quest to confuse the voters, normally use 1 MB = 10^6 = 1000000
UncleBeer
10-11-2000, 05:15 AM
I believe there are 8 bits per byte.
MattTheCroc
10-11-2000, 05:29 AM
[slight hijack]
And while on the subject, why is it that 1024 bytes=1 kilobyte, 1024 kilobytes = 1 megabyte, but 1000 megabytes = 1 gigabyte?
[/slight hijack]
Bobort
10-11-2000, 07:24 AM
Originally posted by MattTheCroc
[slight hijack]
And while on the subject, why is it that 1024 bytes=1 kilobyte, 1024 kilobytes = 1 megabyte, but 1000 megabytes = 1 gigabyte?
[/slight hijack]
As sailor alluded to above, it's basically the computer storage industry trying to confuse people. Take the lowly 3.5" floppy disk, for example: it's 1.44 megabytes, right? It says so right on the package! But what does that "megabyte" mean? You'd think it would be either 220 bytes or 106 bytes, but in fact it's neither. Their "mega" consists of two "kilo"s, one of which is 210, and the other 103. So a floppy disk contains 1474560 bytes, which is actually 1.40 mega-(220)-bytes, or 1.47 mega-(106)-bytes. There is no standard definition of kilobyte, megabyte, gigabyte, etc. Well, there is but nobody uses it--kilo, mega, etc. are supposed to be powers of 10, and their power-of-two equivalents are supposed to be kibi-, mebi-, gibi- etc. But "mebibyte" sounds too stupid for anyone to use it, so we're stuck with confusion for now.
Bobort
10-11-2000, 07:50 AM
As for the OP, when something is measured in megabits or kilobits it's usually becase it can't be measured in bytes. For instance, a modem might be 56 kilobits per second, but the number of bits in a byte varies depending on modem settings, so you can't say it's equivalent to X number of kilobytes per second.
Strictly speaking, there aren't usually 8 bits in a byte on a hard disk or CD-ROM either, but the number of bits per byte can't be changed so they report size in bytes. For example, a CD-ROM can hold 650MB of data but if you examined it with a microscope you'd find something like 16 billion bits.
CurtC
10-11-2000, 09:05 AM
Bobort, I was confused by your post. AFAIK, a byte always has eight bits. I think you're confusing the raw number of bits on a CD with the number of bits it presents to the computer after all the error-checking and correcting has been done.
With older modems that were measured in baud (I thought I was hot stuff when I got my 2400 baud modem), the baud rate was different from the rate that you could get data bits through it because of the overhead. I think that modems nowadays (since 28.8 kbps anyway) specify rates in bits per second, and there are eight bits per byte, so a 56 kbps modem can deliver 7 kBytes/sec. However, there's also a layer of data compression that is usually used, so you could get more data through it that this number if the data is compressible.
Running with Scissors
10-11-2000, 09:30 AM
When stored uncompressed in memory, on a hard disk or floppy, yes, a byte has 8 bits. However, bytes are manipulated in different ways when moved around.
For example, as CurtC alluded to regarding his 2400 baud modem, the actual number of bytes per second would have been 240, because there is a start and stop bit for each byte. As modem speeds increased and modem manufacturers started to use different tricks to cram more bytes into the same noisy phone line (such as compression, removing start and stop bits, etc) it's not as easy to determine.
Another example is network speed. Standard 10BT ethernet is rated at 10 Mbit per second. That does not mean that you can send actual data at 1.25 MBytes per second, because that depends on the network protocol you use. Each protocol has a bit of overhead. A decent rule of thumb for network speeds is Max theoretical Bytes/sec = 1/10 * Max theoretical bits/sec.
BTW, if you're confused by abbreviations:
k=1,000, or 10^3
K=1,024, or 2^10
m=1,000,000, or 10^6, or 1000k
M=1,048,576, or 2^20, or 1024K
b=bit
B=byte
WiredGuy
10-11-2000, 09:45 AM
A byte is always 8 bits. When a modem gives a speed rating this is how many bits per second that can be transmitted. A byte is still 8 bits but there is other communication overhead involved in the transmition. Stop bits, start bits, parity bits, error checking, ect. Therefore at 56kps you do not transmit 7 kilo bytes per second, more like 80% of that depending on the communication protocol used.
neutron star
10-11-2000, 11:12 AM
Thanks for the answers, y'all. Now I'm slightly less confused than I was when I posted. :)
friedo
10-11-2000, 11:50 AM
Originally posted by Bobort
As sailor alluded to above, it's basically the computer storage industry trying to confuse people.
They're not trying to confuse anybody. Memory space is addressed in binary, and as such, sizes are in base 2. 210 = 1024. That's close to 1000, so the word they use is "kilo." It's not an exact match, but they didn't feel like inventing new words. 1024 "kilo" bytes is one megabyte, or 1,048,576 bytes. See? Close to a million.
So a floppy disk contains 1474560 bytes, which is actually 1.40 mega-(220)-bytes, or 1.47 mega-(106)-bytes. There is no standard definition of kilobyte, megabyte, gigabyte, etc. Well, there is but nobody uses it--kilo, mega, etc. are supposed to be powers of 10, and their power-of-two equivalents are supposed to be kibi-, mebi-, gibi- etc. But "mebibyte" sounds too stupid for anyone to use it, so we're stuck with confusion for now.
First of all, I don't know how you get your numbers. 1,048,576 x 1.44 = 1,509,949 bytes and change. Secondly, it's accepted in computer science the "kilo," "mega," "giga," and "terra" are powers of 2, not powers of 10. I agree that it would have been less confusing to invent new words, but that's the way it is.
As such, the powers of two that are used (kilo = 210, mega = 220 giga = 230 etc) are close enough to the base ten equivelents that it's hardly confusing. If someone says "gigabyte" you know the person means "about a billion bytes."
Bobort
10-11-2000, 12:29 PM
First of all, I don't know how you get your numbers. 1,048,576 x 1.44 = 1,509,949 bytes and change. Secondly, it's accepted in computer science the "kilo," "mega," "giga," and "terra" are powers of 2, not powers of 10. I agree that it would have been less confusing to invent new words, but that's the way it is.
If you don't believe me, check your floppy drive. A "1.44MB" floppy contains 1440*1024=1474560 bytes, which is neither 1.44*210 nor 1.44*106. On a Unix system, I can put a floppy in the drive and count the number of characters on the raw device:
638 [bobort@abacus ~]$ wc -c /dev/fd0
1474560 /dev/fd0
Like I said, 1474560 bytes.
Similarly, if you check on the actual capacity of hard disks you'll find that the numbers used on the box are also a weird mixup of power-of-two and power-of-ten. It might be somewhat of a stretch to say they're deliberately trying to confuse people, but I can't think of any good reason to use such bogus nomenclature.
Chronos
10-11-2000, 01:51 PM
Yes, the real sizes of hard disks are in binary, and binary is the standard in the computer world. The problem is that manufacturers will call a 1000 megabyte disk a 1 gigabyte disk, when it's actually smaller than one (computer) gigabyte.
I think that rather than saying that they're trying to confuse us, a simpler explanation is that they're confused, too. Of course, the technical people know better, but the marketing folks probably don't.
neutron star
10-11-2000, 02:00 PM
A couple months ago, I bought a Toshiba laptop that was advertised as having a "6 billon byte hard drive." And that was the number they kept quoting on the box and all through the owners manual. Not once did they say what it really was - a 5.7 gb drive.
RESOL
10-11-2000, 02:09 PM
Wasn't MegaByte the bad guy on ReBoot. I don't want to mess with him he was one bad dude.
CurtC
10-11-2000, 03:18 PM
friedo wrote:
a=(Lbzjoftt,Inqbujfodf,Hvcsjt);
$b="Lbssz Wbmm"; $b =~ y/b-z/a-z/ ;
$c = " Tif ". @a ." hsfbu wj"."suvft pg b qsphsbnnfs". ":\n";$c =~y/b-y/a-z/;
print"\n\n$c ";for($i=0; $i<@a; $i++) {
$a[$i] =~ y/b-y/a-z/;
if($a[$i]eq$a[-1]){print"and $a[$i].";}else{ print"$a[$i],";
}}print"\n\t\t--$b\n\n";
-- Larry Wall
Now that's obfuscated. And who's he calling lazy?
friedo
10-11-2000, 09:12 PM
Bobort and Chronos, you are correct; I sit corrected.
Now that's obfuscated. And who's he calling lazy?
I think that one falls under the "hubris" category. :)
aramis
10-11-2000, 09:48 PM
A byte does not always have 8 bits. The number of bits in a byte is an arbitrary choice made by computer and operating system designers. Eight is widely used because it is convenient.
In the early days of computers, there were many models that used 6 bit bytes. They did it by not allowing certain special characters to be printable and no doubt some obscure methods. One of the big savers was simply not using lowercase letters, only uppercase like old teletypes.
There are still vestiges of this in modern systems. Sometimes when files are transferred over the internet, say as email attachments, they are converted before sending using a program called UUEncode and then UUDecoded at the receiving end. The purpose is to convert the 8-bit bytes of the sending operating system into a form that can be handled by any 6-bit byte machines that the file might pass through on its way to the destination. I doubt whether there are actually any such machines still in operation, but the practice continues because the old programs still work.
sailor
10-11-2000, 09:49 PM
Well, I do not think their ultimate aim is to confuse anybody. Their ultimate aim is to sell you stuff and larger numbers look more impressive. There is really no excuse for this because disk sector clusters are addressed in binary just like RAM. They should stick with binary Megabytes but they didn't.
I am talking from memory since I have not messed with disks at the byte level for some time now but let me see if I remember correctly:
A floppy has two sides, 80 tracks, 18 sectors (of 512 bytes): 2880 sectors. 33 sectors are used by the FATs, root directory etc and this leaves 2847 sectors free = 1457664 bytes = 1.39 MB
MS came out with disks that had more sectors and could fit up to 1.6 MB but they never caught on.
To find out the capacity of a disk just multiply the number of heads by number of tracks per head by number of clusters per track by number of sectors per cluster by number of bytes per sector. (2 x 80 x 18 x 1 x 512)
Of course the new hard drives, to get more space, do not give the same number of sectors to the tracks but they have an internal conversion that simulates for the outside the same parameters.
sailor
10-11-2000, 09:56 PM
Aramis, I think you are mistaken. While there may be many cases where registers, codes etc use something other than 8 bits, the *definition* of byte is "eight bits".
What you are saying is equivalent to saying kilometers in America are longer (1608 m) than in Europe. I disagree. Kilometers in America are the same as in Europe, it is that they use another unit of measurement (the mile).
I have never seen anything called a byte but 8 bits.
aramis
10-11-2000, 10:12 PM
Sailor, I could be mistaken but that's the way I learned it lo these many years ago. I offer in support the following website (http://medic.bgu.ac.il/comp/course/defs/byte.html). Unfortunately, I can't vouch for its accuracy but it does seem to support my original statement.
friedo
10-11-2000, 10:40 PM
Originally posted by sailor
Aramis, I think you are mistaken. While there may be many cases where registers, codes etc use something other than 8 bits, the *definition* of byte is "eight bits".
What you are saying is equivalent to saying kilometers in America are longer (1608 m) than in Europe. I disagree. Kilometers in America are the same as in Europe, it is that they use another unit of measurement (the mile).
I have never seen anything called a byte but 8 bits.
Nope, a byte can be an arbitrary number of bits, but is almost always eight these days. See the jargon file entry (http://www.tuxedo.org/~esr/jargon/html/entry/byte.html).
sailor
10-11-2000, 11:13 PM
that site supports what I said. It says *originally* it could be several sizes but that is now obsolete and it has been 8 bits for some time now. Read it carefully.
>> The move to an 8-bit byte happened in late 1956, and this size was later adopted and promulgated as a standard
What year are we in?
sailor
10-11-2000, 11:16 PM
BTW, I found a whole course about computers on line. here's the page about floppies:
http://viking.delmar.edu/courses/Cis312J/EBOOK/wrh11.htm
very interesting and good reference stuff (all of it).
Flymaster
10-11-2000, 11:24 PM
AFAIK, the size of a byte is arbitrary, and is determined by the specific hardware. For example, in modem communications, if you use a parity bit, the "byte" size is 9bits. Byte is completely arbitrary, but is most often 8 bits.
sailor
10-12-2000, 12:42 AM
Ok, I can find you one million gazillion documents online where a byte is used as 8 bits. Can you find me 8 or 10 where it is used to mean something else? I'd like to see them.
Every source I find credits the IBM guy for establishing the meaning of byte to be 8 bits in 1956.
the fact that with error correction you need 9 bytes to transmit 8 bits of information does not change that. the information is 8 bits not 9. Using compression it would be less. a byte is still 8 bits until you can show me it is commonly used in any other sense.
Bobort
10-12-2000, 06:30 AM
I think it's quite safe to say that all modern computers use 8-bit bytes, and for all practical purposes a byte contains 8 bits of information. That's not to say it's necessarily encoded in 8 bits, though. When you're calculating bandwidth in bytes, it's the size of the encoding that matters, and that's why I said that bytes can contain a variable number of bits. To send 8 bits' worth of information (i.e. a byte), a modem has to send somewhere between 8 and 13 bits down the wire (those numbers might not be correct) depending on its settings (e.g. 8N1, 7E1, etc.). This is ignoring overhead from higher protocols, since the relative amount of overhead will vary even within a single connection.
The bottom line is that the only straightforward and honest way to report the bandwidth of a modem, T1 line, OC-768, or whatever is in bits per second.
friedo
10-12-2000, 08:16 AM
Right - a byte is defined as the minimum number of bits required to represent a character. In ASCII that's seven, with modem parity checking it's nine, etc. If you're doing math on things, it's always eight, since designing logic with eight bits per byte is easy.
sailor
10-12-2000, 10:35 AM
>> a byte is defined as the minimum number of bits required to represent a character. In ASCII that's seven, with modem parity checking it's nine
No sir. You are making that up. Please offer some support. Please show me some sites that would use it that way. I cannot find even ONE. (Not that one would validate the rule).
In unicode a character needs 16 bits. Show me where that is called a byte. Baudot code uses five bits. Please show me any place that uses 5 bits to mean a byte. A computer does much more than move characters around. It does math operations.
I have *always* seen byte to mean 8 bits. Every instance I have found on the Net supports that. If you disagree *please* show us some support. We already know your opinion, no need to repeat it. Just show us some convincing proof. Please.
Joe_Cool
10-12-2000, 11:05 AM
Originally posted by sailor
>> a byte is defined as the minimum number of bits required to represent a character. In ASCII that's seven, with modem parity checking it's nine
...I have *always* seen byte to mean 8 bits. Every instance I have found on the Net supports that. If you disagree *please* show us some support. We already know your opinion, no need to repeat it. Just show us some convincing proof. Please.
Sailor is exactly right. A byte, by definition, is 8 bits. ALWAYS. Unless it's eventually redefined. The computer world is full of standards, because to deal with somebody (or another computer) you need to use the same language to talk about the same things. This is one of them. A byte is 8 bits. A piece of data sent by a modem may not necessarily be 8 bits, but that's not a byte. It's a group of 10 bits used to encode 8 bits of data. Or 1 byte.
The number of bits needed to encode that byte is irrelevant. That doesn't change the fact that you're encoding a byte.
malden
10-12-2000, 02:12 PM
Processors and operating systems are often described as "16-bit," "32-bit," etc. How does this nomenclature relate to the definition of a byte as having 8 bits?
neuroman
10-12-2000, 03:04 PM
Originally posted by malden
Processors and operating systems are often described as "16-bit," "32-bit," etc. How does this nomenclature relate to the definition of a byte as having 8 bits?
This is not at all related to the definition of a byte. It means that the CPU's registers can hold 16 bits or 32 bits. (Or, in Intel's new IA64 chip, 64 bits.)
If you are interested in learning more about this, I would recommend getting a textbook (no more than 5 or 6 yrs old) on computer architecture or "computer organization".
friedo
10-12-2000, 03:41 PM
Originally posted by sailor
No sir. You are making that up. Please offer some support. Please show me some sites that would use it that way. I cannot find even ONE. (Not that one would validate the rule).
In unicode a character needs 16 bits. Show me where that is called a byte. Baudot code uses five bits. Please show me any place that uses 5 bits to mean a byte. A computer does much more than move characters around. It does math operations.
According to this site (http://webopedia.internet.com/TERM/b/byte.html):
A unit of storage capablee of holding a single character. On almost all modern computers, a byte is equal to eight bits.
(bold mine)
By that definition, in the context of Unicode, a byte is indeed 16 bits.
According to this (http://www.its.bldrdoc.gov/fs-1037/dir-006/_0765.htm):
A sequence of adjacent bits (usually 8) considered as a unit. (188) Note: In pre-1970 literature, "byte" referred to a variable-length bit string. Since that time the usage has changed so that now it almost always refers to an 8-bit string. This usage predominates in computer and data transmission literature; when so used, the term is synonymous with "octet."
(bold mine)
And according to this (http://medic.bgu.ac.il/comp/course/defs/byte.html):
An amount of memory or data smaller than a word; usually eight bits; enough to represent one character; the smallest addressable unit of storage.
On modern architectures a byte is nearly always 8 bits and characters are usually represented in ASCII in the least significant seven bits.
And those were the first few results from a google search for "byte definition."
I agree that nowadays a byte is usually eight bits, but saying the definition of a byte is eight bits is wrong, the definition of a byte is the number of bits used to represent a character. 99.9% of everything operational now uses ASCII, though, so there is room for confusion. And here's the Jargon File (http://www.tuxedo.org/~esr/jargon/) definition for byte (http://www.tuxedo.org/~esr/jargon/html/entry/byte.html) again (the only definition that matters :) ):
A unit of memory or data equal to the amount used to represent one character; on modern architectures this is usually 8 bits, but may be 9 on 36-bit machines. Some older architectures used `byte' for quantities of 6 or 7 bits, and the PDP-10 supported `bytes' that were actually bitfields of 1 to 36 bits! These usages are now obsolete, and even 9-bit bytes have become rare in the general trend toward power-of-2 word sizes.
sailor
10-12-2000, 04:48 PM
Friedo, you are going to do better than that to convince *me* (or others, I think). Your last quote says any other use is obsolete and the others are vague and support my view more than yours.
You have not produced one single solitary example of the use of the word byte to mean anything else than "8 bits". Can you please provide a real world example where the word byte was used to mean something else?
In unicode they say two bytes are required for each character NOT that a byte is now 16 bits.
Please supply some examples of usage as you describe it. I have searched the net and not found even ONE. And man, you can find stuff on the net today to support almost *anything*!
sailor
10-12-2000, 05:08 PM
If your definition of byte is "however many bits it takes to represent a character" then the expression "multibyte character" is a contradiction in terms. Do a net search and you will find hundreds of instances. Like here (http://krispc6.physik.uni-karlsruhe.de/usr/share/doc/glibc-doc/html/libc_6.html).
quote: Character sets used in the early days of computing had only six, seven, or eight bits for each character: there was never a case where more than eight bits (one byte) were used to represent a single character ....
The simplest character sets are one-byte character sets...
The ISO 2022 standard defines a mechanism for extended character sets where one character can be represented by more than one byte....
Any search engine will turn up thousands of examples of usage that support what I say. you have not supplied even ONE.
friedo
10-12-2000, 06:18 PM
You're right, I can't find any current ussage of the word "byte" that means other than eight bits. But I still maintain that it is incorrect to offer the definition of byte as "eight bits." The fact that other definitions are obsolete does not make them incorrect, and they should not be excluded.
sailor
10-12-2000, 06:44 PM
>> The fact that other definitions are obsolete does not make them incorrect
No, it just makes them .... obsolete! Obsolete means they were correct usage in the past and are no longer used that way any more.
Here's one that is *not* obsolete:
Main Entry: pig·head·ed
Pronunciation: 'pig-"he-d&d
Function: adjective
Date: 1620
: willfully or perversely unyielding : OBSTINATE
manhattan
10-12-2000, 06:48 PM
Bxxxt!
That one's over the line, sailor. We do not insult each other in GQ.
friedo
10-12-2000, 06:48 PM
Now that was a bit uncalled for, sailor. Let's just say we agree to disagree.
sailor
10-12-2000, 07:55 PM
>> We do not insult each other in GQ
Of course we don't and I would not dream of doing it.
Or are you telling me you somehow have reasons to believe the word "obstinate" might fit anyone around here? If so, don't blame me. I *never* said it. But anyone is allowed to try on the shoe for fit, and if they believe it fits don't blame it on me.
BTW, Webster's does not associate any offensive connotation to "pigheaded", just neutrally defines it as "willfully or perversely unyielding : OBSTINATE"
I am trying to think of someone I might use as an example but right now I cannot think of anyone... can you? ;)
neutron star
10-12-2000, 08:48 PM
usually represented in ASCII in the least significant seven bits.
Could someone enlighten me as to what exactly this means?
friedo
10-12-2000, 09:37 PM
Originally posted by neutron star
usually represented in ASCII in the least significant seven bits.
Could someone enlighten me as to what exactly this means?
ASCII technically only defines 128 characters, represented by the binary numbers 0-127. Since it only takes seven bits (27 = 128) to make those numbers, all ASCII characters are in the form 0xxxxxxx. Where each x is either 0 or 1. The more left a digit is in that number, the more significant it is, so that zero is the most significant bit (or high order bit). The last x is the least significant bit. So if they're talking about the seven least significant bits in an eight bit byte, they're talking about everything to the right of that first 0.
neutron star
10-12-2000, 09:51 PM
Thanks, friedo. I was under the impression that ASCII defined 256 characters. Was the original ASCII character set only 7 bits, with the eighth added when they realized seven wouldn't be enough? Why would you make a character set that wasted a bit like that, considering that modern bytes are 8 bits and you'd have to have that leading zero in there anyway?
sailor
10-12-2000, 10:38 PM
Nope, the ascii standard was 7 bits and, in fact the internet was all 7 bits and many parts of it remain 7 bits and 8 bit data needs to be encoded. Anyone remember UUENCODE? Ah, memories.
neutron star
10-12-2000, 10:49 PM
Well, what's the logic behind the wasted bit, then? Or am I incorrect in assuming a bit would be wasted?
I have a computer textbook that claims the ASCII and EBCDIC character sets have 256 characters each. Of course, this isn't an authorative source. I've found errors in it before. (Nothing pisses me off more than paying $60 for a paperback, ring-bound book and finding errors!) This may well be another one.
So why are there 256 characters in the Windows character map. Is the 8th bit an unofficial extension to the ASCII character set?
Arjuna34
10-12-2000, 11:03 PM
Originally posted by neutron star
Well, what's the logic behind the wasted bit, then? Or am I incorrect in assuming a bit would be wasted?
I have a computer textbook that claims the ASCII and EBCDIC character sets have 256 characters each. Of course, this isn't an authorative source. I've found errors in it before. (Nothing pisses me off more than paying $60 for a paperback, ring-bound book and finding errors!) This may well be another one.
So why are there 256 characters in the Windows character map. Is the 8th bit an unofficial extension to the ASCII character set?
The 8th bit was often used as a parity bit (even for use in memory). Eventually the use of the 8th bit for parity was dropped, and now most systems take advantage of the 8th bit to give 256 different characters. There isn't a lot of standardization about what the upper 128 codes are supposed to represent, though. The Windows character map above 128 is just one of many possibilities. Technically, ASCII refers to just the lower 128 (0-127, as friedo said). Note that this is only tangentially related to whether a byte is 8 bits or not :)
Arjuna34
Arjuna34
neutron star
10-12-2000, 11:13 PM
Ah, that makes sense. Thanks, Arjuna. I realize that it's not directly related to the OP, but it didn't really seem worthy of another thread, and hey, what can I say? I was curious.
:)
Arjuna34
10-12-2000, 11:22 PM
While I'm posting, I might as well jump into the fray on the 8-bit byte controversy :)
At one time (i.e. 60's, and somewhat into the 70's) someone might mean a 9-bit quantity with the word "byte", as in the examples friedo found (notably the 36-bit word computers, and the venerable PDP-10/11). Friedo and sailor are both right in one sense or another- it boils down to what you mean by "define".
I'd side with sailor on this, though. You would almost never hear someone use the word "byte" to mean anything other than 8 information bits. If one were talking about a 6-bit quantity in a 36-bit computer, a hardware or firmware EE (of which I'm one) would use the all-purpose term "word", which can mean number of bits, depending on the context. The only way I could imagine using "byte" to mean 6 bits in this example would be if we were heavily into debugging or fixing a 36-bit system, and constantly refering to the 1960's or 70's era documentation, which might use the word "byte" frequently. I could see a tendancy to lapse into the documenation's terminology for a while. This is somewhat of a stretch though, and would just be applicable in this situation. If I talked to the same colleague later in the day about another, modern system, and used the word "byte", he wouldn't expect it to mean anything else than "8 bits".
I wouldn't rely too heavily on the argument that "byte == character", either. Historically, one byte could hold one printable character, but as others have pointed out, ASCII is only 7 bits, and now with unicode, etc., one character can be 16 bits. One byte per character was just convenience, not an equality. The jargon file is fun, but not always accurate. It contradicts itself in the definition of a byte when it says that 1 byte = memory for 1 character, then mentions the 1-36 bit "bytes" of the PDP-10. Could the PDP-10 encode a character in 1 bit???
Also, I've worked with 4-bit microprocessors, some of which could only address 4 bits at time. Not many people would call a "byte" 4 bits, even though it was the minimum addressable unit of memory storage. I've also programmed several 8-bit microcontrollers that had bit-addressable memory- in that case 1 bit was the minimum addressable storage (each bit had a separate memory address), but I don't think too many people will argue that "1 bit = 1 byte".
Anyway, "byte" has meant several things in the past, but now it's pretty much 8 information bits. I guess I should check for an IEEE, ISO, or ANSI standard defining it to be sure though :)
Arjuna34
sailor
10-12-2000, 11:26 PM
ASCII was/is 7 bits. Then IBM and other manufacturers each came out with several 8 bit "extended" ASCII. If you look at the headers of emails and HTML pages you will see, for example (in email):
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 8bit
RM Mentock
10-13-2000, 12:27 AM
Originally posted by Arjuna34
I wouldn't rely too heavily on the argument that "byte == character", either.
Out of curiosity, I checked an ordinary dictionary, the American Heritage:
byte n. 1. A sequence of adjacent bits operated on as a unit by a computer. 2. The amount of computer memory needed to store one character of a specified size, usually 8 bits for a microcomputer and 16 bits for a larger computer.
That definition appears in the list at dictionary.com, as does the entries in the jargon file, and others. I'm pretty sure there are some PDP-10s still floating around, though they are "obsolete."
manhattan, self-deprecating humor is allowed in GQ.
sailor
10-13-2000, 12:55 AM
Yeah, I think we have sufficient evidence and Friedo pretty much has his own mind. Not to hammer this point further but I found some quotes about MPI, iso-8859, ISO 9660 and ISO 11544 defining a byte as 8 bits (but I did not look for them so who knows what the context may be?). Also that the French translation for byte is "octet" and the Spanish "octeto" but the agreed abbreviation is still B because "o" would be easily mistaken for the number zero. It is safe to say that even in France octets would have 8 bits.
But, of course, there is no Universal Authority (God was unavailable) so I can find 1000 standards that agree with me and you can still find some obscure document that doesn't. You can pretty much find support for *anything* on the Net, even if it is plain wrong. If you cannot find support for your theory you are *really* alone.
From another email header:
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Flymaster
10-13-2000, 01:27 AM
sailor: You make the mistake of assuming that the most common definition is the ONLY definition. A byte certainly CAN be more or less than 8 bits. If I were to develop a 36 bit computer right now, I would be more than justified in calling a 6 bit section a byte. Bytes can be (as evidenced by the jargon file entry, which, as any hacker knows, is the ONLY definition that matters) any size, it's just that CURRENTLY, damned near every computer uses 8 bit bytes. That doesn't mean that bytes are only 8 bits.
To use a computer related example, you saying that a byte is ALWAYS 8 bits is like saying a floppy disk is ALWAYS 3.5". Certainly, today that is nearly always the case. But that doesn't mean floppy disk is defined as being 3.5". It could also be 5.25" or 8". They exist, and just because they are obsolete, it does not make the definition of a floppy as ALWAYS 3.5" any more accurate.
cameron
10-13-2000, 01:57 AM
quote:
--------------------------------------------------------------------------------
An amount of memory or data smaller than a word; usually eight bits; enough to represent one character; the smallest addressable unit of storage.
The above, posted previously, is the best definition of byte I have seen in this thread. The important part being "the smallest addressable unit of storage".
I used Honeywell machines with 6 bit bytes in 1973 well after the "IBM guy" supposedly "standardised" things in 1956. I have also worked on computers with 38-bit words.
Bytes generally have 8 bits these days, but it is wrong to say that a byte is "defined" as 8 bits.
sailor
10-13-2000, 02:44 AM
Well, we are beating a dead horse here. I have already asked for any instances in which it is used like that or any proffesional who would use it like that and we cannot find any.
I think it is safe to say that the definitions of words would derive from their common usage. That is the way dictionaries are made, they find instances of the word and interpret the meaning. When a meaning is common, then it is included in the definition. A single or very few instances would not be enough and you cannot supply a single one.
I have searched the net and cannot find a single one! I think I am safe in saying the only common use of byte today is to mean 8 bits. You disagree but you cannot find *any* support for your assertion. Well, what can I say? Ok, whatever.
But, as I also said, there is no absolute authority to settle this so if one person (Friedo) says, "to me it can mean anything" then we'll have to accept it. For *him* that is the definition. But I have yet to see any authority in that field use the word as he says.
The fact remains that if you want people to understand you and not confuse things, you better stick with the 8 bit definition or else give a lengthy explanation beforehand.
Dave Barry wrote an article (http://www.tabbycat.org/humor/text/davebarry1.txt) where he used the word "Oregonian" to mean "penis". Does that mean "Oregonian" now means penis? i think it would take more than a few cites to have that meaning accepted but if you want to argue Oregonian means penis, be my guest.
I have an acquaintance who is a lawyer and a pedant and he likes to go into these obscure semantic disquisitions. He might be technically right but the fact is people start rolling their eyes and it ruins the conversation.
His last item was the word "port" and he insisted it meant "door" and kept going and going and going and going... he totally sidetracked the conversation on this issue and even when people were looking at each other and rolling their eyes the guy kept going.
Well, let's assume he was technically right and the word port means door (as the door to a computer or to a country). I don't care!! We are trying to communicate and anybody with a few brain cells can understand that even if technically or in an obsolete usage "port" meant "door" when people speak everyday English "port" does not mean door and the object of the conversation is not to determine how much he may know about the word.
In the end, after a lot of eye rolling, everybody concedes port can mean anything you want it to and they go home knowing who they should avod in the future.
So, Ok, despite the fact that among people who work with software and hardware the word "byte" universally means 8 bits, and despite the fact that you cannot produce a single instance that contradicts this, I will concede it is not illegal or immoral to use the word "byte" to mean something else (even if it may be confusing) and, in fact, it may have been used like that many years ago. I agree to this of my own free will and not subject to any coercion.
Where do I have to sign?
<sigh>
waterj2
10-13-2000, 03:03 AM
Besides, we all know port really means left.
Flymaster
10-13-2000, 03:07 AM
Originally posted by sailor
So, Ok, despite the fact that among people who work with software and hardware the word "byte" universally means 8 bits, and despite the fact that you cannot produce a single instance that contradicts this...
Perhaps I should mention, I work with software on a semi-pro level (ie, still in school, but have done work on the side.)
Bobort
10-13-2000, 03:13 AM
There are actually a number of different things you can mean when you say "ASCII", so it's a little hard to argue about whether it's 7-bit or 8-bit. One of the most common explicitly standardised ASCII versions is NVT-ASCII (Network Virtual Terminal) which is used in all text-based network protocols (e.g. FTP, HTTP, SMTP, POP, Telnet, ...),and is 7-bit (i.e. 128 characters). You can read about it in RFC 854 (http://www.cis.ohio-state.edu/htbin/rfc/rfc854.html) (the Telnet Protocol). There's an amusing little section in there about non-8-bit-byte machines (anybody used MULTICS recently? :))
sailor
10-13-2000, 04:02 AM
>> Besides, we all know port really means left.
Well, it depends on your point of view and other variables... In reality it means larboard unless you are in France where it means babord.
Since this thread has degenerated into total silliness and playing with words, I thought I'd contribute the following which I first heard as a kid and makes as much sense to me as any of the previous posts:
Why is a fire engine red?"
A fire engine's red.
A newspaper's read too.
Two and two are four.
Three times four is twelve.
Twelve is a ruler.
Queen Mary is a ruler.
Queen Mary is a ship.
The ship sails the sea.
The sea has fish.
The fish have fins.
The Finns fought the Russians.
A fire engine's always a-rushin'.
A Russian is red.
That's why a fire engine's red.
So, why is a byte 8 bits?
sailor
10-13-2000, 03:19 PM
Why does a byte have eight bits?
A byte has eight bits
A dollar has eight bits too
Two dollars pay your taxes
Texas is a State
Maryland is a state
Mary had a little lamb
Lamb makes good kebob
Bob can't get it up
Up is the opposite of down
Down is from a duck
A duck is a quack
A quack will take your dollars
Dallas is a city
In the city you can get a snack
A snack is a bite
That's why a byte has eight bits.
Now I'd like to see you rebutt *that* argument.
Kyberneticist
10-13-2000, 04:51 PM
Originally posted by aramis
There are still vestiges of this in modern systems. Sometimes when files are transferred over the internet, say as email attachments, they are converted before sending using a program called UUEncode and then UUDecoded at the receiving end. The purpose is to convert the 8-bit bytes of the sending operating system into a form that can be handled by any 6-bit byte machines that the file might pass through on its way to the destination. I doubt whether there are actually any such machines still in operation, but the practice continues because the old programs still work.
Nope, that's to convert an 8bit file to 7bit (minus certain non-printing characters).
Used to post binaries in text context, like for Usenet porn. :D
douglips
10-13-2000, 05:29 PM
Yes, a byte has 8-bits in current usage almost universally. But sailor quoth:
I think it is safe to say that the definitions of words would derive from their common usage. That is the way dictionaries are made, they find instances of the word and interpret the meaning. When a meaning is common, then it is included in the definition. A single or very few instances would not be enough and you cannot supply a single one.
I have searched the net and cannot find a single one! I think I am safe in saying the only common use of byte today is to mean 8 bits. You disagree but you cannot find *any* support for your assertion. Well, what can I say? Ok, whatever.
Points:
"I have searched the net and cannot find a single one" ne "you cannot supply a single ". You obviously didn't look very hard.
I agree with you that insisting that bytes do not necessarily have 8-bits borders on the pedantic.
I agree with you that a few instances would not be enough to establish a common use.
I guess I just had to prove it could be done.
That being said, here are some usages of 9-bit bytes, found by the shocking innovation of searching for '9-bit byte' on yahoo (google):
http://www.fte.com/techsupp/win32/9bitdata.htm
Frontline Test System
How to View the 9th Bit of a Byte
Revision Date: February 10, 2000
Here we are talking about software that reads data from a serial port, and it may need to read 9 bits of data (not 8 bits and a parity) and how you can configure the software to handle that. Arcane, but recent.
http://www.ucalgary.ca/it/itf/oldun/AIX/AIX-16.html
These guys (UCalgary) were using Multics (9-bit OS) until 1993, and still have backup tapes. Here is a page from their AIX manual about how to restore 9-bit byte Multics data.
In particular, the nine-bit byte size and
security design of Multics are incompatible with AIX. Multics was decommissioned in May 1993, the backup tapes are retained by UCS until they
are no longer useable (approximately ten years).
Definitely obsolete, but only by 5 years and nowhere near the '1956' date quoted earlier.
http://www.ai.mit.edu/projects/transit/tn15/tn15.html
Original Issue: May 1990
...
To test RN1, we will latch 9-bit data bytes to the ports of RN1 that we wish to drive.
Arcane and 10 years old.
http://info.aoc.nrao.edu/vlba/html/TAPES/PLOTS/plottypes.html
From the guys at the VLBA - you know, that big ass radio telescope array from [i]Contact.
All three formats (VLBA, Mark III, and Mark IV) use 9 bit bytes where the 9th bit of each byte is a parity bit.
...Revised November 13, 1998
They are talking about using one of the 9 bits as parity, but they still call it a 9 bit byte.
RFC 1037 (http://sunsite.iisc.ernet.in/collection/rfc/rfc1037.html)
This document dates from 1987 but refers to many byte sizes:
Byte Size Packing Scheme
7, 8, or 9 bits four per 36-bit word
10, 11, or 12 bits three per 36-bit word
13, 14, 15, or 16 bits two per 36-bit word
[/quote]
Also, sailor wrote:Nope, the ascii standard was 7 bits and, in fact the internet was all 7 bits and many parts of it remain 7 bits and 8 bit data needs to be encoded. Anyone remember UUENCODE? Ah, memories.
I used to have an ascii text file that was a valid DOS COM file as well. You can see it (or something similar) here (http://w4dfu.ufl.edu/listarchives/1996/january/msg00014.html). The version I've linked to I can't get to work on NT - maybe because it's corrupt on the web page, maybe because NT is incompatible with it. Oh well.
It was cool, because it was 7-bit friendly and could be emailed to someone so that they could then be sent a binary uuencoded file and happily decode it. Saved me years of time when I was working tech support in the early 90's. No more excuses why people couldn't be emailed a small zip file.
I remember all the dazed sounding people on the other end of the line marvelling that you could just name this text file 'uudecode.com' and it would work. I used to think I would not be surprised if some of them then thought they could just tack ".exe" onto the end of their source code and have it run.
sailor
10-13-2000, 05:54 PM
>> You obviously didn't look very hard
hehe, obviously. I look harder for pages that support my point of view.
That file is interesting. I guess it was designed so none of the bytes had the highest bit set. Quite a feat.
douglips
10-13-2000, 06:05 PM
Originally posted by sailor
>> You obviously didn't look very hard
hehe, obviously. I look harder for pages that support my point of view.
:)
Chronos
10-13-2000, 07:39 PM
I used to have an ascii text file that was a valid DOS COM file as well.Slight hijack here, but I once saw a file that was a valid "Hello World" in DOS .com object code, Bourne shell script, C, and I think Fortran. The trick is to make each language think that the stuff for the other languages is commented out.
We now return you to your regularly scheduled thread, already in progress.
sailor
10-13-2000, 08:41 PM
>> already in progress
You call this progress? ;)
vBulletin® v3.7.3, Copyright ©2000-2012, Jelsoft Enterprises Ltd.