Package net.sourceforge.uiq3.fx602p
Class Op_M
- java.lang.Object
-
- net.sourceforge.uiq3.fx602p.Owned_Operation
-
- net.sourceforge.uiq3.fx602p.Op_M
-
- All Implemented Interfaces:
IClear,IOperation,IOwned_Operation,IProgrammable_Operation
- Direct Known Subclasses:
A_Register,Op_M_Minus,Op_M_Plus,Op_Min,Op_MR,Op_X_M
abstract class Op_M extends Owned_Operation implements IProgrammable_Operation
Halt Calculator- Author:
- "Martin Krischik" «krischik@users.sourceforge.net»
-
-
Field Summary
Fields Modifier and Type Field Description static intBegin_F_Register(package private) booleanIs_M_RegisterTrue when operating on an M-Registerprivate static LoggerLoggerClass logger instance.static intMask_M_Register_Numberprotected intRegisterRegister number worked onprivate static StringTAGClass logger tag.-
Fields inherited from class net.sourceforge.uiq3.fx602p.Owned_Operation
Owner
-
-
Constructor Summary
Constructors Constructor Description Op_M(@NotNull Calculator Owner)Create operation and attach to owning calculator.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) voidCheck_M(int Memory, boolean Is_M)Check im M Register is validvoidClear(boolean AC)Reset state - for state full operations.voidExecute(short Opcode)Execute virtual CPU command or key stroke(package private) intGet_M(int Opcode)(package private) booleanIs_M(int Opcode)-
Methods inherited from class net.sourceforge.uiq3.fx602p.Owned_Operation
µReset, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface net.sourceforge.uiq3.calculator.IProgrammable_Operation
Display
-
-
-
-
Field Detail
-
Logger
private static final Logger Logger
Class logger instance.
-
TAG
private static final String TAG
Class logger tag.
-
Begin_F_Register
public static final int Begin_F_Register
- See Also:
- Constant Field Values
-
Mask_M_Register_Number
public static final int Mask_M_Register_Number
- See Also:
- Constant Field Values
-
Is_M_Register
boolean Is_M_Register
True when operating on an M-Register
-
Register
protected int Register
Register number worked on
-
-
Constructor Detail
-
Op_M
Op_M(@NotNull @NotNull Calculator Owner)Create operation and attach to owning calculator.- Parameters:
Owner- Calculator which will call this Opcode
-
-
Method Detail
-
Check_M
void Check_M(int Memory, boolean Is_M) throws M_ErrorCheck im M Register is valid- Parameters:
Memory- Memory register to testIs_M- true when M register is handled- Throws:
M_Error- exeption of memory is not valid
-
Clear
public void Clear(boolean AC)
Reset state - for state full operations.- Specified by:
Clearin interfaceIClear- Parameters:
AC- All Clear reset- See Also:
IClear.Clear(boolean)
-
Execute
public void Execute(short Opcode) throws ErrorDescription copied from interface:IOperationExecute virtual CPU command or key stroke
- Specified by:
Executein interfaceIOperation- Parameters:
Opcode- Virtual CPU Operation to be executed- Throws:
Error- something went wrongM_Error- Memory accessed does not existError- See Also:
IOperation.Execute(short)
-
Get_M
int Get_M(int Opcode)
- Parameters:
Opcode- Opcode for which the memory register should be determined- Returns:
- number of the register
-
Is_M
@Contract(pure=true) boolean Is_M(int Opcode)
- Parameters:
Opcode- Opcode for which the F or M register use need to be determined- Returns:
- true if normal memory is used.
-
-