导航
课程首页
  • PM-Summit 全球产品经理大会云会员
  • SDCon 全球软件研发技术大会云会员
  • ML-Summit 全球机器学习技术大会云会员
  • C++性能优化高端培训
  • AI全栈开发实战营
精品课 极客时间

C 知道

登录
会员中心
消息
历史
创作中心
创作
学习中心
成为讲师

虚拟机设计:从0构造8051虚拟机

虚拟机设计:从0构造8051虚拟机
共49节 348人在学 课程详情
课程目录
讨论留言
  • 课程简介

    • 课程简介
    • 软件安装与介绍
    • 8051体系结构简介
    • 指令集简介
  • 建立指令解析框架

    • 初始化虚拟机
    • 建立基本的运行流程
    • 初次解析指令运行
    • 加载hex文件
    • 循环遍历检测多个文件
    • 实现内存测试(1)
    • 实现内存测试(2)
    • 实现内存测试(3)
    • 实现运行结果测试
    • 打印运行结果信息
  • 数据传输类指令

    • 建立指令描述表
    • 数据传输类MOV指令(1)
    • 数据传输类MOV指令(2)
    • 数据传输类MOV指令(3)
    • 数据传输类MOV指令(4)
    • 数据传输类MOV指令(5)
    • 数据传输类MOVC指令
    • 数据传输类MOVX指令
    • 出栈入栈指令
    • 交换类指令
  • 逻辑运算类指令

    • 逻辑与指令ANL的解析
    • 逻辑或ORL指令的解析
    • 异或XRL指令的解析
    • 取反和移位指令
    • 处理psw的奇偶校验位
  • 算术运算类指令解析

    • 加法指令add(1)
    • 加法指令add(2)
    • 自增指令inc
    • 自减指令dec
    • 减法指令subb(1)
    • 减法指令subb(2)
    • 乘法mul, 除法div, da指令
  • 跳转类指令

    • 跳转、调用与函数返回指令(1)
    • 跳转、调用与函数返回指令(2)
    • 条件跳转类指令(1)
    • 条件跳转类指令(2)
    • 位运算与跳转类指令(1)
    • 位运算与跳转类指令(2)
  • 模拟外设

    • 实现串口的发送(1)
    • 实现串口的发送(2)
    • 实现串口的接收
    • 定时器模拟
    • 中断系统模拟
    • 支持不同的寄存器组
  • 不同平台移植

    • 移植虚拟机到ARM芯片(Cortex-M3)
播放页问题反馈
视频学习中有任何产品建议都可由此反
馈,我们将及时处理!

课时介绍

建立指令描述表建立指令描述表建立指令描述表建立指令描述表

课程介绍

课程采用从0行代码编写的方法,通过一步步的开发,最终完成一个8051芯片的虚拟机。该虚拟机完整地支持所有标准8051内核指令集的解析和运行。同时支持中断、串口、定时器等部分外设的功能模拟。


在课程中,将会参考8051内核的指令集手册,逐条分析CPU的各指令集。分析其指令编码,了解不同的寻址模式,分析其具体的执行过程,最后实现指令的加载、执行。通过这样的过程,提供了深入理解计算机指令运行的好机会。


在课程的最后,该虚拟机将会被移植到ST公司的STM32芯片(ARM内核)上,从而实现类似JAVA程序的一次编译、多个平台运行的效果

推荐课程

信息系统项目管理师自考笔记

李明 · 717人在学

python从0到1:期货量化交易系统(CTP实战,高频及合成K线数据

王先生 · 22082人在学

手把手搭建Java超市管理系统【附源码】(毕设)

汤小洋 · 4200人在学

Java毕设springboot外卖点餐系统 毕业设计毕设源码 使用教

黄菊华 · 787人在学

基于SSM酒店管理系统(毕设)

小尼老师 · 838人在学

java项目实战之购物商城(java毕业设计)

Long · 5152人在学

手把手搭建Java求职招聘系统【附源码】(毕设)

汤小洋 · 1506人在学

Python Django 深度学习 小程序

钟翔 · 2318人在学

城管局门前三包管理系统+微信小程序(vue+springboot)

赖国荣 · 597人在学

Vue+Uni-app(uniapp)入门与实战+赠送仿美团点餐小程序

李杰 · 3982人在学

正在试验
后自动删除环境
课程实验
本次实验时间已到期 00:00:00

    订阅失败

    虚拟机设计:从0构造8051虚拟机
    虚拟机设计:从0构造8051虚拟机 ...

    订阅列表已满,请先移出部分订阅内容。

    当前章节需购买后观看
    开通超级会员免费看!专家精选系列课程,满足你从入门到精通!更有问答月卡免费送,你的问题有问必答!
    提交答案

    购买课程

    扫码完成付费,可继续学习全部课程内容

    加载中...
    课件正在飞速打包中,请耐心等待几秒钟~
    首页
    博客
    下载
    学习
    社区
    C知道
    GitCode
    InsCodeAI
    技术会议
    会员中心
    创作中心
    联系我们
    工作时间: 8:30 - 22:00
    客服电话: 400-660-0108
    kefu@csdn.net在线客服
    • 关于我们
    • 招贤纳士
    • 商务合作
    • 寻求报道
    • 京ICP备19004658号
    • 经营性网站备案信息
    • 公安备案号11010502030143
    • 营业执照
    • 北京互联网违法和不良信息举报中心
    • 家长监护
    • 中国互联网举报中心
    • 网络110报警服务
    • Chrome商店下载
    • 账号管理规范
    • 版权与免责声明
    • 版权申诉
    • 出版物许可证
    • ©1999-2024北京创新乐知网络技术有限公司