ImageVerifierCode 换一换
格式:DOC , 页数:16 ,大小:268.78KB ,
资源ID:4683030      下载积分:8 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4683030.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(中南大学-计算机体系结构实验报告.doc)为本站上传会员【快乐****生活】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

中南大学-计算机体系结构实验报告.doc

1、计算机体系结构课程设计学院: 信息科学与工程学院 专业班级: 指导老师: 学号: 姓名: 目录实验 1 对指令操作码进行霍夫曼编码3一、实验目的3二、实验内容3三、设计思路4四、关键代码4五、实验截图5六、源代码5实验 2 使用 LRU 方法更新 Cache8一、实验目的8二、实验内容8三、设计思路9四、程序截图9五、实验代码9实验总结16参考文献16 实验 1 对指令操作码进行霍夫曼编码一、实验目的了解和掌握指令编码的基本要求和基本原理二、实验内容1.使用编程工具编写一个程序,对一组指令进行霍夫曼编码,并输出最后的编码结果以及对指令码的长度进行评价。与扩展操作码和等长编码进行比较。2. 问题

2、描述以及问题分析举例说明此问题,例如:P1P2P3P4P5P6P70.450.300.150.050.030.010.01有一组指令的操作码共分七类,它们出现概率如下表所示:对此组指令进行 HUFFMAN 编码正如下图所示:最后得到的 HUFFMAN 编码如下表所示:P1P2P3P4P5P6P7010110111011110111110111111 最短编码长度为: H=0.45*1+0.30*2+0.15*3+0.05*4+0.03*5+0.01*6+0.01*6=-1.95.要对指令的操作码进行 HUFFMAN 编码,只要根据指令的各类操作码的出现概率构造HUFFMAN 树再进行 HUFF

3、AM 编码。此过程的难点构造 HUFFMAN 树,进行 HUFFAM 编码只要对你所生成的 HUFFMAN 树进行中序遍历即可完成编码工作。三、设计思路观察上图 ,不难看出构造 HUFFMAN 树所要做的工作:1、先对各指令操作码的出现概率进行排序,构造一个有序链表。2、再取出两个最小的概率节点相加,生成一个生的节点加入到链表中,同时从两表中删除此两个节点。3、在对链表进行排序,链表是否只有一个节点,是则 HUFFAN 树构造完毕,否则继续做 2 的操作。为此设计一个工作链表(链表的元素时类,此类的功能相当结构。)、HUFFMAN 树节点、HUFFMAN 编码表节点。 四、关键代码哈夫曼树重点

4、在于如何排列权值大小不同的结点的顺序privateintleafNum;/叶子结点个数privateHaffmanNodehnodes;/哈夫曼树的结点数组publicHaffManCode(doubleweight)/构造指定权值集合的哈夫曼树intn=weight.length;/n个叶子结点this.leafNum=n;this.hnodes=newHaffmanNode2*n-1;/n个叶子结点的哈夫曼树共有2n-1个结点for(inti=0;in;i+)/结点数组初始化有n个叶子结点this.hnodesi=newHaffmanNode(weighti);for(inti=0;in-

5、1;i+)/构造n-1个2度结点,每循环一次,构造一个2度结点doublemin1,min2;intx1,x2;min1=min2=Integer.MAX_VALUE;/选择最小和次最小权值,初值为最大权值x1=x2=-1;/记录两个无父母的最小权值结点下标for(intj=0;jn+i;j+)/查找两个无父母的最小权值结点if(hnodesj.weightmin1&hnodesj.parent=-1)min2=min1;x2=x1;min1=hnodesj.weight;/min1记下最小权值 x1=j;/x1记下最小权值结点的下标elseif(hnodesj.weightmin2&hnod

6、esj.parent=-1)min2=hnodesj.weight;x2=j;/x2记下次最小权值结点的下标五、实验截图六、源代码public class huffman private String str;public huffman(String str) this.str=str;/* * 创建节点类 * param args */class NodeNode left;Node right;int data;char c;String code=;/* * 节点数组(字符串类) * param args */public void creatTree()/先去掉重复的字符串,若不存在

7、将字符加在strRepeat中String strRepeat=;for(int i=0;istr.length();i+)char c=str.charAt(i);/判断是否存在if(strRepeat.indexOf(c)=-1) /找到字符位置并返回字符所在的位置strRepeat+=c;/统计字符出现的次数并建立节点Node nodes=new NodestrRepeat.length(); /定义了一个nodes数组/存储节点的坐标值int s=0;for(int i=0;i1)sort(nodes);Node node=new Node();Node n1=nodes0;Node

8、n2=nodes1;node.data=n1.data+n2.data;node.left=n1;node.right=n2;/改变节点数组长度Node nodes2=new Nodenodes.length-1;for(int i=2;inodes.length;i+)nodes2i-2 = nodesi;nodes2nodes2.length-1=node;nodes=nodes2;Node root=nodes0;printCode(root,);/* * 统计字符出现的次数 get方法 */private int getCount(String str,char c)int count

9、 = 0;for(int i=0;istr.length();i+)if(c=str.charAt(i)count+;return count;/* * 冒泡排序法 * param nodes */public void sort(Node nodes)for(int i=0;inodes.length;i+)for(int j=i+1;j=nodesj.data)/交换节点对象Node temp=nodesi;nodesi=nodesj;nodesj=temp;/* * 打印编码 * param args */public void printCode(Node node,String co

10、de)if(node != null)if(node.left=null & node.right=null)System.out.println(node.c+.+node.data+的编码是: +code);printCode(node.left,code+0);printCode(node.right,code+1);public static void main(String args) String str=add bate;huffman hf=new huffman(str);hf.creatTree(); 实验 2 使用 LRU 方法更新 Cache一、实验目的了解和掌握寄存器

11、分配和内存分配的有关技术。二、实验内容LRU置换算法是选择最近最久未使用的页面予以置换。该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来经历的时间T,当须淘汰一个页面时,选择现有页面中T值最大的,即最近最久没有访问的页面。这是一个比较合理的置换算法。 举例说明此问题,例如: 有一个CACHE采用组相连映象方式。每组有四块,为了实现LRU置换算法,在快表中为每块设置一个2位计数器。我们假设访问序列为“1,1,2,4,3,5,2,1,6,7,1,3”。在访问CACHE的过程中,块的装入,置换及命中时,具体情况如下表所示:三、设计思路LRU置换算法是选择最近最久未使用的页面予以置换。

12、该算法赋予每个页面一个访问字段,用来记录一个页面自上次被访问以来经历的时间 T,当须淘汰一个页面时,选择现有页面中 T 值最大的,即最近最久没有访问的页面。这是一个比较合理的置换算法。四、程序截图五、实验代码import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.table.*;public class lru extends Frame public static void main(String args) JFrame.setDefaultLookAndFeelDecorated(

13、true);lru lruc = new lru();lruc.lauchFrame();JLabel jlabel2;JTextField jtf2;JButton jb_input;JScrollPane jsp;JTable jt;DefaultTableModel dtm;static int list = 1, count = list - 1;int time1 = 0;int time2 = 0;int time3 = 0;int time4 = 0;public void lauchFrame() this.setLayout(null);this.setBounds(100,

14、 100, 540, 320);/this.setBackground(Color.cyan);this.setVisible(true);jlabel2 = new JLabel(请输入第 + list + 个访问页面:);jtf2 = new JTextField();jb_input = new JButton(输入); jlabel2.setBounds(20, 50, 140, 20);jtf2.setBounds(155, 50, 50, 20);jb_input.setBounds(240, 50, 60, 20);this.add(jlabel2);this.add(jtf2)

15、;this.add(jb_input);this.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0););jb_input.addActionListener(new InputActionListener();Object title = 访问序列,Cache块0, Cache块1, Cache块2, Cache块3, 状态;dtm = new DefaultTableModel(title, 0);jt = new JTable(dtm);jsp = ne

16、w JScrollPane(jt);jsp.setBounds(50, 80, 440, 197);jsp.setBackground(Color.black);this.add(jsp);class InputActionListener implements ActionListener /没有输入值,提示public void actionPerformed(ActionEvent e) if(jtf2.getText().equals() Object options = OK ;JOptionPane.showOptionDialog(null, 输入错误,请按提示输入!, 警告,

17、JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,null, options, options0);list+;if(count time2 & time1time3 & time1time4) /如果cache0的页面最长时间没有被访问,新页面置换cache0中页面dtm.addRow(new Objectjtf2.getText(), jtf2.getText(), jt.getValueAt(list-3, 2), jt.getValueAt(list-3, 3), jt.getValueAt(list-3, 4), 置换);

18、time1 = 0;time2+;time3+;time4+;jtf2.setText();jlabel2.setText(请输入第 + list + 个访问页面:); else if(time2time1 & time2time3 & time2time4) /如果cache1的页面最长时间没有被访问,新页面置换cache1中页面dtm.addRow(new Objectjtf2.getText(), jt.getValueAt(list-3, 1), jtf2.getText(), jt.getValueAt(list-3, 3), jt.getValueAt(list-3, 4), 置换

19、);time1+;time2 = 0;time3+;time4+;jtf2.setText();jlabel2.setText(请输入第 + list + 个访问页面:); else if(time3time1 & time3time2 & time3time4) /如果cache2的页面最长时间没有被访问,新页面置换cache2中页面dtm.addRow(new Objectjtf2.getText(), jt.getValueAt(list-3, 1), jt.getValueAt(list-3, 2), jtf2.getText(), jt.getValueAt(list-3, 4),

20、置换);time1+;time2+;time3 = 0;time4+;jtf2.setText();jlabel2.setText(请输入第 + list + 个访问页面:); else if(time4time1 & time4time2 & time4time3) /如果cache3的页面最长时间没有被访问,新页面置换cache3中页面dtm.addRow(new Objectjtf2.getText(), jt.getValueAt(list-3, 1), jt.getValueAt(list-3, 2), jt.getValueAt(list-3, 3), jtf2.getText()

21、, 置换);time1+;time2+;time3+;time4 = 0;jtf2.setText();jlabel2.setText(请输入第 + list + 个访问页面:);实验总结 体系结构属于计算机整个的结构,涉及计算机的整个结构,从底层到高层,每层的原理,结构及实现,是一门比较抽象的学科,通过这次的几个实验,让我对计算机的编码和页面的替换算法有了更深层次的理解。 计算机是一门理论性很强的学科,但是实际的操作又是必不可少的。实践可以加深对课程的理解,也能提高编程能力,总之,通过这次实验,我学到了很多。 参考文献1 郑纬民 汤志忠 计算机系统结构 清华大学出版社 2002 2 余腊生 计算机系统结构实验指导书 中南大学信息科学与工程学院制定

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服