计算机系统结构试验二.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机系统结构课程 2013——2014学年 第2学期 专业:姓名: 专业: 学号: 指导老师: 年 月 FI 实验二:存贮层次模拟器2 一、 实验目的与要求 使学生清楚认识虚拟存贮层次结构,熟练掌握常用的几种存储地址映彖与变换方 法,以及FIFO、LRU等替换算法的工作全过程。 要求用程序实现任意地址流在存储层次上的命中情况,实验结束后提交源程序和 实验说明书。 二、 实验内容 在模拟器上实现在任意地址流下求出在主存一辅存两层存贮层次上的命中率。 三、 实验步骤 主存一辅存:映像方式采用组相联,替换算法分别选择FIFO、LRU两种算法 实现。 要求主存容量、页大小以及组数等可以输入修改。 求出命中率;显示替换的全过程;任选一种高级语言来做。 要设计简洁、易于操作的界面。 四、 实验仪器设备 计算机(装有常用编程环境,如C、VC++等) 五、 代码: private void but ton 1 Click (object sender, E vent Args e)〃 组相联映像 LRU 替换 { if (textBoxl. Text 二二 | | textBox2. Text 二二 | | textBox3. Text 二二 | | textBox4. Text ==丨 | textBoxo.Text == 〃“) McssagcBox. Show (请输入数据! ”); else { bool state = false; string cellstate = string str = tcxtBox5.Text; int row = str .Length; int mzes 二 0, index 二 0; float mzl = 0. Of; int column = Convett?Tolnt32(textBox1?Text); int zcount = Convert. Tolnt32(tcxtBox2. Text); int zpage = column / zcount; int i 二 0, j = 0, t 二 0, k = 0; int iUp = 0, iDown 二 0; int [, ] iResult; iRcsult = new int[zcount, zpage]; int[, ] iResultO; iRcsultO = new int[zcount, zpagc]; iResult[0, 0] = 0; for (i = 0; i zcount; i++) for (j = 0; j zpage; j++) { iResult[i, j] = t; iResult0[i, j] = t: t++; } t 二 0; int [, ] imax; imax = new int[zcount, zpage]; for (i = 0; i zcount; i++) for (j = 0; j zpage; j++) imax[i, j] = 0; if (comboBoxl. Text ==装入) { for (i = 0; i zcount: i++) for (j 二 0; j zpage; j++) dataGridViewl. Columns. Add (first,主存第+ i. ToStr i ng() + 组 + 〃第+ j.ToStringO + 〃页〃); dataGridViewl. Columns. Add (first,状态); index = this? dataGridView1? Rows? Add(); t 二 0; for (i 二 0; i zcount; i++) for (j = 0; j zpage; j++) { this. dataGridViewl. Rows[index]. Cells[t]Value = iResult[i, j]. ToStringO ; t++; } this. dataGridViewl. Rows [index]. Cellstcolumn]. Value =主存初态; for (j = 0; j row; j++) { index = this? dataGridView1. Rows? Add(); for (k = 0; k zcount; k卄) for (i = 0; i zpage; i++) imaxfk, i]++; int strj = 0; strj = (Convert. Tolnt32(str[j]) - 48) % column; for (i = 0; i zcount; i++) if (strj = iResultOli, 0] strj = iResultO

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档