# Class: com.pnfsoftware.jeb.core.units.code.asm.simulator.InsnEmulator

Main class that can emulate an instruction and retrieve the correct result. It is based on:
 \- UPDATE\_\*\*\* which provides the field\(s\) to be updated
 \- JUMP\_\*\*\* which computes the new value to assign

## Constructor: InsnEmulator
- parameter: `flags`, type: `int`


## Static Field: JUMP_LAST_OPERAND
Type: `int`

Constant value: `256`

## Static Field: JUMP_MASK
Type: `int`

Constant value: `65280`
Description: What is the new value: from 0x0100 to 0xFF00

## Static Field: LINK
Type: `int`

Constant value: `65536`
Description: saves the return address in LR

## Static Field: NO_FLAG
Type: `int`

Constant value: `0`

## Static Field: UPDATE_MASK
Type: `int`

Constant value: `255`
Description: What is updated: from 0x00 to 0xFF

## Static Field: UPDATE_NONE
Type: `int`

Constant value: `0`

## Static Field: UPDATE_PC
Type: `int`

Constant value: `1`
Description: Always Jump

## Method: getBranchType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.simulator.IInsnEmulator.BranchType`


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


## Method: isPCUpdated
- return type: `boolean`


