https://github.com/bancedev/tinyvm
A virtual machine for a minimal computer written in less than 150 lines of C
https://github.com/bancedev/tinyvm
Last synced: about 1 year ago
JSON representation
A virtual machine for a minimal computer written in less than 150 lines of C
- Host: GitHub
- URL: https://github.com/bancedev/tinyvm
- Owner: BanceDev
- License: gpl-3.0
- Created: 2025-02-01T18:21:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-01T18:23:35.000Z (over 1 year ago)
- Last Synced: 2025-04-03T01:16:21.291Z (about 1 year ago)
- Language: C
- Size: 92.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TinyVM
TinyVM is an implementaion of a very minimal computer as a way to learn about computer architecture and how instruction sets for CPUs can be emulated. The TinyCPU being virtualized has only 6 registers, 4Kb of ROM memory, and 4 instructions. The entire VM is written in just over 100 lines of C code and is all in a single file. I hope this VM is able to teach people a little about computer architecture, assembly languages, and high level CPU design.
## Compiling/Installation
```
git clone https://github.com/BanceDev/tinyvm.git
cd tinyvm
gcc -o tinyvm tinyvm.c
```
## License
This project is licensed under the GPLv3 License.
For more details, see the [LICENSE](./LICENSE) file.