欢迎来到天天文库
浏览记录
ID:12122079
大小:96.50 KB
页数:3页
时间:2018-07-15
《计算机组成原理移位运算实验报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机组成原理实验五移位运算实验...............姓名:陈衍席学号:1205110125网工1202【实验环境】1.Windows2000或WindowsXP2.QuartusII9.1sp2、DE2-115计算机组成原理教学实验系统一台,排线若干。【实验目的】本次实验要求掌握移位控制的组合功能。【实验要求】可以利用原理图设计并实现给定数据的逻辑左移SLL、逻辑右移SRL、算术右移SRA几种指定的运算。实验要求自己给定一个数据,然后进行功能仿真,验证仿真结果与理论结果是否一致。【实验原理】移位运算器就是
2、实现将二进制数向左或者向右移动多少位。二进制数据(真值)每相对于小数点左移一位,相当于乘以2;每相对于小数点右移一位,相当于除以2。它根据二进制数有无符号分为逻辑移位运算和算术移位运算,另外还有循环移位。1、逻辑移位:将移位的数据视为无符号数据,各数据位在位置上发生了变化,导致无符号数据的数值(无正负)放大或缩小。2、算术移位:将移位的数据视为带符号数据(机器数)。算术移位的结果,在数值的绝对值上进行放大或缩小,同时,符号位必须要保持不变。3、循环移位:所有的数据位在自身范围内进行左移或者右移,左移时最高位移入最低
3、位,右移时最低位移入最高位。其中算术左移SLA、算术右移SRA:把操作数看成带符号数。对寄存器操作数进行移位(要移动数的第0位——符号位不变。右移时空出的其余位补与第0位相同的1或0;左移时空出的位补0),位数由有效地址决定。逻辑左移SLL、逻辑右移SRL:把操作数看成无符号数。对寄存器操作数进行移位(不管左右移,要移动数空出的位补0),位数由有效地址决定。表移位运算器真值表输入输出D[31..0]SA[4..0]RightArithSH[31..0]AB右移标志算术运算标志D移位SA位【实验步骤】1、根据图中提示
4、,建立移位运算器原理图文件。注意:由于在位移运算器的原理图设计中需要调用前面设计的32位2选1多路选择器,因此需要将在实验四的工程文件中建立的mux2x32、nux2x8、mux2x1的.bdf、.bsf文件导入到本次实验的工程文件中来。具体步骤:(1)首先,最好将要调用到的所有的文件复制到本次建立的工程文件夹内。例如:(2)在新建项目工程文件时,弹出添加文件界面,点击【UserLibraries】按键(或者在设计原理图的时候,点击【Project】-->【Add/RemoveFilesinProject…】,在“
5、General”中选择“Libraries”)。在弹出的界面,点击【…】,导入含有以前所建文件的文件夹,点击【打开】,点击【Add】按键,添加该元件库,添加成功,单击【OK】。添加成功后在后来建立的原理图文件中,就可以看见该原理图库文件,(3)根据图中提示,完成原理图设计。2、文件编译3、功能仿真仿真结果及结果分析:设置D为任意32位二进制数,SA为从0开始的5位二进制计数脉冲,Aright为周期为50ns的时钟脉冲,Right为周期为10ns的时钟脉冲。如图所示:在10ns--15ns时,D=0011011110
6、1010100011100101100100,SA=1、Arith=0、Right=0,逻辑左移1位。输出为SH=01101111010101000111001011001000。在15ns--20ns时,D=00110111101010100011100101100100,SA=1、Arith=0、Right=1,逻辑右移1位。输出为SH=00011011110101010001110010110010。在140ns--145ns时,D=11000010101110100100100001111100,SA=14
7、、Arith=1、Right=0,算术左移14位。输出为SH=10010010000111110000000000000000。在15ns--20ns时,D=00110111101010100011100101100100,SA=14、Arith=1、Right=1,算术右移14位。输出为SH=11111111111111110000101011101001。上图说明SA计数到32位又从0开始。实验总结:通过本次实验,我掌握移位控制的组合功能。
此文档下载收益归作者所有