LBSC 690: Introduction to Information Technology

Assignment 1

This assignment is worth 30 points. It is due before class on October 1. Please show how your arrived at each answer (don't just write down a number). Be sure to write down units with each answer (e.g. don't just write "15", write "15 MB", for example). Remember that while you're welcome (and encouraged) to discuss the set with classmates, all writeups must be your own. You can use a calculator, but it should be clear what calculations you're doing that lead to your answer. What's more important than getting the right answer is:

To submit your assignment, send an e-mail to jbg@umiacs.umd.edu with the subject starting with [LBSC690 Assignment1]. If you're prefer to just hand in a hardcopy at the start of class next week, that's fine too.

If you e-mail, either:

  1. Upload the file as HTML or PDF to your webspace (at http://terpconnect.umd.edu/~USERNAME/lbsc_690_1 ), and password protect it. Please don't upload it if you can't password protect it. If you don't know how to do that (we'll cover that soon), that's okay. Send me an e-mail with the address and password.
  2. E-mail me a copy of your homework either as PDF, HTML, RTF, or plain text. Please do not send Word documents (I use Linux at home and I sometimes have trouble reading Word documents). It's fine to write your documents in Word, just be sure to save it in one of the above formats. (However, be sure to look at it before you e-mail, as something might get lost in the translation.)
  3. Warning: I will take off points if you fail to address your e-mail appropriately or if you send your file in a format I can't read.

Question 1: Binary (5 points)

The game of Battleship requires you putting down pegs in a board simulating a patch of ocean. Your opponent has positioned ships somewhere on the board. Let's assume we're playing a very simple game of battleship on a 4x4 board.

  1. You want to play with a friend on the Internet, but you don't want to have to write down the board each time. She tells you that you can encode every layout of the board with a binary number, and she gives you two examples.
            0 0 0 0
            0 0 0 0
            0 0 0 0
            0 0 0 1
          
    Board 1
            1 0 0 0
            1 0 0 0
            1 0 0 0
            1 0 0 0
          
    Board 34952
    1. Explain what she's doing.
    2. How would you encode this board layout as a decimal number?
                      0 1 0 0
                      0 0 0 0
                      0 0 0 1
                      0 0 0 1
                    
  2. The board went from 2053 to 3077. Without drawing either board or converting 2053 or 3077 to binary, explain how you could figure out where the last bomb was dropped using grade school math.

For the following questions, imagine you're responsible for buying a computer for a library with the following specs (copied, with slight modification, from Dell's website). For the following questions, you can also assume that 1 MB = 1,000,000 bytes, 1 GB = 1000 MB for simplicity (it's also okay if you use exact numbers; just be consistent and state your assumption).

Question 2: Backup (8 points)

  1. How big is the hard drive for this computer in megabytes?
  2. A song is on average three minutes long, and an MP3 requires about one megabyte a minute. Given this, how many days of music can this computer hold?
  3. A blank recordable DVD can hold 4.7 GB. Assuming that the computer's hard drive is full, how many DVDs would it take to back up the computer's hard drive?

Question 3: Accessing Data (12 points)

You want to store the following information for every American (300 million people).

Name: 100 characters
State: 2 characters
Phone Number: 10 characters
SSN: 9 characters
taxes owed: one four-byte number

Assume that each character is stored in one byte.

  1. How many gigabytes of data would you need to store this information?
  2. Would all of these data fit on the hard drive of the computer described above? What fraction of the disk would this fill? (If the data don't fit, the fraction can be greater than one.)
  3. Would all of these data fit in the RAM of the computer described above? What fraction of the RAM would this fill? (If the data don't fit, the fraction can be greater than one.)
  4. Suppose you wanted to add up the taxes owed by all 300 million people. Assume that you access the data in a random order, and that you start a new disk access for each person (in the specifications above I have provided the latency of disk access). How long would it take to access all the data? Could this be done in a second? In a minute? In an hour? In a day? In a month? In a year?
  5. Assume for the sake of comparison that all of this data could fit in RAM. How long would it take to access all the data from RAM? In the specifications above I have provided the latency of RAM access. Could this be done in a second? In a minute? In an hour? In a day? In a month? In a year?

Question 4: Bandwidth (5 points)

I travel 4 miles to work each day with an 200 GB iPod in my pocket. What is my bandwidth in Mb/s if it takes me 10 minutes to get to work? How does this compare to a typical Internet connection?