Thank-you. I misunderstood the following statement in the Coldfire programmer's reference manual for the MOV3Q instruction.
"Immediate data field—3 bits of data having a range {-1,1-7} where a data value of 0 represents -1.
Apparently, the assembler sees -1, puts a 0 in the immediate data field, and the hardware knows to interpret it as -1.
With the assembler instruction corrected below, is #2 the correct value in d2 based on the 3-bit 2's complement of -1 being 0x7?
mov3q.l #-1,d2
//(1) d2=0xfffffff8 (suspect is wrong)
//(2) d2=0xffffffff (suspect is correct)
Tim
Message Edited by tupdegrove on 2009-07-09 08:40 AM