Computer Organization and Architecture -- CS 429 -- Laboratory and Homework Assignments


       Unique Numbers:  52873, 52875, 52880, 52885
   Class Room Numbers:  WEL 3.502
           Class Days:  Monday, Wednesday
           Class Time:  14:00 pm -- 15:50 pm

     Laboratory Times:  52873:  Monday,  9:00 -- 10:50, JES A218A
                        52875:  Friday,  9:00 -- 10:50, UTC 4.110
                        52880:  Friday, 11:00 -- 12:50, UTC 4.102
                        52885:  Friday, 14:00 -- 15:50, WEL 3.402

       Class Textbook:  Computer Systems, A Programmer's Perspective, 2nd Edition
     Textbook Authors:  Randal E. Bryant and David O'Hallaron
        Textbook ISBN:  0-13-610804-0

           Instructor:  Warren A. Hunt, Jr.
    Instructor E-mail:
      Office Location:  Main 2014

         Office Hours:  Mondays, Wednesdays:  4:00 pm to 6:00 pm
                        Tuesdays, Thursdays:  5:00 pm to 7:00 pm
Office Hours Location:  Painter Linux Laboratory (5th floor, Painter Hall)

  Teaching Assistants:  Islam Beltagy, Syed Akbar Mehdi, Vijay Talluru
            TA E-mail:,,
     TA Announcements:  Use

Homework will generally be assigned every week on Monday, and it is due nine days later on Wednesday at the beginning of class. Of course, you may bring finished homework to class; otherwise, you must place homework assignments in the CS Homework drop box. Remember, late homework is not accepted, but the two lowest homework grades will be dropped. Assignments will appear here as the semester progresses. Please show your work -- partial credit cannot be awarded if just an incorrect answer is given. Each homework much have a homework cover sheet PDF) attached to the front. Only write the information requested on this cover sheet; do not include your UT ID number nor your Taxpayer ID number.

You may discuss the homework questions with your peers, but the end product that you turn in should be your own work. I want you to learn with and from your peers, but each of you is responsibile for your own work.

Homework Assignments

  • Homework Assignment 1. Given: September 5, 2012, Due: September 12, 2012.

  • Homework Assignment 2. Given: September 10, 2012, Due: September 19, 2012.

  • Homework Assignment 3. Given: September 17, 2012, Due: September 26, 2012.

  • Homework Assignment 4. Given: October 1, 2012, Due: October 10, 2012.

  • Homework Assignment 5. Given: October 8, 2012, Due: October 17, 2012.

  • Homework Assignment 6. Given: October 15, 2012, Due: October 31, 2012.

  • Homework Assignment 7. Given: October 22, 2012, Due: November 7, 2012.
    To run the Y86 simulator, see the information below for Laboratory 2.

  • Homework Assignment 8. Given: November 5, 2012, Due: November 14, 2012.

  • Homework Assignment 9. Given: November 12, 2012, Due: November 21, 2012.

  • Homework Assignment 10. Given: November 19, 2012, Due: November 28, 2012.

  • Homework Assignment 11. Given: November 26, 2012, Due: December 5, 2012.

    Laboratory Assignments

    Correction to Laboratory 0: For the problem "is_ascii" and "is_character" the use of the "<" operator is OK, even though it is disallowed by the coding instructions in the "problems.c" file. Clarification for Laboratory 0: For the problems "times_7", "is_ascii", "is_character", and "remainder_by_8", the range is now specified by an equation. Correction for Laboratory 0: For the problem "times_7", you may use up to four (4) operations. Correction for Laboratory 0: For the problem "is_character" you may use up to six (6) operations.

  • Laboratory 0:

    The files for the laboratory can be found in a "tar" archive. The instructions, which are also included in the "tar" archive, may be downloaded directly (PDF). Given: Wednesday, September 5, 2012, Due: Wednesday, September 19, 2012, by 2:00 pm.

  • Laboratory 1:

    The files for the laboratory can be found in a "tar" archive. The instructions, which are also included in the "tar" archive, may be downloaded directly (PS, PDF). Given: Wednesday, September 19, 2012, Due: Wednesday, October 17, 2012, by 2:00 pm.

  • Laboratory 2:

    The files for the laboratory can be found directly in the UTCS filesystem. The assembler and simulator have been combined into a single program that you may execute by entering
    at a command prompt. There is no need to download this file, as it is quite large, and attempting to put a copy in your directory may cause you a disk quota problem. There is file with the examples we have discussed:
    This file may be downloaded and used as you wish. Finally, we have the specification for the Y86 machine written in the ACL2 logic. It can be downloaded and inspected.

    A copy of the file examples.c is available.

    The instructions for Lab 2 may be downloaded directly (PDF). Given: Wednesday, October 17, 2012, Part A Due: Tuesday, November 13, 2012, by 9:30 pm, Part B Due: Tuesday, November 20, 2012, by 9:30 pm.

  • Laboratory 3:

    This lab is running the "memory mountain" labs/memory-mountain/memory-mountain.tar code (pages 512 -- 516) from the class textbook on a X86-compatible computer. The PDF laboratory descriptions can be downloaded. Given: Thursday, November 19, 2012. Due: Friday, December 7, 2012, by noon. This laboratory will not be accepted late.

    Y86 Worksheet

    To aid your Y86 knowledge, you may find the class worksheet helpful: worksheet (text version), worksheet (PDF version).

    Return to CS429 course homepage.