by frb » Wed Sep 20, 2006 9:07 am
Well, I guess that obvious to me doesn't mean obvious to everyone :?
Here are some simple answer
.equ means "equal', it just assigns a load-time constant to a symbol. Pretty much every asm syntax I've ever seen has a similar concept
symbols can include characters (?., etc.) that wouldn't be valid for "C" symbols; it's a simple way to avoid namespace pollution
Why shouldn't a 32-bit ISA be able to do a 32-bit move (which really is a "copy" operation)? Are you worried about how to assign 32-bit immediates? In that case, because VEX is a VLIW instruction set, in a 4-issue machine you have 128 bits to play with (borrowing from adjacent slots), so there's plenty of space to encode long immediates. The book has a lengthy explanation about it, so instead of rewriting it here, I'll just point you to that...