【2017年整理】二进制除法原理-金锄头文库

您所在的位置:网站首页 二进制除法原理 【2017年整理】二进制除法原理-金锄头文库

【2017年整理】二进制除法原理-金锄头文库

2024-05-17 04:12| 来源: 网络整理| 查看: 265

《【2017年整理】二进制除法原理》由会员分享,可在线阅读,更多相关《【2017年整理】二进制除法原理(2页珍藏版)》请在金锄头文库上搜索。

1、二进制除法原理其实二进制除法和我们平时用竖式计算的 10 进制除法的原理是一样的,但是有一点要注意,就是计算机计算的结果是有限的,比如说一个 16Bit 数除以一个 8Bit 数,结果不能超过8Bit,否则按溢出处理。所以在计算前先要判断结果会不会溢出,方法是用被除数的高 8 位和除数相减,如果大于等于 0 则认为是溢出:商大于等于 0x100,任何一个 8Bit 数与 0x100 乘积的高 8 位只可能小于除数,例如一个 16 进制数 0x12,乘以 0x100 的结果为 0x1200,也就是说只有小于 0x1200 的除数除以 0x12 的商才不会超过 8Bit。例如:0x1200/0x1

2、2(结果为 0x100) (0x12 - 0x12) = 0,溢出0x11FF/0x12(结果为 0xFF) (0x11 - 0x12) 0, 不会溢出计算方法:(0x0E8E/0x12) 0000 1110 1000 1110 / 0001 00100001 1101 0001 1100 假设商为 0,商和被除数左移一位0001 0010 _0000 1011 够减,上次假设的商为 1,再假设本次商为 0 和被除数同时左移一位0001 0110 0011 10100001 0010_0000 0100 够减,上次假设的商为 1,再假设本次商为 0 和被除数同时左移一位0000 1000 01

3、11 01100001 0010_- - 不够减,上次假设的商 OK,再假设本次商为 0 和被除数同时左移一位0001 0000 1110 11000001 0010_- - 不够减,上次假设的商 OK,再假设本次商为 0 和被除数同时左移一位0010 0001 1101 10000001 0010_0000 1111 够减,上次假设的商为 1,再假设本次商为 0 和被除数同时左移一位0001 1111 1011 00100001 0010_0000 1101 够减,上次假设的商为 1,再假设本次商为 0 和被除数同时左移一位0001 1011 0110 01100001 0010_0000 1001 够减,上次假设的商为 1,再假设本次商为 0 和被除数同时左移一位0001 0010 1100 11100001 0010_0000 0000 够减,上次假设的商为 1,即 1100 1111,移位 8 次,结束开始:判断是否溢出, 溢出,设置溢出标志退出否则,继续循环计数器 = 8循环开始:被除数带 0 左移一位被除数高 8 位和除数相减,不够减则检查循环次数否则用 8 为差替换被除数的高 8 位被除数最低位置 1(即刚才假设的商应该为 1)检查循环次数:循环计数器减 1, 不为 0 则继续循环(跳到循环开始处)否则, 清除溢出标志输出商结束



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3