数电学习笔记3——几种常用的编码 & 二进制算数运算
教材:阎石《数字电子技术基础》(第五版) 高等教育出版社
视频教材:


1.5 几种常用的编码
三、ASCII码

一、十进制代码
(1)用4位二进制代码表示十进制数的0 ~9个数码,即二—十进制编码。
(2)8421码(BCD码)
① BCD码根据十进制展开式D=∑ki * N^i 展开并相加,即可得到等值的十进制数。
② 十进制代码中每一位的1所代表的十进制数称为这一位的权,BCD码的权为8、4、2、1。
(3)余三码
① 余三码根据十进制展开式D=∑ki * N^i 展开并相加,得到的十进制数比对应的十进制数多3。
② 余三码不是恒权代码。
(4)2421码、5211码均为恒权代码,其中2421码的权为2、4、2、1,5211码的权为5、2、1、1。

二、格雷码(循环码)
(1)格雷码每一位的状态变化都按一定的顺序循环。
(2)任何相邻的两个码组之间或首尾之间,都只有一位发生变化。因此在代码转换的过程中就不会产生过渡“噪声”。
(3)余3循环码:在循环码的基础上偏移3。

1.4 二进制算数运算
1.4.1 二进制算术运算的特点
(1) 二进制算术运算和十进制算术运算的规则基本相同,唯一的区别在于二进制数是“逢二进一”。
(2) 二进制数的乘法运算可以通过若干次的“被乘数左移1位”和“被乘数与部分积相加”这两种操作完成;而二进制数的除法运算可以通过若干次的“除数右移1位”和“从被除数或余数中减去除数”这两种操作完成。

1.4.2 反码、补码和补码运算
(1)原码、反码和补码
① 带符号位的二进制数码称为原码。最高位为符号位,0表示正数,1表示负数。
② 正数的反码与原码相同;负数的反码符号位不变,其它位按位取反。
③ 正数的补码与原码相同;负数的补码是它的反码再加上1。
(2)补码运算
① 在舍弃进位的条件下,减去某个数可以用加上它的补码来代替。
② 两个同符号数相加时,它们的绝对值之和不可超过有效数字位所能表示的最大值。

例1:写出(34.7)10的8421BCD码和二进制码

例2:写出(3D.C)16的等值二进制码和十进制码
例3:写出(-1101)2的原码和补码
