1.原码除法运算
除法运算比乘法运算要复杂,它也是由手算演变来的。除法手算的一般过程:
①被除数与除数进行比较(相减),决定上商。若被除数小,上商为0,否则上商为1。并得到部分余数。
②将除数右移,再与上一步部分余数比较,决定上商,并得新的部分余数。
③重复执行第②步,直到得到的商的位数足够为止。
原码一位除法运算与原码一位乘法运算一样,符号位和数值位是分别对待的。商的符号位为相除两数的“异或”。商的数值位为两数绝对值之商。
为了方便计算机的实现,采用以下方法:
①比较运算用减法(用补码加法)来实现,根据减法结果的符号位的正负来判断两数的大小,结果为正,上商为1,结果为负,上商为0。
②减法运算时(补码加法),加法器中两数对齐是用部分余数左移实现,并与除数比较,以代替手算时的除数右移对齐与部分余数比较(相减)。
③在计算机中设置商值寄存器。每一次上商都是写到最低位(手算时是商的高位是从左往右写),然后将部分余数同商一起左移(相当于乘以2,往左赶一位),腾空的商值寄存器的最低位以备上新的商。
由于采用部分余数减除数的方法比较两者大小,当减法结果为负,即上商为0时,破坏了部分余数(手算时,如果不够减,就不减,直接上商为0,然后转下步,计算机是减过后才,根据结果的符号是正负来判断是否够减,如果结果的符号位为1,表示不够减),为了保证运算结果的正确,可以采用两种方法。①将减去的除数再加回去,即恢复原来的部分余数,这种方法称为恢复余数法。②在这一步中多减去的除数在下一步运算的时候补回来,这种方法称为不恢复余数法,又称为加减交替法。
2.恢复余数法
3.不恢复余数法(加减交替法)

