Quiz submission record for quiz3-2-1 at Tue Jul 6 21:49:27 2004: Your Answer for Question 1: If data can be represented as anything, then a clever programmer can modify data to his or her liking, legally or illegally. Instructions can be easily changed and modified to the programmer's liking. For example, if we wanted to change how a certain MIPS program ran, we could modify where $ra jumps for a certain loop. One possible technique to prevent this might be to insert checksum instructions regularly in the code that would check the integrity of nearby instructions. This would slow the machine down though, since it has to calculate these checksums. Your Answer for Question 2: A subnormal is an "improper" floating point number. Instead of having the significand always start with a 1. (except for 0), subnormals may have significands that start with 0.____. This stretches the range of 32-bit floating point numbers from 1.0 x 2^-126 to 1.0 x 2^-149. For double precision floating point numbers, the range increases from 1.0 x 2^-1022 to 1.0 x 2^-1074. Your Answer for Question 3: Programmers wrote (0.5 - x) + 0.5 instead of 1.0 - x because the computers then did not have a guard digit which resulted in huge errors when using floating point numbers. Your Answer for Question 4: Some strong points on the IEEE 754 standard: It requires minimum accuracy to one-half ulp in the least significant bit and operations must be commutative (which would help readability and maintance of code a lot). Some weak points on the IEEE 754 standard: Good exception handling and directed rounding. Your unique submission ID is quiz3-2-1-cs61c-cj-1089175767-1576.