基于恢复余数法定点原码一位除法器的设计课程设计报告(编辑修改稿)内容摘要:

加上 |y|补商 R2左移一位加 0,加上 y的补。 商 R2左移一位加 1 被除数 R0左移一位 计数器 R3减 1 被除数 R0左移一位 计数器 R3减 1 计数器 R3为0 计数器 R3为0 Y N 被除数 R0加除数 R1 Y N 被除数 R0减除数 R1 被除数R00 Y 余数 R00 Y 恢复除数 R2 商符判断 结束 N N 被除数 R00 N Y Y N 沈阳航空航天大学课程设计报告 错误 !未指定书签。 8 算法流程 图如图 所示。 除法开始前, R2 寄存器被清 0,准备接收商,被除数的原码放在 R0 寄存器中,除数的原码放在 R1 寄存器中,计数器 R3 中存放需要移位的次数。 除法开始后,首先 判断除数是否为 0,若除数为 0 则进行处理,若不为 0,则用被除数减去除数,若运算结果大于 0,商上 1。 若结果小于 0,商上 0。 然后被除数左移一位,计数器减 1。 当计数器 R3 内容为 0 时,运算结束。 功能模块的设计与实现 主要模块包括:操作数预处理模块、上商置 0模块、上商置 1模块、商符运算模块四大模块。 操作数预处理 模块的设计与实现 功能描述 操作数预处理模块的主要功能是对操作数的初始化及预处理。 具体包括下面两个方面的处理: 将输入的除数和被除数保存在某个内存中备份,备份的原始 数据以便将来进行符号位的运算。 求输入的除数和被除数的数据位,也就是将除数和被除数全部转化为正数进行后面的计算,具体做法就是将除数和被除数分别与“ 00001111( 0FH)”进行“与”运算,保证运算过程中的初始数据均为正数。 流程图 图 操作数预处理模块流程图 开始 初始化: R0 被除数 R1 除数 R2 商值 R3 计数器 R0 和 R1数 据分别保存 在内存 9F 和 9E 中备份 AND R0,0FH 被除数与 0FH“与” AND R1,0FH 除数与 0FH“与” 结束 沈阳航空航天大学课程设计报告 错误 !未指定书签。 9 上商置 0 模块的设计与实现 功能描述 上商置 0 模块中要进行恢复余数,原码一位除法器恢复余数法进行计算,区别于加减交替算法。 当余数为负时 ,将商的最后一位添 0,这时,需要进行恢复,余数加上 [Y*]补,再将得到的余数和商同时左移一位,然后余数再加上 [— Y*]补存到 R2 上,再判断余数的正负,如果余数为负时,循环进行上商置 0 的操作,否则,进行上商置 1 的操作。 流程图 图 上商置 0 模块流程图 上商置 1 模块的设计与实现 功能描述 上商置 1 的算法比较简单,不存在不同的算法,原码一位除法都是相同的计 开始 余数为负,商置 0 恢复余数 +[Y*]补 左移一位 减去余数 +[Y*]补 结束 沈阳航空航天大学课程设计报告 错误 !未指定书签。 10 算。 当余数为正时上商置 1,这时,再将得到 的余数和商同时向左移一位,然后余数加上 [— Y*]补存到 R2 上,在判断余数的正负。 如果余数为正时,循环进行上商置 1 的操作,否则,进行上商置 0 的操作。 流程图 图 上商置 1 模块流程图 商符运算 模块的设计与实现 功能描述 商的符号计算原码一位除法和原码一位乘法一样都是单独处理的,商符由两数的符号位进行异或运算求得,商值是由两数绝对值相除求得。 将 9FH 和 9EH地址的除数 X 和被除数 Y 分别右移四位,得到 X1 和 Y1 再将两数进行相加运算,得到一个值是 Z,然后判断 Z 的最低位是否为零,如果为零,则商的符号为正,否则商的符号为负。 开始 余数为正,商置 1 结束 左移一位 减去除数 +[Y*]补 沈阳航空航天大学课程设计报告 错误 !未指定书签。 11 流程图 开 始Z = X 1 + Y 1判 断 Z 的 最 低 位 是 否 为 零商 的 符 号 为负N商 的 符 号 为正Y结 束分 别 将 除 数 X 和 被 除数 Y 右 移 四 位 得 到 X 1和 Y 1 图 商符运算模块流程图 沈阳航空航天大学课程设计报告 错误 !未指定书签。 12 第三章 测试结果 程序仿真 将事先编好的汇编程序输入到列表里,保存将格式改写成 .ASM,再进行仿真,仿真可以一步一步进行仿真,你可以看到每步执行过程中,寄存器 R0~R3 和累加器 A 的变化,根据变化可以知道每步执行是否正确,直 到最后输出 OUT 和R2。 仿真测试 仿真测试一 —— 两个正数除法运算 当 X=, Y= 时的仿真结果如下图所示。 已知 X=,Y=,根据原码一位除法恢复余数法进行计算可得出商为 ,再将 X和 Y 的符号位进行异或可得出商的符号为正,所以最终商为 ,余数为。 仿真过程图如下所示: 图 仿真测试一 数据初始化 图 如图 所示。 R0、 R R2 和 R3 4个寄存器中分别初始化存入原始数据被除沈阳航空航天大学课程设计报告 错误 !未指定书签。 13 数 0BH、除数 0DH、 商值 00H 和计数器初始值 04H。 图 仿真测试一 数据备份 图 如图 所示,将原始数据被除数和除数存入内存中备份,以便将来做商符计算时使用,图中 MAR 中显示的地址为除数 0DH 存入的地址 9E。 图 仿真测试一 数据预处理 图 如图 所示,将原始数据被除数和除数进行去符号处理使之均变为正数进行运算,这里由于初始数据本身就是正数,所以 R0 和 R1。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。