定点数的原码表示
答案:1 悬赏:0 手机版
解决时间 2021-03-20 12:31
- 提问者网友:听门外雪花风
- 2021-03-19 20:12
定点数的原码表示
最佳答案
- 五星知识达人网友:神的生死簿
- 2021-03-19 21:40
原码是用机器数的最高一位代表符号,以下给出数值绝对值的表示方法。其定义为:
整数:
[X]原=0,X (0≤ x<2^n)
[X]原=2^n-X (-2^n 小数:
[X]原=X (0≤X<1)
[X]原=1-X (-1 这里X是数的实际值(真值),[X]原为原码表示的机器数。
例如:真值X=+1001,[X]原=01001;真值X=-1001,[X]原=10000-(-1001)=11001;真值X=-0.1001,[X]原=1-(-0.1001)=1.1001。
原码的性质:
⒈ 符号位+数的绝对值。
⒉ 0有两个编码。
⒊ 加减运算规则复杂,乘除运算规则简单。
⒋ 表示简单,易于和真值之间进行转换。
原码的运算:
加法:
先判断符号位,若相同,绝对值相加,结果符号位不变;若不同,绝对值大的数减去绝对值小的数,符号位和绝对值大的数相同。
[X]原=00010,[Y]原=01010,X+Y=00000+1010+0010=01100;[X]原=10010,[Y]原=01010,X+Y=00000+1010-10=101010。
减法:
将减数符号取反,然后将被减数和符号取反的减数相加。
[X]原=10010,[Y]原=01010,X-Y=10010+11010=10000+0010+1010=11100。
乘法(原码一位乘):
是模拟竖式手算的方法。引入一个值为部分积(初值为0)。符号位是被乘数和乘数符号位的异或值。之后检视乘数(符号位以外)从低向高的每一位,若为1,部分积(对齐最高位)加被乘数(符号位以外),并右移一位;若为0,部分积加0,右移一位。
例如:[X]原=11101,[Y]原=01011。X*Y:符号位S=1⊕0=1
则X*Y=110001111。
除法(交替加减法):符号位为被除数和除数符号位异或获得。之后被除数减除数(补码表示),当余数为正时,商“1”,余数左移一位减除数;当余数为负时,商“0”,余数左移一位,加除数。
例如:[X]原 = 0.1001,[Y]补= 0.1011,X/Y:
余数r0<0,商0
商0,r和q左移一位
加y
余数r1>0,商1
商1,r和q左移一位
减y
余数r2>0,商1
商1,r和q左移一位
减y
余数r3<0,商0
商0,r和q左移一位
加y
余数r4>0,商1
X/Y 的商 [Q]原 = 0.1101,余数[R]原 = 0.0001。
整数:
[X]原=0,X (0≤ x<2^n)
[X]原=2^n-X (-2^n
[X]原=X (0≤X<1)
[X]原=1-X (-1
例如:真值X=+1001,[X]原=01001;真值X=-1001,[X]原=10000-(-1001)=11001;真值X=-0.1001,[X]原=1-(-0.1001)=1.1001。
原码的性质:
⒈ 符号位+数的绝对值。
⒉ 0有两个编码。
⒊ 加减运算规则复杂,乘除运算规则简单。
⒋ 表示简单,易于和真值之间进行转换。
原码的运算:
加法:
先判断符号位,若相同,绝对值相加,结果符号位不变;若不同,绝对值大的数减去绝对值小的数,符号位和绝对值大的数相同。
[X]原=00010,[Y]原=01010,X+Y=00000+1010+0010=01100;[X]原=10010,[Y]原=01010,X+Y=00000+1010-10=101010。
减法:
将减数符号取反,然后将被减数和符号取反的减数相加。
[X]原=10010,[Y]原=01010,X-Y=10010+11010=10000+0010+1010=11100。
乘法(原码一位乘):
是模拟竖式手算的方法。引入一个值为部分积(初值为0)。符号位是被乘数和乘数符号位的异或值。之后检视乘数(符号位以外)从低向高的每一位,若为1,部分积(对齐最高位)加被乘数(符号位以外),并右移一位;若为0,部分积加0,右移一位。
例如:[X]原=11101,[Y]原=01011。X*Y:符号位S=1⊕0=1
则X*Y=110001111。
除法(交替加减法):符号位为被除数和除数符号位异或获得。之后被除数减除数(补码表示),当余数为正时,商“1”,余数左移一位减除数;当余数为负时,商“0”,余数左移一位,加除数。
例如:[X]原 = 0.1001,[Y]补= 0.1011,X/Y:
余数r0<0,商0
商0,r和q左移一位
加y
余数r1>0,商1
商1,r和q左移一位
减y
余数r2>0,商1
商1,r和q左移一位
减y
余数r3<0,商0
商0,r和q左移一位
加y
余数r4>0,商1
X/Y 的商 [Q]原 = 0.1101,余数[R]原 = 0.0001。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯