# Class: com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea
- Super class: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.AbstractEncodedMemoryArea`

Represent a memory Area in code. A memory area is composed of an index and a length

## Protected Constructor: DirectEncodedMemoryArea
- parameter: `index`, type: `int`
- parameter: `length`, type: `int`


## Method: decode
- parameter: `code`, type: `byte[]`
- return type: `long`


## Method: getIndex
- return type: `int`

Description: Retrieve the bit index of this area.
return: bit index, where 0 represents the least significant bit

## Method: getLength
- return type: `int`


## Method: shift
- parameter: `shift`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.EncodedMemoryAreaList`

Description: Shift this encoded memory area to the left.
parameter: shift: shift amount in bits
return: shifted encoded memory area

## Static Method: bit
- parameter: `index`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea`

Description: Build a [DirectEncodedMemoryArea](com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea.md) from index with length 1. Index 0 represents the  least significant bit.
parameter: index: bit index
return: encoded memory area

## Static Method: decodeInt
- parameter: `index`, type: `int`
- parameter: `length`, type: `int`
- parameter: `code`, type: `byte[]`
- return type: `int`

Description: Decode bits from instruction bytes.
parameter: index: bit index
parameter: length: length in bits
parameter: code: instruction bytes
return: decoded value

## Static Method: get
- parameter: `index`, type: `int`
- parameter: `length`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea`

Description: Build a [DirectEncodedMemoryArea](com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea.md) from index and length. Index 0 represents the least  significant bit.
parameter: index: bit index
parameter: length: length in bits
return: encoded memory area

## Static Method: getThumb2
- parameter: `index`, type: `int`
- parameter: `zone`, type: `int`
- parameter: `length`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea`

Description: Build an [DirectEncodedMemoryArea](com.pnfsoftware.jeb.core.units.code.asm.processor.memory.DirectEncodedMemoryArea.md) for Thumb\-2
parameter: index: index in the 16\-bit area
parameter: zone: 0 for the LSB side, 1 for the MSB
parameter: length: length in bits
return: encoded memory area

