Giter Site home page Giter Site logo

toy_vm's Introduction

写一个属于自己的虚拟机(Write your Own Virtual Machine)

介绍

整个代码和文章来自大神。在大神的这篇文章中,用非常通俗易懂的语言,教你如何从 0 开始写一个能运行汇编二进制文件的虚拟机。通过此次学习,我学习到:

  • 虚拟机的本质到底是什么
  • 如何用 C 实现一个能运行汇编二进制文件的虚拟机

code 文件夹中我实现了自己的 toy_vm 。在 tutorial 文件夹中翻译了文章。

大神的教程,讲得很透彻。只要跟着文章的思路,学习大神的代码。就能写出一个能运行 2048 的虚拟机

最后英文水平有限,我尽量翻译,大家不要嫌弃,有错误帮忙指出来。谢谢!!!

目录

  1. 介绍(Introduction)
  2. LC-3 架构 (LC-3 Architecture)
  3. 汇编举例(Assembly Examples)
  4. 执行程序(Executing Programs)
  5. 实现指令(Implementing Instructions)
  6. 实现所有的指令(Instruction Cheat Sheet)
  7. 陷入例程(Trap Routines)
  8. 实现所有的陷入例程(Trap Routine Cheat Sheet)
  9. 加载程序(Loading Programs)
  10. 内存映射寄存器(Memory Mapped Registers)
  11. 平台细节(Platform Details)
  12. 运行虚拟机(Running the VM)
  13. 备用的 c++ 技术(Alternate C++ Technique)
  14. 相关项目(Related Projects)

最后

如果觉得不错,点个 star 吧。

然后我们交个朋友?

toy_vm's People

Contributors

tensshinet avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.