A few students are concerned that two ugly things could happen if your program did not test for these uglies explicitly and have sent me email asking whether or not you had to. So, I decided to send this message, so you will know that these two things are not necessary for you to test for in PA 2. 1. A student pointed out that if there are 600 locations and each location contains x7F, i.e., +127, then x3100 does not have enough bits to store the SUM. Yup! A real world program would provide a test that if you went over +32,767, an error message would appear. For purposes of this program, +you can assume that this won't happen. 2. Two students asked if the program had to test whether the value in x3101 was less than or equal to 600. Again, a real program would of course test the value in x3101, since the limit of 600 decimal means we are only providing 300 memory locations, from x3102 to x322D, to store the most values we are allowing, i.e., 600 one-byte values. If it did not test, and the contents of x3101 was bigger than 600 decimal, what would happen? Answer: Whatever was in each location starting with x322E would be treated as two one-byte values and added to the SUM. For purposes of this program, you can assume the value in x3101 is at most, 600 decimal. Before I let you get back to work, I should let you know why we decided to not require your program to perform these tests. Answer is simple: when we made up the assignment, we were in fact torn between having you provide for these two situations or having you not provide for these two situations. To have you not do it made the program a little simpler, and after all, you are just getting started. But when you graduate, you will certainly have to protect any programs you write from these kinds of uglies. We decided that since you are not graduating at the end of 306, we have time to sensitize you to such things later. We did, however, agonize over it, but decided the assignment was challenging enough without it. Good luck finishing PA 2. Yale Patt