Dr. Patt, I was a little confused on the question that was asked about the JSRR instruction. Someone was saying that the RET instruction at the end would be redundant since it let's you go to any address in memory (not just one on the same page), can you clarify what that means? Actually, he was saying that the JMPR instruction could be used instead of the RET instruction. The JMPR and the JSRR have the same opcode. The difference is bit[11], which we call the Link bit. If it is 0, then the return linkage is not saved in R7. Therefore, the JMPR instruction will load PC with the contents of the address formed by taking the Base Register, and adding the offset. Let's look at an example: 1100 0 00 111 000000 Opcode 1100 says JSRR/JMPR Bit[11]=0 means the address of the instruction after the JMPR is not saved in R7. Bits [8:6]=111 means R7 is the Base register. Bits[5:0]=000000 means the offset to be added to R7 is 0. Taken all together, this instruction will branch to the address contained in R7. But that is exactly what the RET instruction does. Therefore, RET is extraneous. Also, on another topic, is there ever really a need to use a .BLKW pseudo-op? Can't a .FILL be used to reserve a memory location by just placing some random value in that location? I know .BLKW is a bit more convenient, but I'm just curious if there's ever a case where it's absolutely necessary. Absolutely, a word of memory can be reserved with a .FILL pseudo-op and some extraneous value that would never be read anyway, since you would not read it until you wrote to it. However, if you wanted to reserve 2 words of memory, you would have to do: .FILL .FILL Probably not such a pain. And, instead of .BLKW #10, you would have to do: .FILL .FILL .FILL .FILL .FILL .FILL .FILL .FILL .FILL .FILL How about .BLKW #50? You get the idea. Add to this the business of labels: You want to reserve 5 words with the first word addressed as A, 10 words with the first word addressed as B, and 37 words with the first word addressed as C. I suggest that it is easier to do: A .BLKW 5 B .BLKW #10 C .BLKW #37 than 52 .FILL pseudo-ops, rembering to label the first, the 6th and the 16th. OK? Thank you, <> You're welcome, Yale Patt