1.编程中涉及的进制及表示方式:

image.png

2.二进制的使用说明:

  • 2.1 计算机底层的存储方式:所有数字在计算机底层都以二进制形式存在。
  • 2.2 二进制数据的存储方式:所有的数值,不管正负,底层都以__补码的方式存储。
  • 2.3 原码、反码、补码的说明:
    • 正数:三码合一
    • 负数:
      • image.png

3.进制间的转换:

3.1 图示:

image.png

3.2 图示二进制转换为十进制:

image.png
image.png
image.png

3.3 图示十进制转换为二进制:

image.png

3.4 二进制与八进制、十六进制间的转换:

image.png
image.png

4. 数制,进制转换

1). 将任意进制数转换为等值的十进制数

解题方法和步骤:
利用公式4. 进制(了解) - 图10
即可将任何进制的数转换为等值的十进制数。上式中的N为以十进制数表示的计数进位的基数4. 进制(了解) - 图11为第4. 进制(了解) - 图12位的系数,它可以是0 ~ N中的任何一个整数。若整数部分有n位,小数部分有m位,则t 将包含从n-1到0的所有正整数和从-1到-m的所有负整数。
对于整数部分为n位、小数部分为m位的二进制数(N=2) ,则得到等值的十进制数为
4. 进制(了解) - 图13

其中每一位的系数4. 进制(了解) - 图14,可能是1或0。

对于整数部分为n位、小数部分为m位的八进制数(N=8) ,则得到等值的十进制数为
4. 进制(了解) - 图15

其中每一位的系数4. 进制(了解) - 图16,可能是0~7当中的某个数值。

对于整数部分为n位、小数部分为m位的十六进制数(N=16) ,则得到等值的十进制数为
4. 进制(了解) - 图17

式中每一位的系数4. 进制(了解) - 图18,的取值可能是0~15当中的某一数值。

image.png

2). 将十进制数转换为等值的二进制数

解题方法和步骤:
若十进制数包含整数和小数,则整数部分和小数部分需按不同方法分别进行转换。
(1) 整数部分的转换 (倒取)
将十进制数除以2,所得余数即二进制数的4. 进制(了解) - 图20;
将上面得到的商再除以2,所得余数即二进制数的4. 进制(了解) - 图21;
将上面得到的商再除以2,所得余数即二进制数的4. 进制(了解) - 图22;
依此类推,直到所得商等于0为止,就得到了等值的二进制数。
(2) 小数部分的转换(顺取)
将十进制数的小数乘以2,所得乘积的整数部分即4. 进制(了解) - 图23;
将上面得到的乘积的小数部分再乘以2,所得乘积的整数部分即4. 进制(了解) - 图24;
将上面得到的乘积的小数部分再乘以2,所得乘积的整数部分即4. 进制(了解) - 图25;
依此类推,直到求出要求的位数为止,就得到了等值的二进制数。
image.png

3). 二进制与八进制和十六进制间的互相转换

解题方法和步骤:
在将二进制数转换为八进制数时,首先将二进制数的整数部分从最低位向高位每3位划分为一组同时将二进制数的小数部分从最高位向低位每3位划分为一组,然后将每一组代之以等值的八进制数,就得到了所求的转换结果。
在将二进制数转换为十六进制数时,首先将二进制数的整数部分从最低位向高位每4位划分为一组同时将二进制数的小数部分从最高位向低位每4位划分为一组,然后将每一组代之以等值的十六进制数,就得到了所求的转换结果。
相反地,在将八进制数转换为二进制数时,只需将八进制数的每一位代之以等值的3位二进制数并按原来的顺序排列起来就行了。
同理,在将十六进制数转换为二进制数时,只需将十六进制数的每一位代之以等值的4位二进制数并按原来的顺序排列起来就行了。
image.png

4). 将十进制数转换为等值的八进制和十六进制数

转换方法和步骤:
(1) 首先将十进制数转换为等值的二进制数。
(2) 再将得到的二进制数转换为等值的八进制和十六进制数。