第六章计算机的运算方法
无符号数和有符号数
定点运算
数的定点表示和浮点表示
浮点四则运算
算术逻辑单元
无符号数和有符号数
一、无符号数
寄存器的位数
反映无符号数的表示范围
8 位 0 ~ 255
16 位 0 ~ 65535
带符号的数符号数字化的数
+
0 1011
小数点的位置
+ 1100
0 1100
小数点的位置
– 1100
1 1100
小数点的位置
–
1 1011
小数点的位置
真值机器数
1. 机器数与真值
二、有符号数
2. 原码表示法
带符号的绝对值表示
(1) 定义
整数
x 为真值
n 为整数的位数
如
x = +1110
[x]原= 0 , 1110
[x]原= 24 + 1110 = 1 , 1110
x = 1110
[x]原=
0,x 2n > x ≥ 0
2n x 0 ≥ x > 2n
用逗号将符号位
和数值位隔开
小数
x 为真值
如
x = +
[x]原= 0 . 1101
x =
[x]原= 1 ( ) = 1 . 1101
x 1 > x ≥ 0
[x]原=
1 – x 0 ≥ x > 1
x =
[x]原= 1 ( ) = 1 . 1000000
x = +
[x]原= 0 . 1000000
用小数点将符号
位和数值位隔开
用小数点将符号
位和数值位隔开
(2) 举例
例 已知[x]原= 求 x
解:
例 已知[x]原= 1,1100 求 x
解:
x = 1 [x]原= 1 =
x = 24 [x]原= 10000 1,1100 = 1100
–
–
1100
由定义得
由定义得
例 求 x = 0 的原码
解:
设 x = +
例 已知[x]原= 求 x
解:
∴ x = +
同理,对于整数
[+ 0]原= 0,0000
[+]原=
x =
[ ]原=
[ 0]原= 1,0000
∴[+ 0]原≠[ 0]原
根据定义∵[x]原=
原码的特点:
简单、直观
但是用原码做加法时,会出现如下问题:
能否只做加法?
找到一个与负数等价的正数来代替这个负数
就可使减加
加法正正
加
加法正负
加法负正
加法负负
减
减
加
要求数1 数2 实际操作结果符号
正
可正可负
可正可负
负
(1) 补的概念
时钟
逆时针
- 3
6
3
顺时针
+ 9
6
15
- 12
3
3. 补码表示法
可见 3 可用+ 9 代替
记作 3 ≡+ 9 (mod 12)
同理 4 ≡+ 8 (mod 12)
5 ≡+ 7 (mod 12)
时钟以
12为模
减法加法
称+ 9 是– 3 以 12 为模的补数
结论
一个负数加上“模”即得该负数的补数
两个互为补数的数它们绝对值之和即为模数
计数器(模 16)
– 1011
1011
0000
+ 0101
1011
10000
1011 0000 ?
可见 1011 可用+ 0101 代替
记作 1011≡+ 0101 (mod 24)
同理 011≡+ 101 (mod 23)
≡+ (mod 2)
自然去掉
计算机组成原理第2章运算方法和运算器 来自淘豆网m.daumloan.com转载请标明出处.