Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## avrora.core
Class Register

    java.lang.Object
      avrora.core.Register

public class Register
extends java.lang.Object

The `Register` class represents a register available on the AVR instruction set. All registers in the instruction set architecture are represented as objects that have a name and a number. Those objects are singletons and are public static final fields of this class.

Additionally, the `Register` class contains sets of registers that are used in verifying the operand constraints of each individual instruction as defined in the AVR instruction set reference. An example of an operand constraint is that ldi (load immediate) takes as operands one of the general purpose registers {r17...r31} and an immediate. Other instructions take certain subsets of the instructions. Those register sets are allocated once here and are exposed as static fields in this class.

See Also:
  `Operand`, `Instr`

Nested Class Summary
`static class` | `Register.Set`

Field Summary
`static Register.Set` | `ADR_set`
`static Register.Set` | `EGPR_set`
`static Register.Set` | `GPR_set`
`static Register.Set` | `HGPR_set`
`static Register.Set` | `MGPR_set`
`static Register` | `R0`
`static Register` | `R1`
`static Register` | `R10`
`static Register` | `R11`
`static Register` | `R12`
`static Register` | `R13`
`static Register` | `R14`
`static Register` | `R15`
`static Register` | `R16`
`static Register` | `R17`
`static Register` | `R18`
`static Register` | `R19`
`static Register` | `R2`
`static Register` | `R20`
`static Register` | `R21`
`static Register` | `R22`
`static Register` | `R23`
`static Register` | `R24`
`static Register` | `R25`
`static Register` | `R26`
`static Register` | `R27`
`static Register` | `R28`
`static Register` | `R29`
`static Register` | `R3`
`static Register` | `R30`
`static Register` | `R31`
`static Register` | `R4`
`static Register` | `R5`
`static Register` | `R6`
`static Register` | `R7`
`static Register` | `R8`
`static Register` | `R9`
`static Register.Set` | `RDL_set`
`static Register` | `X`
`static Register` | `Y`
`static Register.Set` | `YZ_set`
`static Register` | `Z`
`static Register.Set` | `Z_set`

Method Summary
`java.lang.String` | `getName()`
`int` | `getNumber()`
`static Register` | `getRegisterByName(java.lang.String name)`
`static Register` | `getRegisterByNumber(int num)`
`int` | `getWidth()`
`int` | `hashCode()`
`Register` | `nextRegister()`
`java.lang.String` | `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### R0

    public static final Register R0

### R1

    public static final Register R1

### R2

    public static final Register R2

### R3

    public static final Register R3

### R4

    public static final Register R4

### R5

    public static final Register R5

### R6

    public static final Register R6

### R7

    public static final Register R7

### R8

    public static final Register R8

### R9

    public static final Register R9

### R10

    public static final Register R10

### R11

    public static final Register R11

### R12

    public static final Register R12

### R13

    public static final Register R13

### R14

    public static final Register R14

### R15

    public static final Register R15

### R16

    public static final Register R16

### R17

    public static final Register R17

### R18

    public static final Register R18

### R19

    public static final Register R19

### R20

    public static final Register R20

### R21

    public static final Register R21

### R22

    public static final Register R22

### R23

    public static final Register R23

### R24

    public static final Register R24

### R25

    public static final Register R25

### R26

    public static final Register R26

### R27

    public static final Register R27

### R28

    public static final Register R28

### R29

    public static final Register R29

### R30

    public static final Register R30

### R31

    public static final Register R31

### X

    public static final Register X

### Y

    public static final Register Y

### Z

    public static final Register Z

### GPR_set

    public static final Register.Set GPR_set

### HGPR_set

    public static final Register.Set HGPR_set

### MGPR_set

    public static final Register.Set MGPR_set

### EGPR_set

    public static final Register.Set EGPR_set

### ADR_set

    public static final Register.Set ADR_set

### RDL_set

    public static final Register.Set RDL_set

### YZ_set

    public static final Register.Set YZ_set

### Z_set

    public static final Register.Set Z_set

Method Detail

### getRegisterByName

    public static Register getRegisterByName(java.lang.String name)

### getRegisterByNumber

    public static Register getRegisterByNumber(int num)

### hashCode

    public int hashCode()

### toString

    public java.lang.String toString()

### getName

    public java.lang.String getName()

### getNumber

    public int getNumber()

### getWidth

    public int getWidth()

### nextRegister

    public Register nextRegister()

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD