文档详情

计算机系统结构实验报告册1.doc

发布:2017-06-06约1.53万字共13页下载文档
文本预览下载声明
计算机系统结构 实验报告册 C#编写 姓名: 学号: 专业: 计算机科学与技术 班级: 2010135 指导教师: 孙全红 华北水利水电学院信息系系统结构教研室 实验一 存贮层次模拟器 完成日期: 2013/6/7 学时:4学时 【实验目的】 1、使学生清楚认识虚拟存贮层次结构,熟练掌握常用的几种存储地址映象与变换方法,以及FIFO、LRU等替换算法的工作全过程。 2、要求用程序实现任意地址流在存储层次上的命中情况,实验结束后提交源程序和实验说明书。 【实验内容】 在模拟器上实现在任意地址流下求出在 Cache—主存两层存贮层次上的命中率。 【实验步骤】 1.Cache—主存:映像方式要实现全相联、直接映象、组相联方式三种方式,并选择每一种映像方式下输出结果;替换算法一般使用LRU算法。 3.要求主存容量、Cache大小、页大小、块大小以及组数等可以输入修改。 4.求出命中率;显示替换的全过程;任选一种高级语言来做。 5.要有简洁、易于操作的界面。 【实验仪器设备】 计算机(装有常用编程环境,如C、VC++等) 【源程序、实验结果及分析、实验心得及体会】 源程序: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace 存贮层次模拟器 { public partial class Form1 : Form { struct Cache { public int GroupIndication;//组号 public int GroupBlockNumber;//块内块号 public int Adress;//块内地址 }; Cache[] c = new Cache[50]; int[] count = new int[50];//计数器 int[] adress_stream;//地址流 string yxway; string sfway; int c_num, m_num, group, block_size, block_stream; int m_block_num, c_block_num; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { comboBox1.SelectedIndex = 0; comboBox2.SelectedIndex = 0; richTextBox1.Text = 提示:\n -1代表该Cache块为空.; } public bool Judge() { int a = Convert.ToInt16(textBox1.Text); int b = Convert.ToInt16(textBox2.Text); int c = Convert.ToInt16(textBox3.Text); int d = Convert.ToInt16(textBox4.Text); if (b a || b % a != 0) { MessageBox.Show(主存大小有误,必须是cache的整数倍,请重新输入); textBox2.Clear(); textBox2.Focus(); return false; } if
显示全部
相似文档