Virtual CPU Instruction Set: Porovnání verzí
Skočit na navigaci
Skočit na vyhledávání
Smazaný obsah Přidaný obsah
Bez shrnutí editace |
Bez shrnutí editace |
||
| Řádek 55: | Řádek 55: | ||
* [https://justinmeiners.github.io/lc3-vm/ Write your Own Virtual Machine] |
* [https://justinmeiners.github.io/lc3-vm/ Write your Own Virtual Machine] |
||
* [https://www.andreinc.net/2021/12/01/writing-a-simple-vm-in-less-than-125-lines-of-c#loading-and-running-programs Writing a simple 16 bit VM in less than 125 lines of C] |
* [https://www.andreinc.net/2021/12/01/writing-a-simple-vm-in-less-than-125-lines-of-c#loading-and-running-programs Writing a simple 16 bit VM in less than 125 lines of C] |
||
* [https://100r.co/site/uxn.html UXN] - personal computing stack based on a small virtual machine |
|||
[[Category:Programování]] |
[[Category:Programování]] |
||
Verze z 21. 11. 2023, 11:11
Design goals[editovat]
- Simple to implement in other programming languages
- Efficient to execute by emulator
- Future extensibility (to support 128-bit data/address width or more)
- Single instruction code for any data/address width
- Register based load-store architecture rather than stack based machine or accumulator based machine
Other interesting instruction sets[editovat]
| CPU | Instruction count | Instruction size [bits] | Data size [bits] | Addressable memory [bits] | Registers |
|---|---|---|---|---|---|
| Tiny CPU Instruction Set | 22 | 8-16 | 8 | 10 | PC, SP, A, X, SR |
| A Quick Introduction to the ZipCPU Instruction Set | 29 | 32 | 32 | 32 | R0-R13, PC, CC |
| MINI-CPU Instruction Set Specification | 12 | 4-12 | 8 | 8 | PC, ACC, R |
| Simple Virtual Machine | 18 | 8 | 32 | 32 | PC, SP, FP |
| Simple virtual machine which interprets bytecode. | 36 | 16-32 | 16-32 | 16-32 | IP, FLAGS, R0-R9, SP |
| VAM Virtual Assembler Machine | 58 | 16-32 | 16-32 | 16-32 | R0-Rn (IP, SP) |
| Simple 8-bit Assembler Simulator | 60 | 8 | 8 | 8 | PC, SP, A, B, C, D |
| The RiSC-16 Instruction-Set Architecture | 8 | 16 | 16 | 16 | PC, R0-R7 |
| TOY Machine | 16 | 16 | 16 | 8 (256 words) | PC, R0-R15 |
| MU0 | 8 | 16 | 16 | 12 | PC, ACC |
| LC-3 | 15 | 16 | 16 | 16 | PC, R0-R7 |
| TOY/2 - a minimalist 16 bit CPU | 15 | 16 | 16 | 16 | PC, A, T |
| MARIE: An Introduction to a Simple Computer | 9 | 16 | 16 | 12 | PC, ACC |
| Building a 4-Bit Computer: The Instruction Set | 16 | 4 | 4 | 12 | R0-R5, S0, S1, PC, SP, IX, IV, TA |
| How to create your own virtual machine | 35 | 8 | 8 | 16 | A, B, X, Y, D |
| Little Man Computer | 10 | 12 | 8 | 8 | A |
| CRISC | 32 | struct | 64 | 16-64 | |
| CHIP-8 | 35 | 16 | 8 | 12 | V0-V15, I |
| Toy CPU | 14 | 8 | 8 | 8 | A |
External links[editovat]
- Virtual machine on c2 wiki
- Write your Own Virtual Machine
- Writing a simple 16 bit VM in less than 125 lines of C
- UXN - personal computing stack based on a small virtual machine