microprobe.target.isa.ISA¶
-
class
ISA[source]¶ Bases:
objectAbstract class to represent an Instruction Set Architecture (ISA).
An instruction set architecture (ISA) object defines the part of the computer architecture related to programming, including instructions, registers, operands, memory operands, etc.
Methods
__init__()add_to_register(register, value)param register: branch_to_itself()branch_unconditional_relative(source, target)param source: compare_and_branch(val1, val2, cond, target, …)param val1: full_report()get_context([variable, tmpl_path])get_dat(**kwargs)get_register_for_address_arithmetic(context)param context: get_register_for_float_arithmetic(context)param context: load(reg, address, context)param reg: load_float(reg, address, context)param reg: negate_register(reg, context)param reg: new_instruction(name)param name: nop()normalize_asm(mnemonic, operands)register_value_comparator(comp)set_context([variable, tmpl_path])set_register(reg, value, context)param reg: set_register_bits(register, value, mask, …)param register: set_register_to_address(reg, address, context)param reg: set_target(target)param target: store_decimal(address, length, value, context)param address: store_float(reg, address, context)param reg: store_integer(reg, address, length, context)param reg: Attributes
address_registerscontext_varcontrol_registersdescriptionISA description ( str).flag_registersfloat_registersinstructionsISA instructions ( dictmapping strings toInstructionType).nameISA name ( str).registersscratch_registersscratch_vartargetAssociated target object ( Target).
-
instructions¶ ISA instructions (
dictmapping strings toInstructionType).
-
registers¶
-
scratch_registers¶
-
address_registers¶
-
float_registers¶
-
control_registers¶
-
scratch_var¶
-
context_var¶
-
store_integer(reg, address, length, context)[source]¶ Parameters: - reg –
- address –
- length –
- context –
-
store_decimal(address, length, value, context)[source]¶ Parameters: - address –
- length –
- value –
- context –
-
set_register_to_address(reg, address, context, force_absolute=False, force_relative=False)[source]¶ Parameters: - reg –
- address –
- context –
- force_absolute – (Default value = False)
-
set_register_bits(register, value, mask, shift, context)[source]¶ Parameters: - register –
- value –
- mask –
- shift –
- context –
-
compare_and_branch(val1, val2, cond, target, context)[source]¶ Parameters: - val1 –
- val2 –
- cond –
- target –
- context –
-
flag_registers¶
-