1、 课 程 设 计 说 明 书课 程 设 计 说 明 书 计算机组成原理 算法实现 (五)计算机组成原理 算法实现 (五) 专业专业 计算机科学与技术 学生姓名学生姓名 班级班级 M 计算机 101 学号学号 指导教师指导教师 完成日期完成日期 2013 年 6 月 21 日 1 目目 录录 1 课程设计目的 . 2 2 课程设计内容与要求 . 2 2.1 课程设计的内容 2 2.2 课程设计的要求 2 3 实现方法 . 2 3.1 系统目标 2 3.2 主体设计 4 3.2.1 主窗体的设计 . 4 3.2.2 定点整数真值还原窗体的设计 6 3.2.3 定点整数单符号位补码加减法 8 3.2
2、.4 定点整数的原码乘法 10 3.2.5 浮点数的加减运算 11 4 设计小结 13 参考文献 . 13 2 1 1 课程设计目课程设计目的的 本课程设计是在学完本课程教学大纲规定的全部内容、完成所有实践环节的基 础上,旨在深化学生学习的计算机组成原理课程基本知识,进一步领会计算机组成 原理的一些算法,并进行具体实现,提高分析问题、解决问题的综合应用能力。 2 课程设计内容与要求课程设计内容与要求 2.1 课程设计的内容 计算机组成原理算法实现(五) 2.2 课程设计的要求 能够实现机器数的真值还原(定点整数) 、定点整数的单符号位补码加减运算、 定点整数的原码乘法运算和浮点数的加减运算。
3、3 实现方法实现方法 3.1 系统目标 本程序含有以下几个功能模块,分别能够实现如设计内容所设计的功能。共有 5 个类,各类之间的关系如图 3-1 所示: 3 计算机组成原理算法实现 输入口令 机器数 的真值 还原 定 点 整 数 的 单 符 号 位 补 码 加 减运算 定 点 整 数 的 原 码乘法 浮点数 的加减 运算 输入一个 带符号的 二进制数 原 码 显 示 反 码 显 示 补 码 显 示 移 码 显 示 返 回 依 次 输 入 两 个 单 符 号 二 进 制 加 法 结 果 显 示 依 次 输 入 两 个 单 符 号 二 进 制 乘 法 结 果 显 示 依次输入 两个数的 阶码和尾
4、 数 加 法 介 码 显 示 加 法 尾 数 显 示 减 法 介 码 显 示 减 法 尾 数 显 示 返 回 返 回 返 回 4 系统流程图: 3.2 主体设计 3.2.1 主窗体的设计 程序菜单需要在输入口令正确后方可使用,若口令输入错误需给出重新输入口 令的提示,三次口令输入错误则禁止使用。 开 始 判 断 口 令 是 否正确 选择界面 机器数的 真值还原 (定点整 定 点 整 数 的 单 符 号 位 补 码 加 减运算 定点整 数的原 码码乘 浮点数 加减法 重新输入真值” 、 “反-真值” 、 “补-真值”或“移- 真值”按扭中的任一个后,将在第二文本框中显示对应操作的结果。选择“返回
5、” 按扭时将关闭此窗体。 算法的原理:计算机中常用的数据表示格式有两种,一是定点格式,二是浮点 格式。 a)定点表示:约定机器中所有数据的小数点位置是固定的。由于约定在固定的位置, 所以小数点就不再使用记号“.”来表示。 b)浮点表示:定点数表示的数的范围有限,为了扩展数的表示范围,按照科学记数 法表示数据的方式,任何一个二进制数 N 都可以表示成如下的格式: NM*2e M :尾数,是一个纯小数,决定数据的表示精度 e :指数,又称为阶码,是一个整数,决定数据的表示范围 一般书写所表示的数据称为真值,在计算机中为了表示符号位,通常把符号位 和数字位一起编码来表示相应的数,形成了各种数据的存储
6、和表示方法,这些编码 称为机器码。常用的机器码有原码、反码、补码和移码。 7 a)原码:原码的数值部分是该数的绝对值,最高位表示符号位,最高位为 0 是正数, 最高位为 1 是负数。 b )反码:正数的反码等于原码,负数的反码等于除符号位外其余二进制数码 0 变 成 1,1 变成 0。 正数: x反 = x原 = x 负数: 符号位不变,其余变反 c)补码:正数的补码等于原码,负数的补码等于反码加 1。 正数: x补= x原 负数: x补= x反 +1 d)移码:是符号位取反的补码,一般用做浮点数的阶码,引入的目的是为了保证浮 点数的机器码为全 0。 真值还原流程图: 8 3.2.3 定点整数单符号位补码加减法 进行定点整数单符号位补码加减法的实现时都是在主窗体选择对应的菜单项后 进入对应窗体再进行具体操作。操作时首先选择“输入”按扭输入参与运算的数据, 然后再选操作按扭。 算法的原理: 任何两数的补码只和等于两数只和的补码 补码加法 x补 + y补 = x+y补 补码减法 x补