Primary contact for this homework: Newsha Ardalani [newsha at cs dot wisc dot edu]
You must do this homework alone. Please staple multiple pages together.
Problem 1 (2 points)

What is the web address of the course home page? (i.e. http://...)

What is the email address of your section's mailing list? (Hint: check the email stating this assignment was published)
Problem 2 (4 points)
(This question has no wrong answers.)

What is your expected major(s)?

Have you taken any other Computer Science courses? If yes, please list them.

Why are you taking this course?

What do you hope to get out of it?
Problem 3 (3 points)
When the professor tells you to "Come to class," is it an abstraction? If so,
break it down into a few of its component parts, and briefly explain why the
abstraction is useful for him.
Problem 4 (2 points)
U.S. government supercomputers are used to break highbit encrypted messages. I
think this whole business is pretty cool, so I'd like to try it on my cell
phone. Assuming I had the software, could it perform the computations? If so,
should I try to do this? Why or why not?
Problem 5 (3 points)
Is the sentence "The police shot the rioters with guns" acceptable as a statement in an
algorithm? Specify two different interpretations of this statement. Does this
prove that computers are too smart for our natural language? Why or why not?
Problem 6 (4 points)
Say we had a "black box," which takes two numbers as input and outputs their
sum. See Figure 1(a). Say we had another box capable of multiplying two numbers
together. See Figure 1(b). We can connect these boxes together to calculate
p × (m + n). See Figure 1(c). Assume we have an unlimited number of these boxes.
Show how to connect them together to calculate:

a+b

2x+2y

x^2

x^4
XC (1 point): What is the minimum number of boxes required to
compute x^8?
Problem 7 (2 points)
In your own words, how does a microarchitecture differ from an ISA? Why might
we want to design a different microarchitecture for an existing ISA?