数制和编码教案资料

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
n 1
H i 1 6 i i m
n:整数位数 m:小数位数
7
任意K进制数的表示
一般地,对任意一个K进制数S都可表示为
(S)k Sn1Kn1Sn2Kn2 S0K0 S1K1SmKm
n1
Si Ki im
其中: Si -- S的第i位数码,可以是K个符号中任何一个; n,m – 整数和小数的位数; K -- 基数; Ki -- K进制数的权
8

234.98 或 (234.98)10 1101.11B 或 (1101.11)2 ABCD . BFH 或 (ABCD . BF)16
9
二、各数制间的转换
非十进制数 → 十进制数:
按相应的权表达式展开,再按十进制求和。
例:24.AH=2×161+4×160+A×16-1 =36.625
11100001
即:次高位向最高位有进位,而最高位向前无 进位,产生溢出。
(事实上,两正数相加得出负数,结果出错)
48
§2.4 定点数与浮点数
定点数:小数点位置固定不变的数。
小数点的位置:
纯小数 符号 X1 X2

Xn
小数点位置
纯整数 符号 X1 X2

Xn
小数点位置
49
浮点数
浮点数来源于科学记数法 例如:+123.5=+0.123×103 -0.001235=-0.123×10-2
即:商=00000010B 余数=11B
18
二、无符号数的表示范围
◇一个n位的无符号二进制数X,其表示 范围为:
0 ≤ X ≤ 2n-1 若运算结果超出这个范围,则产生溢出。
◇溢出的判别方法: 运算时,当最高位向更高位有进位(或借位) 时则产生溢出。
19
例:
11111111 00000001 1 00000000
最高位向前有进位,产生溢出。
本例中:运算结果为256,超出8位二进制数所 能表示的范围255。
20
三、逻辑运算
特点:按位运算,无进位/借位。 与(∧) 或(∨) 非(▔) 异或(⊕)
掌握:逻辑关系(真值表)和逻辑门。
21
“与”、“或”运算
任何数和“0”相“与”,结果为0 任何数和“1”相“或”,结果为1
28
一、符号数的表示:
对于符号数,机器数常用的表示方法有 原码、反码和补码三种。数X的原码记作 [X]原,反码记作[X]反,补码记作[X]补。
注意:对正数,三种表示法均相同。 它们的差别在于对负数的表示。
29
原码[X]原
最高位为符号位,用“0”表示正,用“1”表示负; 数值部分照原样写出即可。
n位反码表示数值的范围是 (2n 11)~(2n 11)
对应的反码是1000 ~ 0111
35
补码[X]补
定义: 若X>0, 则[X]补= [X]反= [X]原 若X<0, 则[X]补= [X]反+1 正式定义为:
[X ] 补 2 n + X- 2 n 1 ≤ X < 2 n 1
36

= - 0101110 = - 46
42
二、符号数的算术运算
通过引进补码,可将减法运算转换为加法运算。 即:[X+Y]补= [X]补+[Y]补
[X-Y]补= [X+(-Y)]补 = [X]补+[-Y]补 其中X,Y为正负数均可,符号位参与运算。
43
补码的运算是基于模的运算
模(module)就是一个计数系统的最大容量。例如钟表 的模为12,8位二进制数的模为28,等等。
计算机中的符号数的表示方法:
把二进制数的最高位定义为符号位。
符号位:“0”
表示正,
“1”
表示负。
把符号也数值化了的数,称为机器数。
机器数所表示的真实的数值,称为真值。
注:后面的讲述均以8位二进制数为例。
27

真值
机器数
+52 = +0110100 = 0 0110100
符号位 数值位
-52 = -0110100 = 1 0110100
真值: X= +18 = +0010010 X= -18 = -0010010
原码: [X]原 = 0 0010010 [X]原 = 1 0010010
n位原码表示数值的范围是:
(2n 11)~(2n 11)
对应的原码是1111 ~ 0111
32
反码[X]反
对一个数X:
若X>0 ,则 [X]反=[X]原 若X<0, 则 [X]反= 对应原码的符号位
40
符号二进制数与十进制的转换
对用补码表示的二进制数: 1)求出真值 2)进行转换
41

将一个用补码表示的二进制数转换为十进制数。
[X]补=0 0101110B 真值为:0101110B
正数 所以:X=+46 [X]补=1 1010010B
真值不等于:-1010010B
负数 而是:X= [[X]补]补= [11010010]补
45
符号数运算中的溢出问题
两个8位带符号二进制数相加或相减时, 若 C7C6=1 则结果产生溢出。 其中:C7为最高位的进(借)位; C6为次高位的进(借)位。
对16位或32位的运算,也有类似结论。
46
观察以下四种情况哪个溢出?
假定以下运算都是有符号数的运算。
CASE1:
10110101 + 10001111 101000100
X= –52= – 0110100 [X]原=10110100 [X]反=11001011 [X]补= [X]反+1=11001100
37
0的补码
[+0]补= [+0]原=00000000 [-0]补 = [-0]反+1=11111111+1
=1 00000000
对8位字长,进位被舍掉
n位补码表示数值的范围是
凡是用器件进行的运算都是有模运算,运算结果超过 模的部分会被运算器自动丢弃。因此,当器件为n位时, 有
X=2n+X (mod 2n) 根据定义,
[X]补=2n+X (mod 2n) 因此可得,
[XY]补= 2n + 2n + (XY) (mod 2n) = (2n+X) + (2n Y) (mod 2n) = [X]补+ [Y]补
44

X=-0110100,Y=+1110100,求X+Y=? [X]原=10110100 [X]补= [X]反+1=11001100 [Y]补= [Y]原=01110100 所以: [X+Y]补= [X]补+ [Y]补
=11001100+01110100 =01000000 X+Y=+1000000
3
一、常用计数制
十进制——符合人们的习惯 二进制——便于物理实现 十六进制——便于识别、书写
4
二进制
特点:以2为底,逢2进位; 只有0和1两个符号。(数后面加B)
表示:
(B )2B n 1 2 n 1 B n 2 2 n 2 B 0 2 0 B 1 2 1 B m 2 m
输出端
Y0 Y1 Y2 111 111 111 111 011 1 01 110 111 111 111 111 111
Y3 Y4 Y5 Y6 Y7 11111 11111 11111 11111 11111 11111 11111 01111 10111 11011 11101 11110
26
§2.3 符号数的表示及运算
12
二进制与十六进制间的转换
用4位二进制数表示1位十六进制数
0000 ------------- 0H


1001 ------------- 9H
1010 ------------- AH
1011 ------------- BH
1100 ------------- CH
1101 ------------- DH
G2A

G2B

C


B
A
Y7
译码输出端 3-8译码器原理
25
74LS138真值表
使能端
G1 1. 2. 3. 4. 0 5. 1 6. 1 7. 1 8. 1 9. 1 10.1 11.1 12.1
G2A G2B
0
1
1
0
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
输入端
CBA
000 001 010 011 100 101 110 111
注:A~F分别用10~15代入
10
十进制 → 非十进制数
十进制 → 二进制:
整数:除2取余; 小数:乘2取整。
十进制 → 十六进制:
整数:除16取余; 小数:乘16取整。
以小数点为起点求得整数和小数的每一位。
注:十进制转换成任意K进制数与上类似,整:除K取余,小数:乘K取整。
11
十进制到十六进制转换例
CASE2:
01000010 + 01100011
10100101
CASE3:
CASE4:
01000010 + 11001101
100001111
00100010 + 11001101
11101111
47
例:
若:X=01111000, Y=01101001 则:X+Y=
01111000 01101001
优点: 真值和其原码表示之间的对应关 系简单,容易理解;
缺点: 计算机中用原码进行加减运算比 较困难,0的表示不唯一。
正式定义为:
X
2n1X≥ 0
[X]原 2n1X 0≥ X-2n1
30
数0的原码
+0=0 0000000 -0=1 0000000 即:数0的原码不唯一。
31
原码的例子
符号
符号位
1110 ------------- EH
1111 ------------- FH
13
二进制与十六进制间的转换
例: 10110001001.110 = (?)H 0101 1000 1001.1100 5 8 9.C
注意:位数不够时要补0
14
§2.2 无符号二进制数的运算
二进制数
无符号数 算术运算 逻辑运算
有符号数: 算术运算
15
一、无符号数的算术运算
加法运算 减法运算 乘法运算 除法运算
16
注意点:
对加法:1+1=0(有进位) 对减法:0-1=1(有借位) 对乘法:仅有1×1=1,其余皆为0;
乘以2相当于左移一位。 对除法: 除以2则相当于右移1位。
17

00001011×0100=00101100B 00001011÷0100=00000010B
2n1~(2n11)
对应的补码是1000 ~ 0111
38
特殊数10000000
该数在原码中定义为:-0 在反码中定义为: -127 在补码中定义为: -128 对无符号数,(10000000)B=128
39
8/16位符号数的表示范围
对8位二进制数: 原码: -127 ~ +127 反码: -127 ~ +127 补码: -128 ~ +127 对16位二进制数: 原码: -32767 ~ +32767 反码: -32767 ~ +32767 补码: -32768 ~ +32767
A
&
C
B
A∧B=C
A
≥1
C
B
A∨B=C
22
“非”、“异或”运算
“非”运算即按位求反
两个二进制数相“异或”: 相同则为0,相异则为1
A
1
B
A

C
B
B=A
A B=C
23
“与非”、“或非”运算
A∧B=C
A
&Biblioteka Baidu
C
B
A∨B=C
A
≥1
C
B
24
四、译码器
74LS138译码器:
译码使能端 译码输入端
G1
Y0
第2章
数制和编码
1
主要内容
计算机中的常用计数制、编码及其相互间的 转换;
二进制数的算术运算和逻辑运算; 符号数的表示及补码运算; 二进制数运算中的溢出问题; 基本逻辑门及译码器; 定点数与浮点数的表示方法。
2
§2.1 计算机中的数制
了解:各种计数制的特点及表示方法; 掌握:各种计数制之间的相互转换。
不变,数值部分按位求反。 正式定义为:
[ X]反 (X 2n1)X
2n1X≥ 0 0≥ X-2n1
33
反码例
X= -52 = -0110100 [X]原=1 0110100 [X]反=1 1001011
34
0的反码
[+0]反=00000000 [-0]反 =11111111 即:数0的反码也不是唯一的。
400.25 = ( ? )H
400/16=25 -----------余数=0(个位) 25/16=1 --------------余数=9(十位) 1/16=0 ---------------余数=1(百位) 0.25×16=4.0 -----------整数=4(1/10)
即:400.25 = 190.4H
n 1
B i 2 i i m
n:整数位数 m:小数位数
6
十六进制
特点:有0--9及A--F共16个数字符号, 逢16进位。(数后面加H)
表示:
(H )1 6 H n 1 1 6 n 1 H n 2 1 6 n 2 H 0 1 6 0 H 1 1 6 1 H m 1 6 m
相关文档
最新文档