Isn't this wrong?





  • No, it isn't wrong.   The prefixes 'kilo' and 'mega' are overloaded.   Outside the computer world (and sometimes in it, for that matter), it's 1000.   However when you get down to bits, you deal in powers of 2...2^10 = 1024.


    -cw



  • @CodeWhisperer said:

    No, it isn't wrong. The prefixes 'kilo' and 'mega' are overloaded. Outside the computer world (and sometimes in it, for that matter), it's 1000. However when you get down to bits, you deal in powers of 2...2^10 = 1024.

    -cw

    I thought that only was done with bytes. And that someone invented a goofy unit "bibit" to have a name for amounts like 1,000,000 bits: Mebibit.



  • I think some people use uppercase to indicate a base of 1024, and lowercase for a base of 1000, when writing about bits and bytes.

    For those people, 1kb=1000b, while 1Kb=1024b 



  • @ammoQ said:

    I think some people use uppercase to indicate a base of 1024, and lowercase for a base of 1000, when writing about bits and bytes.

    For those people, 1kb=1000b, while 1Kb=1024b 

    These people aren't quire right.

    K is always 1000, and has exceptional meaning in bytes. k is meaningless, as far as I know.

    B = Byte

    b = bit 

    My mp3s are usually 128 Kbps, which is kilobit per second, while their size is in the thousands of KBs, which is MBs.



  • @dhromed said:

    K is always 1000, and has exceptional meaning in bytes. k is meaningless, as far as I know.

    All SI prefixes at or below 1000 are lowercase; all prefixes above that point are uppercase. kilo is 'k'. This is largely because 'K' is Kelvin, and the SI prefixes were designed for use in science.



  • @dhromed said:

    K is always 1000, and has exceptional meaning in bytes. k is meaningless, as far as I know.

    Oh, my...apparently standards aren't standard any more.  This is getting to be a problem.  I've never seen Km or Kg as a unit... just km and kg... 

    @asuffield said:

     

    All SI prefixes at or below 1000 are lowercase; all prefixes above that point are uppercase. kilo is 'k'. This is largely because 'K' is Kelvin, and the SI prefixes were designed for use in science.

    And the next guy that talks about "degrees Kelvin" gets hit in the head... that's a serious pet peeve of mine.

    What's really fun is to confuse people with the difference between pound force and pound mass :-)

    As far as the annoying sudden change in the computer kilo- (1024), mega- (1024^2), giga- (1024^3) prefixes into (1000), (1000^2), (1000^3), respectively...just makes my head hurt.  I say we hit Wikipedia and take back the prefixes (completely abolish the horrible -bibyte terms from collective memory if we can...)

     

    (yeah, things are a bit slow at work this morning. And I feel like ranting about units.) 



  • @too_many_usernames said:

    As far as the annoying sudden change in the computer kilo- (1024), mega- (1024^2), giga- (1024^3) prefixes into (1000), (1000^2), (1000^3), respectively...just makes my head hurt.

    It's worth noting that the pattern is 2^10, 2^20, 2^30, etc.



  • @Diamonds said:

    .

    1 megabit in kilobits is 1000 kilobits right?

     Ok someone who knows what they are talking about please...

     When calculating bandwidth:

     1 Mbit = 1,000,000 yes?

    1 kbit = 1,000 yes?

     So 1 Mbit = 1000 kbit right? Anyone tell me if I'm wrong or if google is wrong.

     



  • @Diamonds said:

    @Diamonds said:
    .

    1 megabit in kilobits is 1000 kilobits right?

     Ok someone who knows what they are talking about please...

     When calculating bandwidth:

     1 Mbit = 1,000,000 yes?

    1 kbit = 1,000 yes?

     So 1 Mbit = 1000 kbit right? Anyone tell me if I'm wrong or if google is wrong.

     

    I think the general rule of thumb either way when talking bits or bytes (from what I've seen) is to use base 2 when talking about memory (storage), base 10 when talking about transmission.

    The old SNES games were always quoted as being e.g. 24 megabits, which equated to 3 megabytes (i.e. using the base 2).

    Although don't get me started on the Great Hard Drive Manufacturer's Conspiracy which dictates to use base 10 in an industry that uses base 2 everywhere else, just to beef up the number.

     



  • I thought everything that involves computers is base 2, except of course for the HD manufacturers.

    Also, what's up with the bebibyte nonsense, is it REALLY so difficult to type 1024 into your calculator instead of 1000 ?

     



  • @Qunnum said:

    Although don't get me started on the Great Hard Drive Manufacturer's Conspiracy which dictates to use base 10 in an industry that uses base 2 everywhere else, just to beef up the number.

     

    It's not a conspiracy. They're using standard units. 

    @Goldie said:

    I thought everything that involves computers is base 2, except of course for the HD manufacturers.

    Also, what's up with the bebibyte nonsense, is it REALLY so difficult to type 1024 into your calculator instead of 1000 ?
     

     

    Just not true:

    • Storage: a 1gigabyte flash card stores 10^9 bytes.
    • Networking: 100 Megabit link can carry 100*10^6 bits per second
    • Media encoding: My 128kbps mp3 has a data rate of 128 * 10^3 bits per second
    • Clock speeds: My 2GHz processor does 2*10^9 ticks per second

    The only thing that consistently uses powers of two is memory. So a gigabyte stick of ram is actually 1024 Megabytes, which is actually 1048576 bytes, which is actually 1073741824 bytes.

    What's really confused the issue is OS manufacturers who've displayed hard drive and other storage space in powers of 2, rather than the more standard and correct powers of 10 form. So if you buy a 1GB flash card, it really does have 10^9 bytes on it, but windows will say it's only got 972MB on it or something, because it's working it out wrong. 

     


  • Discourse touched me in a no-no place

    @growse said:

    The only thing that consistently uses powers of two is memory. So a gigabyte stick of ram is actually 1024 Megabytes, which is actually 1048576 bytes, which is actually 1073741824 bytes.
    1 byte == 1024 bytes?



  • @growse said:

    Just not true:

    • Storage: a 1gigabyte flash card stores 10^9 bytes.
    • Networking: 100 Megabit link can carry 10010^6 bits per second
    • Media encoding: My 128kbps mp3 has a data rate of 128 * 10^3 bits per second
    • Clock speeds: My 2GHz processor does 210^9 ticks per second

    The only thing that consistently uses powers of two is memory. So a gigabyte stick of ram is actually 1024 Megabytes, which is actually 1048576 bytes, which is actually 1073741824 bytes.

    What's really confused the issue is OS manufacturers who've displayed hard drive and other storage space in powers of 2, rather than the more standard and correct powers of 10 form. So if you buy a 1GB flash card, it really does have 10^9 bytes on it, but windows will say it's only got 972MB on it or something, because it's working it out wrong. 

     

    I'm fairly certain that flash drives, which use a form of binary addressed memory, come in powers of two, not powers of 10. So that 1 gigabyte flash drive you have is 2^30 (or 1024^3 grin) bytes of storage, not 10^9.  (Mostly this is for manufacturing reasons - you want a grid that fully utilizes the address decoders, and you can't do that with powers of 10).  You'll never find a solid state binary addressed device with a power-of-10 capacity unless it's only one unit in size, because that's the only time 2^x and 10^x are aligned.

    Another hint at this is that there is no sector size on a hard drive that will ever be a multiple of 10 bytes, unless it's a multiple of 10 times a power of two. This is because a sector has to be read into binary addressed memory.  Sector sizes used to be 2^9 bytes (512) long, and often now I think they are 4096 bytes (2^12).  I don't think I've ever head of a sector that's 1280 or 2560 bytes long though (mostly because, again, 10 is not a power of two!).  Hard drives will also say "about Ax10^x bytes" because you can't actually get any computer out there to read a fraction of a sector, and sector sizes will always be in a power of two.


    (The only "standard" thing I know that is a multiple of 10 bytes is the 80-bit floating-point format; personally I've always found that format a bit odd because you can't align it nicely in memory). 



  • @too_many_usernames said:


    (The only "standard" thing I know that is a multiple of 10 bytes is the 80-bit floating-point format; personally I've always found that format a bit odd because you can't align it nicely in memory). 

    It's an almost never used perversion specific to the Intel x87 coprocessor and its compatible descendants - one of many stupid misfeatures of that early chip, that we are still stuck with. When used, it is normally aligned on 96-bit boundaries.

    Modern x86 chips also have 80 bits of internal capacity in their floating point unit (since they need the register space for when somebody uses the extended precision types), which by default is used to expand the precision of the normal 64-bit doubles when they're being processed on the x87 stack. This is a bloody annoying feature because it can't be completely controlled, so some of your calculations happen at 80-bit precision and some of them are arbitrarily truncated to 64 bits. When you need the FPU to be stable (so that a + b * c, for three given values, always gives the same result) you have to turn it off and lock the processor to 64-bit precision.

    I hate 80 bit floating point support.



  • @growse said:

    • Clock speeds: My 2GHz processor does 2*10^9 ticks per second

    Well, of course 

    Okay, i'll rephrase : ...everything involving computer storage/transfer... I just thought that would be kinda obvious since that was the topic.



  • @Goldie said:

    @growse said:
    • Clock speeds: My 2GHz processor does 210^9 ticks per second

    Well, of course 

    Okay, i'll rephrase : ...everything involving computer storage/transfer... I just thought that would be kinda obvious since that was the topic.

     

    Ok then. SATA-1 theoretical transfer speed limit is 1.5 gigabits per second. or 1.510^9 bits per second.

    As I said before, the "industry" (as ill-defined as that term is) is inconsistent with itself. If you say to a scientist who isn't a computer expert that you have a chip that runs at 2 gigahertz and a disk drive that holds 2 gigabytes, he will think that they are the same number, 2 billion. I don't really care if it's impossible to fit exactly 10^9 bytes on a hard disk. Measure things in bits, use different prefixes, whatever, but the hard disk manufacturers have it exactly correct when they say that 1 GB = 10^9 bytes. It's not a marketing "con", they're being accurate.






Log in to reply