进制转换&数据表示

1.0 进制转换

1.1 进制缩写

  • 二进制 B
  • 八进制 O
  • 十进制 D
  • 十六进制 H

1.2 其他进制 转换 十进制

只需要将 该进制的每一位 分别乘上 该进制的位数次方(注意个位数为0次方)

举个栗子:

  • 10010010.11B -> 1*27 + 1 * 24 + 1 * 21 + 1 * 2-1 + 1 * 2-2 = 146.75
  • 251.5O -> 2 * 82 + 5 * 81 + 1 * 80 + 5 * 8-1 = 169.625
  • AE86.1H -> 10 * 163 + 14 * 162 + 8 * 161 + 6 * 160 + 1 * 16-1 = 44678.0625

1.3 十进制 转换 其他进制

通过短除法可以实现,短除内容为该进制数

还是举个栗子:将 98D 转换成 二进制

2|47  0
2|23  1
2|11  1
2|5   1
2|2   1
2|1   0
  0   1

自下向上的顺序得到的结果就是 1011110B


1.4 二进制 转换 八进制、十六进制

由数学的角度可以知道 23 = 8,24 = 16

因此转换的时候可以通过多个数据捆绑得到进制的转换

还是举个栗子:1011010B

转换为八进制     1 011 010
转换为十六进制   101 1010

可以看到八进制是三个二进制位,十六进制是四个二进制位。

那么以上的内容就可以转化成(不满的话要往前补,遇到小数在后开始补齐):132O 和 5AH


1.5 八进制、十六进制 转换 二进制

同上的思路,不过是逆向思维

可以通过132O来看,1和3和2,分别去拆成三位数的二进制位,然后结合在一起即可~


1.6 其他任意进制相互转换技巧~

对于一些特殊的转换比如八进制转十六进制之类的,可以通过中间项的进制转换作为跳板

例如说八进制和十六进制的互换,可以通过先转换二进制,然后再进行转换


2.0 数据的表示(二进制)

2.1 原码

原码是由符号位和数值位组成的。其中符号位0正1负。

tips:当机器字长为n+1时,原码可表示的范围为 -(2n – 1) <= x <= 2n – 1


2.2 反码

看原码的情况:

  • 符号位为0 -> 反码不做改变
  • 符号位为1 -> 符号位不变,数值位取反

tips:当机器字长为n+1时,反码可表示的范围为 -(2n – 1) <= x <= 2n – 1


2.3 补码

看反码的情况:

  • 符号位为0 -> 补码不做改变
  • 符号位为1 -> 反码末位+1

tips:当机器字长为n+1时,补码可表示的范围为 -2n <= x <= 2n – 1


2.4 移码

在补码的基础上将符号位取反(注意:移码只能用于表示整数)

tips:当机器字长为n+1时,补码可表示的范围为 -2n <= x <= 2n – 1


小彩蛋~

民间的一句传言“补码的补码是原码”其实是真的喵!


3.0 校验码(海明码)

由于奇偶校验和循环冗余校验码不是重点内容,此处不做展开,此处只展示海明码

海明码构成方法:在数据位之间插入 k 个校验码,通过扩大码距来实现检错和纠错

设数据位是 n 位,校验位是 k 位,那么 n 和 k 需要满足:2k – 1 >= n + k

2017上半年上午试题5
已知数据信息为16位,最少应附加____位校验位,才能实现海明码纠错?
A.3  B.4  C.5  D.6

可以看出 n = 16,设校验位为 k,可以轻松列出 2k – 1 >= 16 + k,计算得出结果是 5


作 者:雪崩了...
链 接: https://bolinio.top/?p=214
来 源:bolin的技术厨房
版 权 声 明:本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0许可协议。文章版权归作者所有,未经允许请勿转载!


暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇