We do not do homework.

Your conversion factor is close, but not 100% accurate, though it's more accurate than what I use for a rough estimate: multiply km/hr by 5/8. Since you say you do not have to be accurate I guess it's close enough. Any time you have fractions and want to do fractional arithmetic with fixed point arithmetic you have problems. How do you handle this issue in C? You follow the same procedure in Assembler.

After you do the multiply you most likely divide the result by 1000, though, of course, you can handle this issue in the output format. There are two ways to do this: the Divide Decimal (DP) instruction, or the Shift and Round (SRP) instruction to shift the number 3 digits to the right since you are dividing by 1000. Both instructions present problems: DP because you have to allow for a remainder, and SRP because the method to specify a right shift isn't very clear in Principles of Operation.

Unfortunately Principles of Operation isn't very helpful in telling you how to specify a right shift in SRP, so I will tell you a simple way: specify 64-n in the shift amount field in the instruction, where n is the number of digits to shift.

For what it's worth, WTO xxx, where xxx is the name of a storage area will not work, for two reasons. First, while you can specify a storage area, you specify it differently. Second, the storage area must be formatted very precisely. Look at how the storage area in something like WTO 'message text' is formatted, and you'll have the idea.