Here are the exercises and their solutions. Be mindful that this is for educational purposes only. I am not including these that, if for some reason they should be reused in future courses, that they may be freely copied and distributed.
- Exercise #1
- Exercise1_Solution.doc (37.5 Kb)
- Exercise1.doc (36 Kb)
- Here is the exercise and solution for Exercise #1, that covered some of the core policies in this course.
- Exercise #2
- Exercise2_Solution.doc (440 Kb)
- Exercise2.doc (447.5 Kb)
- The exercise statement for Exercise #2 (identifying parts of a PC) along with the solution.
- Exercise #3
- Exercise3_Solution.doc (49 Kb)
- Exercise3.doc (49.5 Kb)
- Exercise on basic constructs of Boolean algebra along with solutions.
- Exercise #4
- Typical solution logic circuit (MultiSIM model) (74.74 Kb)
- Altenerative Solution (MultiSIM model) (73.021 Kb)
- Exercise4_Solutions.doc (123 Kb)
- Exercise4.doc (47 Kb)
- Exercise #4 required the development of a logic circuit to identify vowels (as per a given logic encoding) using MultiSIM. Here is the exercise document, solution document, and MultiSim design files for your immediate reference.
- Exercise #5
- Exercise5_Solution.doc (46.5 Kb)
- Exercise5.doc (38.5 Kb)
- Hand written exercise on converting Boolean equations and Java programs to logic circuits.
- Exercise #6
- Exercise6.doc (40.5 Kb)
- Exercise6.ms10 (85.966 Kb)
- Lab exercise (combination of hand written exercies and logic circuit from MultiSIM) on developing a circuit to permit any one of 4 switches to control any one of 4 probes.
- Exercise #7
- Exercise7_Solution.doc (52 Kb)
- Exercise7.doc (33.5 Kb)
- Hand written exercise on converting numbers from Binary to Decimal and vice versa (not collected for grading)
- Exercise #8
- Exercise8_Solution.doc (44.5 Kb)
- Exercise8.doc (33.5 Kb)
- Hand written exercise on converting numbers from decimal to binary, octal, and hex(adecimal) [not collected for grading]
- Exercise #9
- Revised schematic (solution) (99.316 Kb)
- Starting MultiSIM schematic (89.711 Kb)
- Exercise on using MultiSIM to convert a Ripple Carry Adder circuit to a Adder/Subtractor circuit.
- Exercise #10
- Exercise10_Solution.doc“>Exercise10_Solution.doc (70 Kb)
- Exercise10.doc“>Exercise10.doc (63.5 Kb)
- Handwritten exercise on programming the simple data path developed in this course.
- Exercise #11
- Exercise11_Solution.doc“>Exercise11_Solution.doc (73.5 Kb)
- Exercise11.doc (68.5 Kb)
- Exercise on programming the advanced data path to implement
- if statements
- loops
- Exercise #12
- Exercise12_Solution.doc“>Exercise12_Solution.doc (47.5 Kb)
- Exercise12.doc (45.5 Kb)
- Exercise on basic MOV instructions in the x86 architecture
- Exercise #13
- Exercise13_Solution.doc (59.5 Kb)
- Exercise13.doc (59 Kb)
- Lab exercise introducing Linux and using Linux for x86 assembly programming.
- Exercise #14
- Exercise14_Solution.doc (42.5 Kb)
- Exercise14.doc (41 Kb)
- Exercise on translating algebraic experssions to assembly instructions.
- Exercise #15
- Exercise15_Solution.doc (56.5 Kb)
- Exercise15.doc (55.5 Kb)
- Exercise on translating boolean expressions to assembly.
- Exercise #16
- Exercise16.doc (54.5 Kb)
- tree_solution.s (2.217 Kb)
- tree.s (1.604 Kb)
- Lab exercise on printing a varying number of *s on the screen.
- Exercise #17
- Exercise17_Solution.doc (45 Kb)
- Exercise17.doc (40.5 Kb)
- Hand written exercise on memory modes supported by x86 architecture.
- Exercise #18
- Exercise18.doc (43 Kb)
- Solution Assembly Source (1.598 Kb)
- Lab exercise on modifying an assembly language program to operate with strings.
- Exercise #19
- Exercise19.doc (39.5 Kb)
- strrev_solution.s (4.066 Kb)
- Exercise on reversing a string.
- Exercise #20
- Exercise20_Solution.doc (44.5 Kb)
- Exercise20.doc (42.5 Kb)
- Exercise on stack operations along with solutions.
- Exercise #21
- Exercise21_Solution.doc (34.5 Kb)
- Exercise21.doc (34.5 Kb)
- Exercise on quantitative performance comparisons along with soultions.



