当前位置:文档之家› 数制与进位记数法

数制与进位记数法

数制与进位记数法
基 r 数制的概念 只用 r 个基本符号 ( 例如 0,1,2,…r-1 ) 通过排
列起来的符号串表示数值,r 称为该数制的基。 数值 N 的表示
N = Dm-1Dm-2 … D1 D0D-1D-2 …D-k
有 权 的基 r 数制
每个Di(-k≤i≤m-1)的单位值都赋以固定的值
Wi,则称 Wi 为该位的 权 。
2n > x ≥ 0 0 ≥ x > 2n
[x]补 =
x 2n+1 + x
2n > x ≥ 0 0 ≥ x ≥ 2n(mod 2n+1)
讲课中不大用整数讲 原 反 补 码定义
例如:整数六位编码 ( 1 位符号位,5 位数值位)
X = +01110 X = - 01110
[X]原= 0 01110 [X]补= 0 01110 [X]原= 1 01110 [X]补= 1 10010
12
整数的编码表示
x 为真值 n 为整数的位数
x [x]原 = 2n x
N 代表的实际值可表示为:
N
m 1
Di Wi
ik
1
数制与进位记数法
若逢 r 进位,有 Wi = ri ,则
N 代表一个数值
m1
N Di rri i ik
r 是这个数制的基
i 表示这些符号排列的位号
Di 是位序号为 i 的位上的一个符号 ri 是位序号为 i 的位上的一个 1 代表的值
Di× ri 是第 i 位的符号所代表的实际值 ∑ 表示 对 m+k 位的值求累加和
称此数制为 r 进位数制,简称 r 进制。最常用的 有二进制、八进制、十六进制 和 十进制 这4种。
2
数制与进位记数法
计算机中常用的 4 种进位数制 二进制:r = 2, 基本符号:0 1 八进制:r = 8, 基本符号:0 1 2 3 4 5 6 7 十进制:r = 10,基本符号:0 1 2 3 4 5 6 7 8 9 十六进制:r = 16,基本符号:
说明:补码最高一位是符号位,符号 0 正 1 负 补码表示为:2×符号位 + 数的真值 补码零只有一个编码,故能表示 -1 补码能很好地用于加减(乘除)运算
11
整数的编码表示
整数的 原码 反码 补码 表示 与小数的三种表示基本相同 差别仅表现在小数点的位置 可以认为整数的小数点在最低数值位的右侧
因此整数的模与整数位数有关
机内处理
数值范围与数据精度概念不同。在计算机中,它们的 值与用多少个二进制位表示某种类型的数据,以及怎 么对这些位进行编码有关。
6
数值数据在计算机内的格式
定点小数: N = Ns N -1 N-2……...N -n
整 数: N = N s Nn-1 ... N 1 N 0
浮点数: N = Ms Es E m-1 ...E1 E0 M-1 M-2 ...M-n
求二进制数所对应的十进制数值,可通过进位记 数公式来计算,即把取值为 1 的数位的位权累加。
把十进制数转换为二进制,对整数部分通过除 2 取余数来完成,对小数部分通过乘 2 取整数来完成。
2 13-------1 低位 2 6-------0 2 3-------1 2 1-------1 高位 0
能有利于简化对它们实现算术运算用到的规则; 数据符号的正与负,可用一位二进制的 0 和 1
两个状态加以表示,数据数值用多位二进制表示。 常用的编码方案
原码表示、补码表示、反码表示
8
机器数与真值
真值
带符号的数
+ 0.1011 – 0.1011 + 1100
– 1100
机器数
符号数字化的数
0 1011
小 数
1 1011

0 1100


1 1100

一个数据的实际值被称为数的真值,机器数是 指对数据符号位完成数字化处理后的机内表示。
9
(纯小数) 原码,反码,补码的定义
定点小数表示: Ns N1 N2 … Nn
[ X ]原 =
X 1-X
0≤X<1 -1 < X ≤ 0
[ X ]反 =
X -n
0≤X<1
(2 - 2 )+ X -1 2 )
[ X ]补 =
X 2+X
0≤X<1 -1 ≤ X ≤ 0
Mod 2
10
(纯小数) 补码的定义与说明
定点小数表示: Ns N1 N2 … Nn
定义: [ X ]补 =
X
0≤X<1
2 + X -1 ≤ X ≤ 0
MOD 2
实例: X1 = 0.1011 -0.1011 0.0000 [ X ]补 = 0 1011 1 0101 0 0000
0123456789ABCDEF 其中 A~F 表示十进制数 10~15
4 种进位数制之间的关系: 二进制用于计算机内部, 八和十六进制是二进制的缩写, 十进制用于人员。
3
二进制数→八、十六和十进制
把二进制数转换为十进制数, 累加二进制数中全部数值为 1 的那些位的位权
(1101.1100)2=(1×23+1×22+0×21+1×20)10 + (1×2-1+1×2-2+0×2-3+0×2-4)10 = (13.75)10
基为 2 IEEE 标准: 阶码用移码 尾数用原码
符号位 阶码位 尾数数码位 总位数
短浮点数:
1
8
23
32
长浮点数:
1
11
52
64
临时浮点数:
1
15
64
80
7
3、数值数据的编码和运算算法
二进制数值数据的类型 二进制表示的定点小数、整数和浮点数
数值数据编码目标 能方便统一地表示正数、零和负数,并且尽可
(13)10 = (1101)2
0.76×2 1 0.52×2 高位 1 0.04×2 0 0.08×2 0 0.16 低位
(0.76)10 = (0.1100)2
5
数值范围和数据精度
数值范围
数值范围是指一种类型的数据所能表示的最大值和最 小值;
数据精度
通常指实数所能给出的有效数字位数;对浮点数来说, 精度不够会造成误差,误差大量积累会出问题。
把二进制数转换成八或十六进制数时,从小数点 向左和向右把每 3 或者 4 个二进制位分成一组,直接 写出每一组所代表的数值,小数点后不足位数补0。
(1101.1001)2 = (D.9)16 = (15.44)8 ,而不是(15.41)8
4
数制与进位记数法
二进位数和十进制数之间的转换方法
二进制:r = 2, 基本符号:0 1 十进制:r = 10,基本符号:0 1 2 3 4 5 6 7 8 9
相关主题