基于C++实现的简单CPU模拟器

一、实验背景

该实验为计算机原理模拟实验平台。在学习计算机原理实验课程中,为了方便同学们学习了解模型机中各种寄存器结构、工作原理、算术、逻辑运算单元及其控制方法。所以我们设计计算机组成原理虚拟实验系统方便同学们更加深入的了解实验内容,掌握计算机通过指令系统进行运算的过程。

程序编写语言:c++ 平台环境:VisualStudio2017、C-free

二、设计思想

运算器由算术逻辑单元、累加器、状态寄存器、通用寄存器组等组成。算术逻辑运算单元(ALU)的基本功能为加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、求补等操作。计算机运行时,运算器的操作和操作种类由控制器决定。运算器处理的数据来自存储器,现代计算机都是以存储器为核心,存储能力严重关系到计算机的性能,现代计算机的多级缓存,甚至带有缓存的硬盘都是为了解决性价比问题。由于计算机程序的局部性原理是的Cache-主存结构得以建立,部分程序备份到Cache中,使其读写时大概率命中Cache,极大降低了cpu的等待时长,而且因为Cache比较小,成本得以控制。另外虚拟存储器技术也是为了解决容量和价格的矛盾。Cache-主存的地址映射机制中,全相联方式更加的灵活利用率也高,但是由于采用了全部比较的方式,使得电路复杂,成本加大,而且不利于大容量存储器使用,而直接映射方式采用对号入座的方式简单快速,;处理后的结果数据通常送回存储器,或暂时寄存在运算器中。与Control Unit共同组成了CPU的核心部分。

点击此处下载源码

转载于:https://my.oschina.net/u/4185264/blog/3087733

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值