《数字设计基础有应用》-数制与编码

该资料为大二学生(本人)的复习资料,如有不全,请见谅!如有错误,可评论区说一下,谢谢~

资料为《数字设计基础有应用》(第二版)+笔记。

进制P5-9

  1. 进制的特征

(以十进制为例)

  • 基数为10,使用0、1、2、3、4、5、6、7、8、9共10个字符

  • 第i位的权为

  • 计数时逢10进1

十进制其实就是平时大家所用的算数规则,大家也很熟悉,其实所有的进制规则都可以类似于十进制推出来。

或许大家很疑惑,”第i位的权为“是什么意思呢?

以二进制为例 -> 第i位的权为

例如1.1

第二位 第一位 第零位 第负一位 第负二位 第负三位

对应二进制的位置: 1 0 1 . 1 0 1

可以说就是从点“.”为起点开始算的

🔺主要用的进制为二进制、八进制、十进制、十六进制

需要注意的,十六进制的基数为0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F

其中A - F 分别对应着10 - 15。

2.进制的转换

从上面的例题1.1已经看到了二进制如何转变为十进制,那二进制怎么转变为十六进制呢?

例题1.2

1️⃣四个数分一份

🔺因为十六进制的每个数都可以用四位的二进制来表示

🔶二进制的整数部分 -> 从小数点的左边开始数;二进制的小数部分 -> 从小数点的右边开始数

但是如果二进制的数不是4的倍数,无法分成完整的整数倍怎么办呢?

2️⃣凑零

🔶二进制的整数部分 -> 在最左边补零;二进制的小数部分 -> 在最右边补零

3️⃣计算

1000 -> 8

1100 -> C

1110 -> E

小数部分也是一样的

例题1.3

二进制如何转变为八进制?

方法基本一样,但是第一步就不是四个数分一份了,是三个数分一份,因为八进制用三位二进制就可以表示了,无需四位

例题1.4

在以上的转换中其实都经历了转变十进制的过程

那十进制如何转换成二进制呢?

例题1.5

🔺竖式连除法

其实就是218每次都除2,每次记录余数在右边,直到数为0截至。

例如:218/2 == 109 余0;109/2 == 54 余1

然后再将余数从下往上串起来就是答案了。

转换为十六进制也是一样的

3.带符号数的表达式

首先计算机里面是用8位的二进制数来表示一个数的,那传统的算数中的“+”(正号)和“-”(负号)就只能用0或1来表示。

最后人们规定:0为正,1为负

原码表达式

反码表达式:

🔺在原码的基础下,正数与原码表达式一样,负数则每一位取反即可

补码表达式:

🔺在反码的基础下,正数与反码表达式一样,负数则在反码基础上加1即可

一个特殊的例子

例题1.6

最终答案:

🔶可能有同学不知道二进制怎么运算的,觉得很奇怪,其实用十进制对比一下就知道了,十进制是逢10进1,而二进制就是逢2进1就对了。

原码补码的直接转换(简便方法)

🔶原码转为补码(负数时)

1️⃣右往左数第一个“1”,右边不动

2️⃣运算符不动

3️⃣其他取反

🔶补码转为原码(负数时)

1️⃣右往左数第一个“1”,右边不动

2️⃣运算符不动

3️⃣其他取反

符号的编码表达式P10-14

  1. 格雷码(Gray codes) - 无权码

🔺典型循环码

十进制

二进制编码

十进制

二进制编码

十进制

二进制编码

二进制码

格雷码

二进制码

格雷码

二进制码

格雷码

0

0000

0000

6

0110

0101

12

1100

1010

1

0001

0001

7

0111

0100

13

1101

1011

2

0010

0011

8

1000

1100

14

1110

1001

3

0011

0010

9

1001

1101

15

1111

1000

4

0100

0110

10

1010

1111

5

0101

0111

11

1011

1110

  1. BCD码

🔺四位的二进制,每一位代表一个数

1.8421BCD码 - 有权码

8 -> ;4 -> ;2 ->;1 ->

例题2.1

2.5421BCD码 - 有权码

与例题2.1同理

3.2421BCD码 - 自补码

🔺“自补”含义:若2个十进制字符之和为9,则这个2个字符关于“9”互补,而这两个字符对应的2421码互为反码,如2421码的0000与1111,0001与1110,0100与1011等

4.余3码 - 无权码

🔺余3码对应列的8421码多3

例如:

5.余3循环码 - 无权码

🔺二进制循环码(格雷码)去掉头尾3组编码后得到的,且保留了循环码的特性

十进制数

8421码

5421码

2421码

余3码

余3循环码

0

0000

0000

0000

0011

0010

1

0001

0001

0001

0100

0110

2

0010

0010

0010

0101

0111

3

0011

0011

0011

0110

0101

4

0100

0100

0100

0111

0100

5

0101

1000

1011

1000

1100

6

0110

1001

1100

1001

1101

7

0111

1010

1101

1010

1111

8

1000

1011

1110

1011

1110

9

1001

1100

1111

1100

1010

  1. ASCII码

🔺采用7位二进制编码格式,共有128种不同的编码,用来表示十进制字符,英语字母,基本运算字符,控制符和其他符号

后期有有用的题目,会实时更新~
此次更新于:2023.03.06
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值