| Extended Assembler | |||||||||||||
| Machine language: very low level | |||||||||||||
| Assembler: provides higher-level language for convenience in programming | |||||||||||||
| Register mnemonics | |||||||||||||
| We've already used them. The real machine deals in register numbers (0-31). | |||||||||||||
| Only $0 and $31 are special in the hardware. | |||||||||||||
| Other registers are used for particular purposes by software convention. | |||||||||||||
| Pseudoinstructions | |||||||||||||
| Instructions or formats which are not directly implemented in the hardware. | |||||||||||||
| CISC would include many alternative forms of instructions. | |||||||||||||
| Large and slow instruction sets | |||||||||||||
| Pseudoinstruction may be translated to 1 or more real instructions. | |||||||||||||
| Pseudocomputer: more flexible than real computer, easier to program | |||||||||||||
| Another layer of abstraction | |||||||||||||
| Labels | |||||||||||||
| Can use identifiers (names) to represent locations in the program | |||||||||||||
| Assembler calculates necessary offsets | |||||||||||||
| Directives | |||||||||||||
| Control layout and processing of program | |||||||||||||