当前位置: 首页 > 工具软件 > docx2tex > 使用案例 >

计算机组成原理原码,计算机组成原理原码、补码计算.docx

吉毅
2023-12-01

原码一位乘

[例 1] x = 0. 1101,y-0. 1011,求x y-

解,部分积

0 Ox 0 0 0 0

+0 0. 1 1 0 1

0 0. 1 1 0 1

-> 0 0. 0 1 1 0

+ D D. 1 1 0 1

0 1, 0 0 1 1

—> 0 0. 1 0 0 1

+ 0 0.0000

0 0, 1 0 0 1

-> 0 0+ 0 10 0

+ 0 0. 1 1 0 1

0 1, 0 0 0 1

->0 0+ 1 0 0 0

乘数

¥: 1 0 1 1

lyj 01

说明

ZO-O

力=5

右移.得L

V3=1,*x

右移.得如

vE,+o

右移,得工3

右移,#z4.x - y

所以 X- y=0J0001111

补码一位乘

[例]叫

h=0.1101,

[y]H=0.1011,求[x?v]补.

部分戒0 0. 0 0 0 0L 0 0 1 1

0.

乘数

10 1

+

1 i. o 0 1 1 T 1 1, 1 O 0 1 +。0. 0 0 0 0

1 1. 1 0 0 1

TI

0 10

T 1 1. 1 1 0 0+ 0 0. 1 1 O 1

0 0. 1 0 O 1T 0 0. 0 10 0

+ 1 L 0 0 1 1

说明

Vn+l=O

VnVnH=10,+l?X]补

右移1位 VnVg=lL + O

右移3位

ynyn+i=oi/+[x]?

ynvn+i=iOr+[-x]tt

1 1. 0 1 1 1

1 1. 1 O 1 1

十 。0. 1 1。1

0 0. 1 0 0 0

iiii

右移,位

VnVz=OL+[x]补最后一步不移位

补码一位除

[例20] = 0,101001, y =0.111,求上亍尸击

得【解;】[-yfcb=i ooi

余数为狗

余数左移

加F

1.1 1 000 1 <0

1.1 000 1

0.1 1 1

%=0

余数为正

余数左移

减F

0.0 1 1 0 1

0,1 1 01 1.0 0 1

>0

余数为负

余数左移

加F

1d 111

1J 11

0.1 1 1

<0

如=0

余数为正

0.1 1 0

>0

q,=1 故

被除数x 0.10 100 1

减尸1.0 0 1

商 q=qo.qm%=Qd°‘

余数 (O.OOr^r^=0.000110

原码除法

(1)恢复余数法

1 .恢复余数法

事实上,机器的运算过程和人毕竞不同,人会心算,一看就 知道够不够减。但机器却不会心算,必须先作减法,若余数 为正,才知道够减:若余数为负,才知道不够减.不够减时 必须恢复原来的余数,以便再继续往下运算。这种方法称 为恢复余数法。要恢复原来的余数,只要当前的余教加上 除数即可<■

例1 x".100L y=0J011t用恢复余数发求*戏。

解=[、人卜=风补=0.10。1 [yhr=o.ioii [-y]^=i.oioi

被除数x/余数r

0 0J 0 0 1

商数q

±fcylih-

1 1.0 1 0 1

1 1,1 1 1 0

±Mit—

0 0,1 0 1 1

0 0,1 0 0 1

0 1,00 1 0

0

±Lvlih-

1 1.0 1 0 1

0 0.0 1 1 1

4—

0 0J 1 1 0

0J

+f-vlih

1 L0 1 0 1

0 0.0 0 1 1

0 0.0 1 1 0

0.11

+[-Ylih

1 1.0 1 0 1

1 1.1 0 1 1

HvM 0 0.1 0 1 1

0 0.0 1 1 0

4-PyM 1 1.0 1 0 1

0 0.0 0 0 1

故得:[q】原=01101,余数[r]原=0.0001 即r=2^xr4

2 .加减交替法

对恢复余数法来说,由于要恢复余数,使除法进行过程的步数 不固定,因此控制比较复杂。实际中常用不恢复余数法,又称 加减交替法。其特点是运算过程中如出现不够减,则不必恢复 余数,根据余数符号,可以继续往下运算,因此步数固定,控制简 单。

原码加减交替法的规则是:与余数为正时,商“俨,余数左 移一位,减除数;当余数为负时,商“0”,余数左移一位, 加除数。证明如下:

除数每一步运算所得的余数rji=1,2,... ,n,r°=x)可以通过蒋 前一步的余数(第一步为r°=x)左移一位减除数y得到,即

【产2j?y

如果r,<0,商上“0”,并恢复余数(即+y),然后左移一位(即 乘2),再做减y运算,得到

即 "2(”)夕=2啊

这说明,第i步除数的余数rj=2j?y若为负,要求得下一 步的新余数%1,不必恢复余数,只要将左移一位(乘2) 再加上y即得Si ,然后再由的正负决定上商值。

例2 x

 类似资料: