1.03k likes | 1.26k Views
第一章 开关理论基础. 梁华国 计算机与信息学院 计算机系统结构研究室 http://www1.hfut.edu.cn/department/jisuanji/cn/workroom/socweb/index.php/. 第一章 开关理论基础. 数制与编码 逻辑函数 布尔代数 卡诺图 集成门电路的外特性. 多项式表示法 / 按权展开式. 位置记数法 / 并列表示法. 1.1 数制与编码. 1.1.1 进位计数制 就是一种按进位方式实现计数的制度,简称进位制。. a. 十进计数制
E N D
第一章 开关理论基础 梁华国 计算机与信息学院 计算机系统结构研究室 http://www1.hfut.edu.cn/department/jisuanji/cn/workroom/socweb/index.php/
第一章 开关理论基础 • 数制与编码 • 逻辑函数 • 布尔代数 • 卡诺图 • 集成门电路的外特性
多项式表示法/ 按权展开式 位置记数法/ 并列表示法 1.1 数制与编码 1.1.1 进位计数制 就是一种按进位方式实现计数的制度,简称进位制。 a.十进计数制 数字符号:0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ;“.” 进位规则:“逢十进一” 例如:234.6 百位2代表200,十位3代表30,个位4代表4, 小数点后为十分位6代表6/10 234.6=2×102+3×101+4×100 +6×10-1
2. 多项式记数法: (N)10=kn-110n-1+…+k0100 +k-110-1+…+k-m10–m n -1 = ki10i 权值 i =-m 1.1.1 进位计数制 • 任何一个十进制数N的两种表示方法: 1.位置记数法: (N)10= (kn-1kn-2…k1k0.k-1k-2…k-m)10 n - 表示整数位数 m - 表示小数位数 Ki {0, 1, 2, 3, 4, 5, 6, 7, 8, 9 } 0 Ki 9
n -1 = ki10i i= -m 1.1.1 进位计数制 b. 任意的R进制 位置记数法: (N)R= (kn-1kn-2…k1k0.k-1k-2…k-m)R 多项式记数法: (N)R=kn-110n-1+…+k0100 +k-110-1+…+k-m10–m R - 基数 0 ki R-1 注意:1. 下标基数R一律规定为十进制数,计数规则“逢R进一” 2. 对于R进制数在R进制形式下表示应写成“10”,读“么”,“零”
1.1.1 进位计数制 例如:基数 R =(2)10 =(10)2 R =(16)10 =(10)16 (14)10=(1110)2=(112)3=(32)4=(E)16
多项式替代法 (N) (N) 基数乘除法 1.1.2 数制转换 一个数从一种进位计数制表示法转换成另一种进位计数制表示法,即 多项式替代法: 将被转换进制数以多项形式展开,把其所有数字符号和10基数都一一用进制对应的符号替代,然后在进制下计算结果。 例1: (101010.1)2=(1105+0104+1103+0102+1101+0100+110-1)2 = (125+024+123+022+121+020+12-1)10 =(32+8+2+0.5)10=42.5
1.1.2 数制转换 例2 (121.2)3转换为二进制数 (1)3 (1)2 (2)3 (10)2基数(10)3=(11)2 (121.2)3=(1102+2101+1100+210-1)3 =(1112+10111+1110+1011-1)2 =(1001+110+1+0.101010…)2 =(10000.101010…)2 注:此种转换方法一般要求进制的运算要熟悉
(N) (N) 整数:基数除法 • 整数转换与小数转换的方法不同 小数:基数乘法 1.整数转换(基数除法) 将被转换的进制数,在进制运算规则下除以进制的基数 (以进制表示),得到的余数用进制的数字符号代替,即得转换后的最低位,然后再将商以同样方法求得次低位,以此类推直到商为零为止。 1.1.2 数制转换 基数乘除法: 与多项式替代法不同点: • 转换计算是在进制中进行,与多项式替代法正好相反的过程
转成16进制 余数 16 2803 3 3 16 F 16 A 1.1.2 数制转换 例1(2803)10=(?)16 175 15 10 10 0 结果:(2803)10=(AF3)16
转成2进制 余数 2 35 1 1 1 2 2 2 2 2 0 0 0 1 1.1.2 数制转换 例2(35)10=(?)2 17 1 8 0 4 0 2 0 1 1 0 结果:(35)10=(100011)2
小数与整数转换的差别:有时不能精确转换 例如:(0.1)3=(0.33333…)10 (N)(N) 小数位数的确定: k - 进制小数位 log10() log10() j k k j - 进制小数位 +1 log10() log10() 1.1.2 数制转换 1.小数转换(基数乘法) (101010.1)2=(42.5)10 前面的例子: (121.2)3=(10000.101010…)2
(N) (N) 转成16进制 6 E 9 E 1.1.2 数制转换 转换方法: 将被转换的进制数,在进制运算规则下乘以进制的基数 (以进制表示),取出结果的整数位用进制的数字符号代替,即得转换后的最高位,然后再对取过整数位的小数部分,以同样方法求得次高位,以此类推直到满足转换位数要求止。 例1(0.4321)10=(?)16(取四位小数) 整数 6 16(0.4321)=6.9136 16(0.9136)=14.6176 14 16(0.6176)=9.8816 9 16(0.8816)=14.1056 14 结果: (0.4321)10(0.6E9E)16
0.1285 4 整数 转成10整数 0.5140 0 0 4 4 4 4 2 3.5840 0.8960 0.2240 2.0560 0 0 3 1.1.2 数制转换 例2(0.1285)10=(?)4 ( 取五位小数) 结果: (0.1285)10 (0.02003)4 2 0 0 3
(N) (N) 即: 多项式替代法 基数乘除法 (N)10 (N) (N) 1.1.2 数制转换 任意两种进位制之间的转换 .进制的运算规则熟悉,用多项式替代法 .进制的运算规则熟悉,用基数乘除法 .两种进制的运算规都不熟悉,引入十进 制为桥梁,同时采用以上两种方法
0.703125 5 3.515625 5 75 0 5 5 5 5 15 0 2.890625 4.453125 2.578125 5 3 3 0 (1023.23)4=(75.703125)10 =(300.3224)5 1.1.2 数制转换 例如:(1023.23)4=(?)5 N =143+042+241+340+24-1+34-2+14-3 =64+8+3+0.5+0.1875+0.015625=75.703125
(N)2= (N)8 两边同除以8,商和余数分别相等 . . . 由此可得二进制的三位对应八进制一位 1.1.2 数制转换 基数为2k进制之间的转换 设: (N)2=an-12n-1+…+a323 +a222+a121+a020 (N)8=bm-18m-1+…+b181+b080 余数相等: a222+a121+a020=b0 商相等:an-12n-4+…+a623 +a522+a421+a320 = bm-18m-2+…+b281+b180 a522+a421+a320=b1
. A F 1 6 C 0 10101111.000101101100 2 5 0 5 5 4 7 . 1.1.2 数制转换 一般有2k进制一位对应二进制k位 例如:(AF.16C)16=(?)8 (AF.16C)16=(257.0554)8
原码 反码 有符号数 补码 二进制码 无符号数 二-十进制码 其它 ASCII编码 汉字编码 1.1.3 二进制编码 给一个信息或符号指定一个具体的二进制码去代表它,这一过程称为二进制编码 数字编码 通常编码 字符编码
1.1.3 二进制编码 1. 二进制码 - 自然二进制码 (有权码,各位权植2i) - 循环二进制码 (2m-10 仅一位之差)
Ci-循环二进制码第i位 Bi、Bi+1-二进制码第i位和第i+1位 - 模2和 0 0=0 0 1=1 规则: 1 0=1 1 1=0 例如: (14)10= 1 1 1 0 - 二进制码 0 0 1 0 1 1.1.3 二进制编码 二进制码与循环二进制码转换规则: Ci=BiBi+1 - 循环二进制码
8: 9: 10: 11: 12: 13: 14: 15: 0: 1: 2: 3: 4: 5: 6: 7: 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 16! A 10 = 2.91010 16 (16-10)! 加权码-“8421”码 各位权:23、22、21、20 即:8、4、2、1 设 a3a2a1a0 -“8421”码 代表数值:8a3+4a2+2a1+1a0 1.1.3 二进制编码 2. 二-十进制码(BCD码) 四位二进制数表示十进制数的方案数: 例如:(1000)8421= 8•1+4•0+2•0+1•0=8 - 十进制符号“8”
例如: (43)10=(01000011)8421 (1000011001010001)8421=(8651)10 1.1.3 二进制编码 编码方案: 选择四位二进制码的前十个数表示十进制数十个数字符号,其中二进制码:1010-1111 禁止在“8421”码中出现 “8421”码和十进制数的转换直接按位 (或组)转换
1.1.3 二进制编码 加权码-“2421”码 各位权:2、4、2、1 设 a3a2a1a0 -“2421”码 代表数值:2a3+4a2+2a1+1a0 例如: (1011)2421=2•1+4•0+2•1+1•1 =5 - 十进制符号“5” 编码方案: 选择四位二进制码的前5个数和后5个数表示十进制数十个数字符号,其中二进制码:0101-1010 禁止在“2421”码中出现
按位取反 非加权码-余3码: 把原“8421”码加上0011得到的代码叫余3码 0011 1100 例如:4=(0100)8421=(0111)余3码 0100+0011=0111 1.1.3 二进制编码 “2421”码是一种对 9 的自补码,即自身按位取反就得到该数对9之补的“2421”码 例如:3对9之补是 9-3=6 3=(0011)2421 6=(1100 )2421 非加权码-格雷码: 编码规则:任何两个相邻的代码只有一位二进制位不同
1.1.3 二进制编码 常用的BCD码
第一章 开关理论基础 • 数制与编码 • 逻辑函数 • 布尔代数 • 卡诺图 • 集成门电路的外特性
1.2 逻辑函数 1.2.1 逻辑函数的基本概念 逻辑函数-布尔函数-开关函数 逻辑函数:设A1, A2, …, An是n个变量,每个变量取值0 或者取值1,令f(A1, A2, …, An) 是A1, A2, …, An的一个开关函数,f的取值0 或1 由A1, A2, …, An的取值决定。 记为: F = f(A1, A2, …, An )
1.2.1 逻辑函数的基本概念 一个开关函数的F(A1, A2, …, An) A1, A2, …, An F(A1, A2, …, An )
1.2.1 逻辑函数的表示方法 • 常用的表示方法: • 卡诺图法 • 布尔代数方法 • 真值表法 • 波形图法 • 立方体 • 点阵图法 • 逻辑图法 • 硬件描述语言表法
开关电路表示: 1•1=1 A B 1•0=0 • • • • F=A•B • 0•1=0 220 V • 0•0=0 F 1.2.3 基本逻辑运算 • 与运算 “与”运算又叫“逻辑乘”(Logic multiplication)其结果叫“逻辑积”(Logic product)
A F A B F F B 0 0 0 • • • • 0 1 0 R 1 0 0 +5V 1 1 1 A t A B 真值表 5V 5V • t B 0V 0V t F 1.2.3 基本逻辑运算 “•”-“与”运算符,常将“•”省去,写成F=AB
开关电路表示: 1+1=1 A • • 1+0=1 B F=A+B • • 0+1=1 • 220 V 0+0=0 • F 1.2.3 基本逻辑运算 • 或运算 “或”运算又叫“逻辑加”(Logic addition)其结果叫“逻辑和”(Logic sum)
A • • • • F A B F F B 0 0 0 0 1 1 R 1 0 1 1 1 1 A t A B 真值表 5V 5V t B 0V 0V t F 1.2.3 基本逻辑运算 “+”-“或”运算符,布尔代数式写成F=A+B
开关电路表示: 0=1 F=A 1=0 • • 220 V A • • F 1.2.3 基本逻辑运算 • 非运算 “非”运算(NOT)又叫“反相”运算(Inversion), 也叫“逻辑否定”(Logic negation)布尔代数式写 成 F=A
F • +5V R • R1 A • • F R2 A t A F t 1.2.3 基本逻辑运算 “非”的电路一级放大器
A B F 0 0 0 F=AB=A1=A 0 1 1 1 0 1 F=AB=A0=A 1 1 0 . 真值表 同或运算: F=AB=AB+AB=A B 1.2.3 基本逻辑运算 • 异或运算 布尔代数式: F=AB=AB+AB
被称为世上最经典的25句话![ 1.2.3 基本逻辑运算
a 1.2.3 基本逻辑运算
1.2.4 正逻辑、负逻辑的概念 • 在电路中,用电压的高低来表示逻辑值 高有效信号(正逻辑) 低有效信号(负逻辑)
第一章 开关理论基础 • 数制与编码 • 逻辑函数 • 布尔代数 • 卡诺图 • 集成门电路的外特性
1.3 布尔代数 1.3.1 布尔代数基本规律 如何判断两个逻辑函数相等: 设有两个函数 F1=f1(A1, A2, …An) F2=f2(A1, A2, …An) 如果对应于A1, A2, …An的任何一组取值 (2n),F1和F2的值都相等,则称F1= F2, 或者F1和F2有相同的真值表
真值表 “非”“括号”“与”“或” A B C F1 F2 0 0 0 0 0 0 0 1 1 1 0 1 0 0 0 0 1 1 1 1 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 1 1 高 低 例如:证明 F1=ABC+AC 与 F2=C(A+B) 相等 1.3.1 布尔代数基本规律 逻辑函数运算的优先级规定: F1= F2
A•(A+B) = A•B 1.3.1 布尔代数基本规律
证明:AB+AC+BC= AB+AC+(A+A)BC 推广: AB+AC+BCFE…XY=AB+AC = AB+AC = AB+AC+ABC+ABC 1.3.1 布尔代数基本规律 包含律: AB+AC+BC=AB+AC (A+B)(A+C)(B+C)=(A+B)(A+C)
ABC+AC=C(A+B) 将函数F=A+B代入C AB(A+B)+A(A+B)=(A+B)(A+B) AB+AB=B+0 1.3.2 布尔代数运算的基本规则 1. 代入规则 任何一个含有变量A的等式,如果将所有出现A的位置,都代之以一个逻辑函数F,此等式仍然成立。 例如:吸收律: A+AB=A B代入XYW A+AXYW=A B•1=B B=B
已知 F F 求 “•” “+” “+” “•” “1” “0” F=A+B•C+D “1” “0” F=AB+CD 取反 F=(A+B)•(C+D) 变量 变量 1.3.2 布尔代数运算的基本规则 2.反演规则 注意: 运算符号的优先顺序
证明: F=B[(A+CD)+E] =B+(A+CD)+E =B+(A+CD)E =B+ACDE =B+A(C+D)E =B+A(C+D)E 1.3.2 布尔代数运算的基本规则 例如: F=B[(A+CD)+E] F=B+A(C+D)E
例如:ABC+AC=C(A+B) ? (A+B+C)(A+C)=C+AB 左式=C+(A+B)A=C+AB 1.3.2 布尔代数运算的基本规则 2对偶规则 b. 规则 如果两个逻辑函数F和G相等, 那么它们各自的对偶式F’和G’ 也相等。 a. 对偶式 求 F’ F 已知 “•” “+” “+” “•” “1” “0” “1” “0” 不变 变量 变量
例如:f(A,B,C)=(A+B+C)(B+C)(A+B+C) “或-与”式: 或项的逻辑与构成的逻辑函数 1.3.2 布尔代数运算的基本规则 • “与-或”式及“或-与”式 例如:f(A,B,C)=ABC+BC+ABC “与-或”式: 与项的逻辑或构成的逻辑函数 这两种形式是逻辑函数最常用形式