Memory15<OT extends ProgramOperation> class
Null safety
HP 15C's memory. Like in the HP 16C, registers and programs are stored by the nybble. However, matrices, the imaginary stack, and storage for solve/integrate just deduct from the memory otherwise available, but don't actually use it.
On the 16C it made more sense to store the registers by the nybble, since register size changes with the word size, rounded up to the nearest nybble. The 16C's memory contents aren't changed when the word size changes, and while the mapping of the memory interpretation isn't specified, the fact that a temporary change in word size doesn't lose information in the registers is.
On the 15C, there's nothing like this behavior; registers are always 14 nybbles. We keep the user registers in the common storage, since we inherit that from our superclass, but the other uses of the register pool storage use regular dart structures for their underlying storage.
Constructors
Properties
- availableRegisters → int
-
Number of uncommitted registers available in the pool.
read-only
- hashCode → int
-
The hash code for this object.
read-onlyinherited
-
model
→ Model15<
OT> -
final
- numRegisters ↔ int
-
read / write
- policy → MemoryPolicy15
-
latefinal
-
program
↔ ProgramMemory<
OT> -
latefinalinherited
- programNybbles → int
-
Amount of memory taken up by program
read-onlyinherited
- registers → Registers
-
latefinalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-onlyinherited
- storage → ByteData
-
finalinherited
- totalNybbles → int
-
Total number of nybbles of storage
read-onlyinherited
Methods
-
availableRegistersWithProgram(
MProgramRunner? runner) → int -
decodeJson(
Map< String, dynamic> json) → void -
inherited
-
initializeSystem(
OperationMap< OT> layout, OT lbl, OT rtn) → void -
Called by our controller, which necessarily happens after the Model
exists.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited
-
reset(
) → void -
inherited
-
toJson(
) → Map< String, Object> -
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited