CSC 371
Homework 3
Assigned Sept. 29, due Oct. 14
Problems from Chapter 3 (arithmetic)
- Exercises 3.2.1 through 3.2.6 on integer arithmetic. (Use row a
examples. For exercises 3.2.1-3, there's a mistake in the textbook:
the sign bits are all zero, so “treating the numbers as signed”
makes no difference. Since this is boring, treat the
numbers as 15-bit rather than 16-bit.)
- Exercises 3.5.1 through 3.5.3 on the speed of different approaches
to multiplication. Use row a numbers.
- Exercises 3.10.1 through 3.10.3 on interpreting bit patterns (use row
b numbers).
- Exercises 3.11.1 and 3.11.2 on floating-point formats (use row b
numbers). Note that where the textbook says "excess-56 format", this is
a typo: it means excess-16. According to Wikipedia,
the official half-precision floating-point format uses excess-15, with
exponent fields 000000 and 111111 being treated specially, but I want
you to answer the
question for a simplified representation
in which 111111 is not treated specially, and the bias is 16.
- Exercises 3.13.1 through 3.13.3 on associativity (use row a)
Logic design problem
Use LogiSim
to build and test a circuit that acts as a three-bit integer ALU
(i.e. it operates on three-bit signed integers, in
two's-complement notation, so the range of possible values is -4 to +3).
Correction: I originally wrote that the range is -8 to +7.
A student helpfully pointed out that that takes four bits. I
apologize for the error.
It should be able to perform five two-input operations: AND, OR, ADD,
SUB, and SLT, each producing a three-bit result. Since there
are five operations, you'll need 3 bits of "opcode"; you may decide for
yourself which 3-bit pattern corresponds to which operation. Don't
worry about detecting arithmetic overflow.
You may use LogiSim's built-in AND, OR, NOT, NAND, NOR, XOR, and MUX
gates, in single-output form; you may not use the built-in arithmetic
gadgets, nor LogiSim's multi-output gadgets that stand for a bunch of
components in parallel. You may want to build some simple gadgets
(like a full-adder)
of your own and use them as black-boxes in your main circuit.
Last modified:
Thu Oct 3 12:19:08 EDT 2013
Stephen Bloch / sbloch@adelphi.edu