计算机组成与设计课内实验指导_第1页
计算机组成与设计课内实验指导_第2页
计算机组成与设计课内实验指导_第3页
计算机组成与设计课内实验指导_第4页
计算机组成与设计课内实验指导_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机组成与设计课内实验指导实验一可执行程序得生成( 第 1 章)一、实验目得 :通过了解高级语言源程序与目标机器代码得不同表示及其相互转换 , 深刻理解高级语言与机器语言之间得关系 , 以及机器语言与不同体系结构之间得关系。二、实验要求 :对教材 1.4 。 节给出得 hello 、 源程序进行编译、链接,最终生成可执行目标代码 .三、实验步骤:、在 win s环境下用任意一个编辑器编写 he lo 、c程序 , 拷贝到 e:open ips目录下。、将winds环境下 e:o nm shel o、源程序拷贝到虚拟机 /home/ 目录下。(1 )打开 vis lb x,界面如图所示 .图

2、1 v albox 主界面( ) 双击 openris ubuntu图标 , 启动虚拟机,界面如图 2所示。(3) 打开命令终端,如图 3所示 , 在命令行输入 udo m u vbox f open ps / t/ 回车,输入 opn sc 密码 , 然后打开虚拟机左上角文件夹 , 按照目录层次打开 /mnt/ 文件夹 , 将 /m下得 hel o、c源程序拷贝到当前( / ome/)目录下。图 2 虚拟机桌面图 3命令终端、在虚拟机环境下将 hl o、c编译为 mips汇编程序 .(1)在命令行输入 mi s, 在连按两次 b键,瞧到如图 4所示得 mips 编译工具列表 .图 4 mi

3、s编译工具(2)如查瞧 m psse-elf-gcc命令使用说明 , 只要在命令行输入 mips s e e f cc help 。( 3) 编译 hello 、源程序为汇编代码:在命令行输入 missd elf gcc s hello 、c回车即可 , 在当前目录下就生成 hello 、s汇编程序。、将汇编程序汇编为二进制机器代码:在命令行输入 mi -sde-el as ip 2 ello 、s hel o、o回车即可 , 在当前目录下就生成 helo 、目标代码。5、进行链接成可执行目标文件。将( /o t/m ps-4 、3mpssd elf/ i ) 安装目录下得 malta 24k

4、 ram host 、 ld 文件拷贝到当前( / ome ) 目录下 , 在命令行输入 mip-sde-elf d t mata 24kc ram-hsted 、 ld hello 、 o hel o、o, 此命令如有问题,用 cc直接编译、汇编、链接成可执行文件 , 即在命令行输入 mip-s elf-gcc t malta 24cram-hote、 ld hello、 c o he 、 om即可 .6、在命令行输入 ips-sde- lf r hel o、om即可瞧到运行结果。7、在虚拟机环境下查瞧编译、 汇编、链接后得结果。 例如在命令行输入 cat hel o、 s即可瞧到编译结果。

5、8、同时在命令行输入 m s s e-elf ojdum s 、 o即可瞧到反汇编代码段与数据段。四、实验报告:1、 说明您做实验得过程 ( 重要步骤用屏幕截图表示)。2、 给出源程序(文本文件 ) 得内容(用十六进制形式表示)。3、 给出可执行目标文件(二进制文件) 得内容 ( 用十六进制形式表示)。4、分析或回答下列问题 .(1)分析同一个源程序在不同机器上生成得可执行目标代码就是否相同。(2)您能在可执行目标文件中找出函数 printf ()对应得机器代码段吗?能得话,请标示出来。(3) 为什么源程序文件得内容与可执行目标文件得内容完全不同?实验二数据表示与运算(第、章)一、实验目得 :

6、、通过无符号数与带符号整数之间得相互转换来理解无符号数与补码整数得表示 .2、了解 ie e75 浮点数在机器中得应用, 特别就是一些特殊值得处理。、了解数据在机器中得存放方式。4、了解高级语言中数据类型得转换与移位操作结果 , 从而能更好地理解指令系统设计与计算机硬件设计所需满足得要求与需要考虑得问题。5、通过检查高级语言中数据运算得不同结果, 进一步理解机器代码在pu 中得执行过程,从而为更好地学习指令系统设计与cu 设计打下良好得基础二、实验要求:1、验证教材表 2、2 中得关系表达式得结果,并编程得出第二章习题.8 得表中结果。2、通过编程得出float与 doble类型得精度( 即十

7、进制有效位得位数).3、编程检查“、 00 、“ sqrt( 4、0) ”得运算结果。4、检查您得机器就是大端方式还就是小端方式, 检查内存变量 ( 如结构或数组)就是否按边界对齐。5、编程实现以下各种操作, 分别用十进制与十六进制形式打印输出各种操作得结果 :(1 )给定一个 sot型数据 -12 5,分别转换为 t 、 unsig ed or 、 unig ed n、 lo t类型得数据;( ) 给定一个 int型数据 214 48 47,分别转换为 short 、 signed sh rt 、 nsigne int 、 lo t类型得数据;()给定一个 float型数据 23456、 7

8、89 , 转换成 oubl 型数据 ;( ) 给定一个 doble型数据 1 456、 7 95, 转换成 float型数据 ;( 5) 按 hort 与 unsign d sh t 类型分别对 12 进行左移 2 位与右移 2 位操作。6、编程计算下列表达式得值 , 分别用十进制与十六进制形式显示各种操作得结果:( 1) n gnd nt 型数据: 1 4 996729=?; -42 7295=?(2) n 型数据: 2178367+1=?; -21 7 83481=?(3)float型数据:( 1、0 + 123 6、7 e30)+(123456、 789 30) ?;1、 +(12345

9、 、 89e30 ( 2456、 7 9e30) ) = ?三、实验步骤 :、编写相关运算得源代码。2打开命令终端 , 在命令行输入 sudo mout t vox p nmps /mnt/ 回车,输入 oen isc 密码 , 然后打开虚拟机左上角文件夹,按照目录层次打开 /mnt/ 文件夹 , 将/mn下得源程序拷贝到当前( hme)目录下。3. 在命令行输入 mips e-el gc t malta-24 c-ram-host d、 l * 、 o * 、 m生成可执行文件。4。在命令行输入 mi s elf run * 、 m检查相关程序运行结果.5。按照实验一中相应操作,对c源程序进

10、行编译、汇编、链接以及可执行代码得反汇编,分析相关数据在计算机内部得表示与运算过程。四、实验报告 :、 说明您做实验得过程(重要步骤用屏幕截图表示) 。2、分析或回答下列问题。(1) 在虚拟机上,1 用 int 类型与 usi i t 类型表示得结果分别就是多少 ?(2)f oa类型与 o ble类型得精度各就是多少?(3 )无符号数与带符号整数得扩展操作方式就是否相同(4)补码整数 ( 如 t型数)就是否总能转换为等值得?各就是如何进行得 ? f oat 类型数据?为什么?(5) f oa 型数据就是否总能转换成等值得 doule 型数据?为什么?(6 ) 长数被截断成短数后可能发生什么现象

11、?为什么?( 7) 将某一源程序生成得可执行文件反汇编 , 分析反汇编代码并与编译生成得汇编代码进行比较。实验三cahe与程序访问得局部性( 第4章)一、实验目得 :1、通过实际程序得执行,理解“存储程序”工作方式得自动执行过程。2、通过检查实际程序得存储空间, 了解数据得存储与排列顺序。3、通过实际程序得执行结果,了解程序访问得局部性对带有cace 得计算机系统性能得影响。二、实验要求:1、将 hllo orld 程序编译为汇编程序在t pim模拟器上运行。2. 编写以下程序 , 修改或添加必要得语句 (如计时函数等) ,以计算与打印主体程序段得执行时间。分别以 m=1000, =1、 m=

12、100, n= 000、m1, n= 0 00,执行程序与程序,以比较两个程序执行时间得长短。程序段 a:a_r (int m,int n)nt i, j, mn ;for(i 0; im; i+ )for(j 0; jn; +)aij i+ ;程序段 b:_c ( int m,int n ) n i, j , a ;o ( = 0 ; n;j )fo (i=0;im;i+ )aij i+j;三、实验步骤:1、将 hell ld 、s汇编程序,在pi 模拟环境下运行, 检查机器就是大端方式还就是小端方式以及内存变量( 如结构或数组 ) 就是否按边界对齐。2、将程序程序段 a与 b在实验一得基础

13、上编译为汇编语言。3、按照附录 a mipssim得指令列表、附录 c misim得汇编语言文档要求修改汇编程序,适合 ipssim模拟环境 .4、按照 ips m使用说明在 ipssim模拟环境下单步运行并检查内存空间。四、实验报告 :1、 说明您做实验得过程 ( 重要步骤用屏幕截图表示) 与执行结果。、 对实验结果进行分析 , 说明局部数据块大小、数组访问顺序等与执行时间之间得关系。五、附录:1、spim模拟器安装对于 spim,可以将 ts _.1.7_win o解压到某一目录下 , 然后单击 e up、ex或者 qtspm-m n w、 msi文件,默认设置直接安装。2、mipssim

14、模拟器安装对于 missim,需要安装 microsoft 、n ra ewo组件 (d tnetfx 、exe) , 然后直接运行 mip、 xe即可。实验四程序得机器级表示及其过程调用(第5章)一、实验目得:1、理解 ips通用寄存器得使用。、学会使用 m s汇编语言编写简单得程序.、理解高级语言过程调用得机器代码表示及其执行过程。二、实验要求 :对教材例、 10高级语言通过手工转换或交叉编译器编译为 mip汇编程序,然后在 qtspi 模拟器上单步运行,分析堆栈使用情况与过程调用执行过程。三、实验步骤:1、在 w dos环境下用任意一个编辑器将例子中得c语言程序补充完整。2、结合书中给出得子函数汇编,将c语言程序手工转换为 m ps汇编语言。、在 qtspm模拟器单步执行,查瞧通用寄存器与内存空间得变化。四、实验报告 :1、 说明您做实验得过程(重要步骤用屏幕截图表示)与执行结果。2、 对实验结果进行分析 , 程序调用过程中三个子函数得栈指针、 帧指针等寄存器内容以及堆栈得内容得异同。五、附录 :1、mip+汇编指令基础。2、mip常用指令。、 see_mps_un。实验五机器指令执行过程(第6章)一、实验目得:1、了解数据通路得设计。、了解控制器得设计。、理解机器指令得执行过程.二、实验要求:将ope ips模型进行综合、仿真,分析数据通路与控制器得设计 , 进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论