# Class: com.pnfsoftware.jeb.core.units.code.asm.processor.arch.AbstractRegisterBank

Base implementation of a registers bank layout. 

 It is preferable to use [AbstractRegisterBank2](AbstractRegisterBank2) to define register banks.

## Constructor: AbstractRegisterBank


## Static Field: REG_GRP_GP
Type: `int`

Constant value: `0`
Description: Group for general\-purpose registers: always 0.

## Static Field: REG_GRP_SPECIAL
Type: `int`

Constant value: `1`
Description: Group for non\-GP registers and registers not fitting in other user\-created groups.

## Method: format
- parameter: `type`, type: `int`
- return type: `java.lang.String`


## Method: getAllDescriptionEntries
- return type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry>`


## Method: getCountOfDescriptionEntries
- return type: `int`


## Method: getDescriptionEntries
- return type: `java.util.Collection<com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry>`


## Method: getDescriptionEntry
- parameter: `regnum`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Method: getDescriptionEntryById
- parameter: `id`, type: `long`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Method: getDescriptionEntryByName
- parameter: `name`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Method: getDescriptionEntryByName
- parameter: `names`, type: `java.util.Collection<java.lang.String>`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Method: getDescriptionEntryByType
- parameter: `type`, type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterType`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Method: getDescriptionEntryMap
- return type: `java.util.Map<java.lang.Integer,com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry>`

Description: Get the full\-register description entries by register index.
return: a map of full registers: key=index, value=full register entry

## Method: toString
- return type: `java.lang.String`


## Protected Static Method: add
- parameter: `entries`, type: `java.util.Map<java.lang.Integer,com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry>`
- parameter: `bitsize`, type: `int`
- parameter: `name`, type: `java.lang.String`
- parameter: `altname`, type: `java.lang.String`
- parameter: `encoding`, type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterEncoding`
- parameter: `type`, type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterType`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Protected Static Method: add
- parameter: `entries`, type: `java.util.Map<java.lang.Integer,com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry>`
- parameter: `bitsize`, type: `int`
- parameter: `name`, type: `java.lang.String`
- parameter: `altname`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`


## Protected Static Method: add
- parameter: `entries`, type: `java.util.Map<java.lang.Integer,com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry>`
- parameter: `bitsize`, type: `int`
- parameter: `name`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.RegisterDescriptionEntry`

Description: Creates a [RegisterDescriptionEntry](RegisterDescriptionEntry) based on its name and its bitsize
parameter: entries: global map
parameter: bitsize: bitsize of the register
parameter: name: name of the register
return: created register description entry

