CS 202 Fall 2010: Assignment 5
Homework Assignment #5 : Due Friday 10/8 Before Lecture
There are two very different parts to this assignment.
The purpose of the first part is to explore the relationships between boolean expressions, truth tables, and circuits.
The purpose of the second part is to learn more about the current activity at the edges of computer science and to see how computer science and technology interact with other fields and disciplines (e.g., design, art, or other sciences).
Part 1: Boolean Logic
For these questions, you should use only the AND, OR, and NOT operators. You should feel free to draw AND and OR gates with more than two inputs. You may also draw inverters as simple circles before or after other gates. You do not optimize any circuits (i.e., you do not need to reduce the number of gates used); you should draw each circuit in the most straight-forward way possible.
- Consider the following boolean expression with three input
variables: (NOT a) OR (b AND c).
- Draw the combinational circuit that most directly corresponds to the boolean expression.
- Draw the corresponding complete truth table.
- Consider a function of three inputs (a, b, and c) and a single
output x that has the following truth table.
a b c x 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 0 1 1 0 0 1 1 1 1 - Using the sum-of-products algorithm, what is the boolean expression for the output x?
- Draw the corresponding combinational circuit.
- Consider a function that implements an exclusive-OR (i.e., XOR).
This functions has two inputs and a single output. The
output should be 1 if and only if exactly one of the two inputs has
a value of 1.
- Draw the complete truth table for an exclusive-OR circuit.
- Draw the corresponding combinational circuit.
- Consider a majority-rules circuit. This is a circuit that
has three inputs and one output. The value of its output is 1 if and
only if two or more of its inputs are 1; otherwise, the output of the
circuit is 0. For example, if the three inputs are 0, 1, 1, then your
circuit should output a 1. If its three inputs are 0, 1, 0, then it
should output a 0.
This type of circuit is frequently used in fault-tolerant computing for environments where a computer must keep working correctly no matter what (e.g., in a deep-space vehicle where repairs are impossible). In these conditions, one might put three computers on board and have all three do every computation; if two or more of the computers produce the same answer, then we accept it. Thus, one of the machines can fail and the system still works works correctly.
- Draw the complete truth table for a majority-rules circuit.
- Draw the corresponding combinational circuit.
- Add together the following two 4-bit binary numbers, A and B; your answers
should be given in binary (using 5 bits). (You do not need to draw
any circuits this time!)
- A = 0001; B = 0100
- A = 0101; B = 0101
- A = 1001; B = 1011
- A = 1111; B = 0001
- A = 1111; B = 0101
- A = 1111; B = 1111
Part 2: Frontiers and Applications of Computer Science
For part 2, you will explore some of the fascinating talks that are available at Ted. You should pick some number of Technology-related talks that total about 30 minutes in length (anything above 25 minutes is fine...) and write an essay following the specification below.Finding Suitable Talks
You must pick talks that involve Technology in some way that you find interesting.
You will see that each Ted talk has a number of Tags associated with it; you can search these tags for topics you would like to learn more about. You can see a list of all the tags used to describe the talks. You will see that there are (approximately!) 283 talks related to Technology! You can pick any talks that have Techology as one of its tags (you can see the Tags associated with each talk at the bottom right of each talk's page.)
When searching for interesting talks, you can start at the main Ted page and order talks by:
* Newest releases * Most languages * Most emailed this week * Most comments this week * Most favorited all-time * Rated jaw-dropping * ... persuasive * ... courageous * ... ingenious * ... fascinating * ... inspiring * ... beautiful * ... funny * ... informativeor explore the different Themes or simply use the Search bar.
We encourage you to spend some time browsing the available talks. After watching a few minutes of a talk, you might decide it isn't what you want to learn aboutafter all -- please look for the best talks for you!
For example, some of the talks I've especially enjoyed include the following:
- Blaise Aguera y Arcas demos Photosynth
- How Brain Science will Change Computing
- Robotics
- The Sixth Sense
Again, just be sure you pick talks related to Technology! And, the total time for the talks you watch should be about 30 minutes (e.g., you might find two talks that are each 15 minutes or three talks that are each 10 minutes).
Content of your Essays
For each talk you have selected, you will write a short essay. The total length of all of your essays (combined) should be about two single-space pages. Your essays must include all of the following points:
- The title of the talk, the date it was presented, the speaker and their affiliation, the length of the talk, and the tags associated with the talk.
- A summary of the talk. The length of your summary will of course depend upon the length of the talk. In general, a paragraph for each 5 minutes of the talk is reasonable. The summary should recap the points the speaker made in as objective manner as possible (that is, try to refrain from stating your own opinions or reflecting on the implications of this talk since you will address those points in the next paragraphs).
- The next part of your essay should be more subjective and address
all of the following questions:
- How is the technology presented in the talk different than what is currently available in the mainstream? Can you imagine this technology being widely available or used in the next year? In 5 years? in ten?
- What are the different uses of this technology? Would you like to use it? How would this technology impact society if it were widely available and used? Would it be beneficial or harmful?
- Does this talk connect technology to a different field? How?
- Did you find this talk thought provoking? Did the talk get you to look at technology or computer science in any different way? Would you recommend others see this talk?
Turning in Your Work
Please turn in your work either before Lecture on into the Folder Homework 5 through Learn@UW. Your essay must be typed!
Menu
Fall 2010Time: MWF 9:55-10:45
Room: 105 Psychology
Lab: 1370 CS (1st floor)
Instructor:
Prof Andrea Arpaci-Dusseau
Office Hours Tue 2:30-3:30, Wed 11-12
Office: 7375 Computer Sciences
Email: dusseau "at" cs.wisc.edu