Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

If a computer has 2k of memory

  1. Feb 17, 2013 #1
    What would the first and last address be? I said 0 and 1999 but the answer was 0 and some other number which i dont remember (it wasnt 1999 haha) What is the correct number for the last address and why isnt it 1999 since there are 2000 bytes in a 2k ram?
  2. jcsd
  3. Feb 17, 2013 #2


    User Avatar
    Gold Member

    In computers "K" mean 1024. Why do you think that might be?
  4. Feb 17, 2013 #3
    Ahh so 2047? Does that mean a gig is 1,024,000,000 bytes?
  5. Feb 17, 2013 #4
    Nevermind, I realized my error after i hit post
  6. Feb 17, 2013 #5

    jim hardy

    User Avatar
    Science Advisor
    Gold Member

    Get one of those cheap TI calculators that has BIN, OCT and HEX buttons.
    You'll quickly become fluent.
  7. Feb 17, 2013 #6


    User Avatar
    Gold Member

    AGAIN, I ask ... why do you think that might be?
  8. Feb 18, 2013 #7

    In general when discussing RAM, EEPROM and FLASH memories the capacity is given in 2^X format. Therefore 2K represents 2^11 = 2048 Bytes. Assuming the starting address is 0x00, and the memory is organized as 8 bit words, the last address would be 0x7FF (2047d). Directly addressing this space would require an address width of 11 bits if it were organized as 8 bit words, 10 bits if it were organized as 16 bit words, 9 bits if it were organized as 32 bit words and 8 bits if it were organized as 64 bit words.

    When working with digital electronics it is generally beneficial to work in powers of 2 (and Hexadecimal notation greatly facilitates this); this gives you the clearest indication of what is actually happening.

    The confusion and dis-ambiguous nomenclature surrounding GB, Gigabyte, gibibyte, Gb and other similar terms is discussed @: http://en.wikipedia.org/wiki/Gigabyte. In general gigabyte refers to 2^30 bytes when referencing pc memory (1,073,741,824 bytes) which is similar in value to the SI prefix "giga" which = 10^9 = 1,000,000,000.

    One of the great travesties of marketing is that hard drives typically base capacity on SI units (ie, a 400GB HD = 400,000,000,000 bytes; however, Windows Operating systems report the hard drive capacity (and file sizes) in binary notation. As an example a "400GB" hard drive would likely be reported by windows to be a 372GB drive.

    The final nebulous marketing scheme I will mention concerns data transmission rates. In almost every case from the early RS232 specifications to the bleeding edge SATA specifications, the transfer rate is defined as the number of bits per second. It might appear this means that the bytes per second is simply the bits per second divided by 8, but this, of course, is never possible in a serial transmission. At the very least a serial packet must have a "start condition" and a "stop condition". In many cases the packet length is a single 8 bit byte, so we have at the minimum, 1 start bit, 8 data bits and a stop bit. In noisy environments the addition of a parity bit is common, increasing the number of bits per byte to 11. There are lots communications standards and protocols, the common theme is that they all sound faster than they really are, lol.

    LMAO, that was prolly a lot more than the OP was asking for, sorry for the verbosity.

Share this great discussion with others via Reddit, Google+, Twitter, or Facebook