Changeset 7 for branches/bigint/Instructions.pas
- Timestamp:
- Aug 1, 2024, 11:47:03 PM (3 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/bigint/Instructions.pas
r4 r7 7 7 8 8 type 9 TParamType = (ptNone, ptNumber, ptIndirect );9 TParamType = (ptNone, ptNumber, ptIndirect, ptIndirect2); 10 10 TParamTypeArray = array of TParamType; 11 11 … … 74 74 AddNew(inHalt, 'HALT', [], 'It terminates program execution and halts processor. Processor can be waked up by interrupt.'); 75 75 AddNew(inLoadConst, 'LDC', [ptIndirect, ptNumber], 'Loads constant into address location.'); 76 AddNew(inLoad, 'LD', [ptIndirect, ptIndirect], 'Copies value from one register to another.'); 76 AddNew(inLoadIndex, 'LDI', [ptIndirect, ptIndirect, ptNumber], 'Loads value from one memory location with added relative index to another.'); 77 AddNew(inLoad, 'LD', [ptIndirect, ptIndirect], 'Loads value from one memory location to another.'); 78 AddNew(inLoadMem, 'LDM', [ptIndirect, ptIndirect2], 'Loads value from one indirect memory location to another.'); 79 AddNew(inStoreMem, 'STM', [ptIndirect2, ptIndirect], 'Stotes value to indirect memory location from source location.'); 77 80 AddNew(inInc, 'INC', [ptIndirect], 'Increments value in specified register.'); 78 81 AddNew(inDec, 'DEC', [ptIndirect], 'Decrements value in specified register.'); … … 82 85 AddNew(inJumpZero, 'JPZ', [ptIndirect, ptNumber], 'Jumps to given address if value of register is zero'); 83 86 AddNew(inJumpNotZero, 'JPNZ', [ptIndirect, ptNumber], 'Jumps to given address if value of register is not zero'); 87 AddNew(inPush, 'PUSH', [ptIndirect], 'Push memory location onto stack.'); 88 AddNew(inPop, 'POP', [ptIndirect], 'Pop item from stack and store it into memory location.'); 89 AddNew(inCall, 'CALL', [ptNumber], 'Call subroutine.'); 90 AddNew(inRet, 'RET', [], 'Return from subrotine.'); 84 91 end; 85 92
Note:
See TracChangeset
for help on using the changeset viewer.