好文档 - 专业文书写作范文服务资料分享网站

计算机组成原理实验

天下 分享 时间: 加入收藏 我要投稿 点赞

.

课程设计说明书

计算机组成原理算法实现(五)

1 课程设计目的

本课程设计是在学完本课程教学大纲规定的全部容、完成所有实践环节的基础上,旨在深化学生学习的计算机组成原理课程基本知识,进一步领会计算机组成原理的一些算法,并进行具体实现,提高分析问题、解决问题的综合应用能力。

2课程设计容与要求

1、题目:

.

.

计算机组成原理算法实现(五) 2、功能:

够实现机器数的真值还原(定点整数)、定点整数的单符号位补码加减运算、定点整数的原码一位乘法运算和浮点数的加减运算。

3 功能模块详细设计

3.1 主窗体设计

图3-1主界面图

系统进入(主)窗体的设计:菜单需要在输入口令正确后方可激活使用。口令输入错误时要给出重新输入口令的提示,三次口令输入错误应该禁止使用。由于本次课程设计所用的语言是Java,在对应主窗口的主类中设计主窗口的样式,及个对应按钮的功能,根据指导书的容布局各个Button,本次设计主窗口共有六个按钮,其中Button1对应确认,其余的分别对五个功能按钮。除此之外,各按钮标签都已在指导书中给出,留出白色的输入口令的窗口。 运行程序的主界面如图3-3:

.

.

图3-3口令界面图 3.2 主体功能

NewClass.java

该java文件为整个程序的主类。 Form2.java

实现机器数的真值还原(定点整数) Form3.java

实现定点整数的单符号位补码加减运算、定点整数的 Form4.java

实现定点整数的原码乘法运算。 Form5.java

实现浮点数的加减运算。 3.2.1定点整数真值还原

.

.

点击主界面中的机器数真值还原按钮出现如图3-4界面

图3-4定点整数还原

在上面的窗体中按“输入”按扭时,将输入焦点设置为最上面的一个文本框上。输入一个机器数(如10010)后,按“原->真值”、“反->真值”、“补->真值”或“移->真值”按扭中的任一个后,将在第二文本框中显示对应操作的结果。选择“返回”按扭时将关闭此窗体。

定点表示:约定机器中所有数据的小数点位置是固定的。由于约定在固定的位置,所以小数点就不再使用记号“.”来表示。

一般书写所表示的数据称为真值,在计算机中为了表示符号位,通常把符号位和数字位一起编码来表示相应的数,形成了各种数据的存储和表示方法,这些编码称为机器码。常用的机器码有原码、反码、补码和移码。

a)原码:原码的数值部分是该数的绝对值,最高位表示符号位,最高位为0是正数,最高位为1是负数。

b )反码:正数的反码等于原码,负数的反码等于除符号位外其余二进制数码0变成1,1变成0。

正数: [x]反 = [x]原 = x ;负数: 符号位不变,其余变反 c)补码:正数的补码等于原码,负数的补码等于反码加1。 正数: [x]补= [x]原 ;负数: [x]补= [x]反 +1

d)移码:是符号位取反的补码,一般用做浮点数的阶码,引入的目的是为了保证浮点数的机器码为全0。

3.2.3定点整数的单符号位补码加减运算

进行定点整数单符号位补码加减法的实现时都是在主窗体选择对应的菜单项后进入对应窗体再进行具体操作。操作时首先选择“输入”按扭输入参与运

.

.

算的数据,然后再选操作按扭。如图3-6

图3-6定点整数补码加减

定点整数单符号位补码加减法的实现,输入按钮,删除所有数据并将光标移到第一个输入窗口里面,开始输入,注意是补码输入,实现定点整数加减法时,定义了一个carry[]数组记录每位的进位,carry[]最后一位初值为‘0’,carry[]长度比输入大1位,用多重选择语句嵌套使用,罗列两数第i位及上位进位的状况,输出结果记录在out[i]中,第i位进位记录在carry[i]中,当最高数值位进位与符号位进位不同时表溢出。值得一提的是,加一个负数和减一正数时,都转化为加一个数的补码,由之前的算法保证,进行运算,其他保持不变。注意的是,输入第二个数时,要注意字符串长度与第一个字符串长度保持一致,否则将产生中断提醒请输入数值位长度相等的数字:接下来的返回键与之前界面功能相同,回到主界面。

算法的原理:

(1)参加运算操作的数都用补码表示。 (2)数据的符号与数据一样参加运算。 (3)求差时将负减数求补,用求和代替求差, 将减法运算转化为补码的加法运算。

(4)运算结果为补码。如果符号位为 0 ,表明运算结果为正;如果符号位为 1 ,则表明结果为负。5 )符号位的进位为模值,应该去掉。 补码减法 运算公式为: [X]补–[Y]补=[X–Y]补 (3.2) 通过 [Y]补 求得 [–Y]补 可以将减法运算转化为补码的加法运算。 已知 [Y]补求 [–Y]补 的法则是:对 [Y]补各位(包括符号位)取反,末位加1 ,就可以得到[–Y]补 例 [Y]补 =1.1011 则 [–Y]补 =0.0101 [Y]补 = 0.1011 则 [–Y]补 =1.0101 例 4 X=0.1100 Y=0.0110 求 [X]补–[Y]补 = ? 解: [X]补 =0·1100 [Y]补 =0·0110 [–Y]补 =1·1010

溢出:在定点数机器中,数的大小超出了定点数能表示的围,叫溢出。 a)在定点小数机中数的表示围是-1

.

计算机组成原理实验

.课程设计说明书计算机组成原理算法实现(五)1课程设计目的本课程设计是在学完本课程教学大纲规定的全部容、完成所有实践环节的基础上,旨在深
推荐度:
点击下载文档文档为doc格式
8zirp2mipb721et5ixox47ty70kclt004ze
领取福利

微信扫码领取福利

微信扫码分享