CSE370 Assignment 1

Distributed: 27 September 2006
Due: 4 October 2006


  1. Katz/Borriello, Contemporary Logic Design 2e, Chapter 1 (pp. 1-27)
  2. Katz/Borriello, Contemporary Logic Design 2e, Chapter 2 - sections 2.1 through 2.2 (pp. 33-46)
  3. Katz/Borriello, Contemporary Logic Design 2e, Appendix A - section A.1 through A.3 (pp. 511-520)


Familiarize yourself with the CSE 370 web pages. Make sure you have a CSE account and can login to the machines in the instructional labs - especially in 003 (Baxter Lab). Subscribe to the course mailing list so that you can access e-mail discussions among our community.

  1. The written assignments (such as this one) account for what percentage of the final grade? How long should you spend on each homework problem before discussing it with others? What question would you like to see on the course evaluation that is currently not on the list?
  2. Consider an encoding of a chess board’s 64 squares that uses a minimum 6 bits – 3 bits for the x position (x1, x2, and x3), 3 bits for the y position (y1, y2, and y3).  Derive a Boolean expression that is true if a square is “black”.  You can assume that 000, 000 is a “black” square.
  3. There are 6 different types of pieces on a chess board: king, queen, rook, bishop, knight, pawn.  An encoding for the six requires a minimum of 3 bits.  Consider the following encoding: the first bit is used to indicate whether the piece can move only one square with a 1 or an arbitrary number of squares with a 0 (assume the pawn can only move forward 1 square for now, do not consider other moves).  The other two bits are used to indicate whether the piece can move diagonally or orthogonally to the axes of the board (you can assume the knight does not move either diagonally or orthogonally and moves more than one square).  Derive the encoding for the six pieces using the following names for the 3 bits: “one”, “diagonal”, and “orthogonal”.  Do you have a unique encoding for each of the six?  Which encoding do you not use?  Describe the moves of the “fictional” chess pieces for the encodings you are not using.
  4. CLD2e, 2.2, parts c, and e.
  5. CLD2e, 2.9.
  6. CLD2e, 2.12.


  • To review number systems.
  • To gain familiarity with some of the basic concepts in digital logic.

Comments to: cse370-webmaster@cs.washington.edu