Package com.pnfsoftware.jeb.core.units.code.asm.processor
package com.pnfsoftware.jeb.core.units.code.asm.processor
Types used to define and represent processors' instructions, operands, and registers.
-
ClassDescriptionAn operand builder for immediates with default values which can be zero-extended or sign-extended.Extension mode and size for integer immediates.AbstractInstruction<T extends IInstructionOperand>A skeleton implementation for
instruction
s.AbstractInstructionManager<T extends IInstruction>A skeleton class used to create instruction managers.Reference implementation forIInstructionOperandGeneric
.Reference implementation forIInstructionOperandList
.AbstractOperandBuilder<T extends IInstructionOperand>An operand builder that supports an optional value as well as a memory area.AbstractProcessor<InsnType extends IInstruction>An abstract implementation of aprocessor
.Represent a block of bytes, with support for byte ordering within byte groups of 16- 32- or 64-bits.Operands performing Complex Memory Access (CMA).This interface is used to represent the most common types of operands: immediate values, registers, direct addresses (absolute or relative), memory access, etc.Operand that contains several operands.Operands that potentially use registers.Operands with a size.Default implementation ofAbstractImmediateOperandBuilder
that build 3 different types of operand: IMM, RELADDR and ADDR.Utility routines forIInstruction
.IOperandBuilder<T extends IInstructionOperand>Definition of a simple instruction operand factory.IProcessor<InsnType extends IInstruction>Definition of a simple machine code processor or microcontroller.Basic information about a processor (e.g.A layout definition for a bank of registers.Processor registers data, consisting of a register bank and their concrete values.A simple implementation ofIInstructionOperandGeneric
.Exception raised byprocessors
when reporting errors found in the machine code to be parsed (eg, invalid opcodes).Basic implementation ofIProcessorInformation
.The register bank service is a global registry maintaining processors' register banks, used by native code objects.Description of a processor register.Type of encoding used for the bits stored in a given register.A layout bridge permits converting from one register layout to another.Type of register, used when defining register banks.