文档详情

计算机组成原理算法实现(一).doc

发布:2017-02-06约1.98千字共8页下载文档
文本预览下载声明
组成原理课程设计报告 专业 计算机科学与技术 学生姓名 吴燕 班级 D计算机121 学号 1220704130 指导教师 花小鹏 完成日期 2015年1月23日 计算机组成原理算法实现(一) 课程设计的目的 本课程是在学习完本课程教学大纲规定的全部内容、完成所有实践环节的基础上,旨在深化学生学习的计算机组成原理课程基础知识,进一步领会计算机组成原理的一些算法,并进行具体实现,提高分析问题、解决问题的综合应用能力。 设计内容 题目:计算机组成原理算法实现(一) 功能:能够实现定点证书的机器数表示、定点整数的变形补码加减运算、定点整数的原码一位乘法运算和浮点数的加减运算。 详细设计 3.1 系统目标 (1)实现定点整数的机器数表示,对于正数的定点整数,它的原码、补码、反码为它本身;移码为最高符号位变为1,其他位保持不变。对于负数的原码为最高符号位为一,数值位保持不变;补码为从低位向高位找,直到找到第一不为零的位置将第一个不为零的数后(包括第一个不为零的数)的所有数按位取反(包括符号位);反码为符号位为1,数值位按位取反;移码为符号位为0,然后从低位向高位找,直到找到第一不为零的位置将第一个不为零的数后(包括第一个不为零的数)的所有数按位取反(不包括符号位)。 (2)定点整数变形补码加减运算算法:首先获取两个数的变形补码,获取补码的原则是:首先判断是正数还是负数,如果是正数,则将“+”号去掉,然后将第一个“0”变成“00”;如果是负数,则将“-号去掉,然后从低位向高位找,直到找到第一不为零的位置将第一个不为零的数后(包括第一个不为零的数)的所有数按位取反(包括符号位)。然后在通过按位加运算计算两个数的值,如果是减法也转换成加法做。 (3)定点原码乘法:乘数的每一位分别跟被乘数的每一位相乘,1*1=1,1*0||0*1||0*0=0,其中小数点后面的第一位为两个数的符号运算。乘数以及被乘数转化为原码形式正数直接操作,负数第一个由零变为1 。浮点加减法根据阶码相同阶码则后面的尾数做加减运算,阶码不相同先把阶码转化为相同的阶码,同时改变的尾数做加减法运算。按每一个界面的返回的时候就会转变为开始的界面。 (4)浮点数的加减运算:首先将两个浮点数用变形补码表示。然后进行对阶运算,若两数的阶码相同,则可直接对两数的尾数进行加减运算,否则必须先使两数的阶码相同,原则是将阶码小的向阶码大的看起,再对阶码小的浮点数的尾数进行移位处理。再将两个数的尾数进行求和,并进行规格化处理,规格化处理的原则是:如果符号位是11并且小数点后的第一位也是1,则将尾数左移,直到小数点后的第一个数为0;如果符号位是00并且小数点后的第一个数是0,则进行左移处理,直到小数点后的第一个数为1;如果符号位是10或01,则将尾数右移一位。最后进行舍入处理且判断溢出。流程图如下: 3.2 主体功能 登录界面设计 系统进入(主)窗体的设计:菜单需要在输入口令正确后方可激活使用。口令输入错误时要给出重新输入口令的提示,三次口令输入错误应该禁止使用。 图1主界面图 图2口令正确激活使用 图3口令错误重新输入 图4三次口令错误禁止使用 定点整数的机器表示 选择主窗体中“定点整数机器表示”时进入下图所示的窗体: 图5二进制数对应的原码 图6二进制数对应的反码 图7二进制数对应的补码 图8二进制数对应的移码 定点整数的变形补码加减运算 图9定点整数的变形补码加减运算结果 定点整数的原码乘法 图10定点整数的原码乘法结果 浮点数的加减运算 图11浮点数的加减运算结果 四、设计小结 通过本次课程设计进一步了解了定点整数的各类运算,以及对定点整数的各项操作。加深了对组成原理中定点整数的机器数表示,定点整数的变形补码加减法运算,定点整数的原码一位乘法运算和浮点数的加减法运算。更好的了解了组成原理,更好的明白了组成原理的运算的实现,同时对于JAVA的程序运用也更为熟练。 尾数相加 规格化处理 结束 开始 浮点数A,B 将A、B的阶码和尾数用补码表示 阶码是否相等 阶码小的数的尾数右移 N Y 1
显示全部
相似文档