进制转换相关知识
1.二进制转十进制,八进制,十六进制的方法
按权展开的方法
例如将以下这个二进制转换为十进制:
( 1011.01 )B=1∗201*2^01∗20 + 1∗211*2^11∗21 + 0∗220*2^20∗22 + 1∗231*2^31∗23 + 0∗2−10*2^{-1}0∗2−1 + 1∗2−21*2^{-2}1∗2−2 = (11.25)D
notice:
2i2^i2i为权,2为基(基就是指各种进位技术中允许选用基本数码的个数,也就是几进制就是几),同理二进制转化为八进制,将基改为8进行计算,综述就是,本身是几进制就写几
2.十进制,八进制,十六进制转二进制的方法
主要分两部分,整数部分和小数部分
例如:将(100.345)D转化成二进制
例:将(193.12)D转化成八进制
注意:
①小数部分转化时候可能是不精确的,要保留多少位小数,还没有规定,取决于题意
②十进制数保留最后位有效位采用四舍五入,八进制采取三舍四入
3.进制之间的快速互化(主要是明确是二进制转八进制或者十六进制,十六进制,八进制转二进制)
方法:
根据上述这种关系,二进制转化为八进制时,以小数点为中心左右两边分组,没3组为一组,两头不足3位补0即可,同样二进制转换为十六进制只需要4位一组即可。
同理,反过来,八进制、十六进制转换为二进制,十六进制转二进制则也是以小数点为中心,向两边扩展,一个数符写成4位二进制,对于八进制转二进制则是一个数符号写成3位二进制
如下面的题目所示:
原码、反码、补码相关知识
计算机中的数值基本上分两类::整数和浮点数(实数),数值在计算机中以0和1的二进制形式存放,每个数据占据内存的字节数的整数倍,例如整数占两个或者4个字节,浮点数占4个或者8个字节
0表示----正(+)
1表示----负( -)
二进制第一位表示符号位,后面的则是数值位数
原码
其实,只要将正号和负号改成0和1即可,其中,例如+0.110这个叫做真值
练习1答案:0110 1110
练习2答案:-110110
notice!:如果读者对于答案又异议,请评论或私信我,一起探讨~
反码
正数的反码不变
对于负数:原码符号位不变,数值位取反。
补码
引用例子介绍补码:
补码的引入-----模(significant!)
练习题3答案 282^828=256 (或者100000000)
练习题4答案 251251251 (282^828+(-5)=251为什么是这样,后面会讲到)
notice 记住几个特殊值,在后续做题中会很快速
212^121=2 222^222=4 232^323=8 242^424=16。。。。为了清晰表述,如下
| 次数i(2i2^i2i) | 值 |
|---|---|
| 1 | 2 |
| 2 | 4 |
| 3 | 8 |
| 4 | 16 |
| 5 | 32 |
| 6 | 64 |
| 7 | 128 |
| 8 | 256 |
| 9 | 512 |
| 10 | 1024 |

正数的补码不变(原码=反码=补码)
负数的补码位反码+1,你也可以使用定义进行计算(我一般使用定义计算,快速省时)
原码求补码的快速方法

补码的补码为原码
移码
其实也就是与补码的符号位相反即可
浮点数
偷个懒
浮点数分为单精度浮点数和双精度浮点数
浮点数由阶码和尾数表示,阶码的位数确定了数的范围,尾数用定点小数表示,尾数所占的位数确定了数的精度,由此可见浮点数是定点正数和定点小数的结合
本文详细介绍了二进制、八进制、十进制和十六进制之间的转换方法,包括按权展开法和分组转换策略。同时,深入讲解了计算机中数值的表示,如原码、反码和补码的概念,以及它们在正负数表示中的应用。此外,还提及了浮点数在计算机中的存储方式,涉及阶码和尾数的概念。





















4278

被折叠的 条评论
为什么被折叠?



