The lab asks you to interpret some microprograms and then write write your own simple microprograms.
Resources: Throughout this lab, you will need to consult Figures 4-1, 4-2, 4-5, 4-6, and 4-7 (section 4.2) in Tanenbaum's text.
Collaboration: As with the work for the previous labs, the following steps are to be done on paper collaboratively. Everyone should work in a group of two (preferred) or three students; within a group, each person should take responsibility for leading discussion for some of the problems.
Steps for this Lab: In the following, assume the Local Variable register LV contains the base address of the integer array X.
X[2] := X[1] - X[0] .dvips ~walker/public_html/courses/211.fa99/labs/micro-code-1.dvi
X[2] := X[0] - X[1] .Annotate each step of your microprogram to explain what the line does. Compare the complexity of this program with that the first version?
X[1] := 8*X[0] - 17;Again, annotate each step of your microprogram
Work to be turned in:
dvips ~walker/public_html/courses/211.fa99/labs/micro-code-form.dviFor each instruction, be sure to place a 0 or 1 in each field. You may assume that your microprogram will be stored in consecutive memory locations of the micro-memory, beginning in location 0.
This document is available on the World Wide Web as
http://www.math.grin.edu/~walker/courses/211.fa99/labs/lab.microprogramming.html