Virtualní procesor 4: Porovnání verzí

Z ZděchovNET
Skočit na navigaci Skočit na vyhledávání
(Založena nová stránka: * Index registru: číslo kódované jako 4-bit dynamické, 0 - R0, 1 - R1, 2 - R2, 3 - R3 * Šířka registru: číslo kódované jako 4-bit dynamické, 0 - 8-bit, 1 - …)
 
Bez shrnutí editace
Řádek 1: Řádek 1:
* Index registru: číslo kódované jako 4-bit dynamické, 0 - R0, 1 - R1, 2 - R2, 3 - R3
* Index registru: číslo kódované jako 4-bit dynamické, 0 - constant, 1 - R1, 2 - R2, 3 - R3, ...
* Šířka registru: číslo kódované jako 4-bit dynamické, 0 - 8-bit, 1 - 16-bit, 2 - 32-bit, 3 - 64-bit, 4 - 128-bit, ...
* Šířka registru: číslo kódované jako 4-bit dynamické, 0 - 8-bit, 1 - 16-bit, 2 - 32-bit, 3 - 64-bit, 4 - 128-bit, ...
* Datové typy
** Celé číslo
** Záporné číslo
** Desetinné číslo


Rx - registr, kódováno pomocí indexu a šířky
Rx - registr, kódováno pomocí indexu a šířky
Řádek 12: Řádek 16:
| Store to memory || STM [Rx], Ry ||
| Store to memory || STM [Rx], Ry ||
|-
|-
| Load constant || LDC Rx, n ||
| Load system register || LDS Rx, Sx ||
|-
| Store system register || STS Sx, Rx ||
|-
|-
| Clear || CLR Rx ||
| Clear || CLR Rx ||
Řádek 34: Řádek 40:
| Decrement || DEC Rx ||
| Decrement || DEC Rx ||
|-
|-
| Jump || JP Rx ||
| Jump || JP Rx ||
|-
|-
| Call subroutine || CALL Rx ||
| Jump with flag || JPF flag,Rx ||
|-
| Jump relative || JR Rx ||
|-
| Jump relative with flag || JRF flag, Rx ||
|-
| Call subroutine || CALL Rx ||
|-
| Call subroutine with flag || CALLF flag, Rx ||
|-
| Call subroutine relative || CALLR Rx ||
|-
| Call subroutine relative with flag || CALLRF flag,Rx ||
|-
|-
| Return from subroutine || RET ||
| Return from subroutine || RET ||
|-
| Return from subroutine with flag || RET flag ||
|-
|-
| Push to stack || PUSH Rx ||
| Push to stack || PUSH Rx ||
|-
|-
| Pop from stack || POP Rx ||
| Pop from stack || POP Rx ||
|-
| Addition || ADD Rx, Ry ||
|-
| Substraction || SUB Rx, Ry ||
|-
| Multiplication || MUL Rx, Ry ||
|-
| Division || DIV Rx, Ry ||
|-
| Shift left || SHL Rx, Ry ||
|-
| Shift right || SHR Rx, Ry ||
|-
| Compare || CMP Rx, Ry ||
|-
| Set bit || SET Rx, Ry ||
|-
| Reset bit || RES Rx, Ry ||
|-
| Test bit || BIT Rx, Ry ||
|}
|}



Verze z 22. 1. 2016, 00:20

  • Index registru: číslo kódované jako 4-bit dynamické, 0 - constant, 1 - R1, 2 - R2, 3 - R3, ...
  • Šířka registru: číslo kódované jako 4-bit dynamické, 0 - 8-bit, 1 - 16-bit, 2 - 32-bit, 3 - 64-bit, 4 - 128-bit, ...
  • Datové typy
    • Celé číslo
    • Záporné číslo
    • Desetinné číslo

Rx - registr, kódováno pomocí indexu a šířky

Název Zápis Poznámka
Copy COPY Rx, Ry
Load from memory LDM Rx, [Ry]
Store to memory STM [Rx], Ry
Load system register LDS Rx, Sx
Store system register STS Sx, Rx
Clear CLR Rx
Exchange XCHG Rx, Ry při různých šířkách?
Input IN Rx, [Ry]
Output OUT [Rx], Ry
Xor XOR Rx, Ry
And AND Rx, Ry
Or OR Rx, Ry
No operation NOP
Increment INC Rx
Decrement DEC Rx
Jump JP Rx
Jump with flag JPF flag,Rx
Jump relative JR Rx
Jump relative with flag JRF flag, Rx
Call subroutine CALL Rx
Call subroutine with flag CALLF flag, Rx
Call subroutine relative CALLR Rx
Call subroutine relative with flag CALLRF flag,Rx
Return from subroutine RET
Return from subroutine with flag RET flag
Push to stack PUSH Rx
Pop from stack POP Rx
Addition ADD Rx, Ry
Substraction SUB Rx, Ry
Multiplication MUL Rx, Ry
Division DIV Rx, Ry
Shift left SHL Rx, Ry
Shift right SHR Rx, Ry
Compare CMP Rx, Ry
Set bit SET Rx, Ry
Reset bit RES Rx, Ry
Test bit BIT Rx, Ry