二进制四进制八进制十六进制之间转换关系及浅谈文字在计算机中表示

  • Post author:
  • Post category:其他


计数制:

是指用一组固定的符号和统一的规则来计数的方法。按进位的方式计数的数制,成为进位计数制,简称进位制。

不同进制的特性:

1.R进制,数码符号都从0到R-1。

2.同一数码,放在不同位置,含义不同。

3.逢R进1。

不同进制两个基本概念:基数和权。

基数:同数码。

权:数码数值=该数码*与数位有关的常数,这个常数叫“位权”,简称“权”。



例:十进制数1234。数码1的权=10^3;数码2的权=10^2;数码3的权=10^1;数码4的权=10^0。

任何一个进位计数制的数都可以表示成“按位加权求和”的多项式形式。

常用进制间的对应关系表

十进制数


二进制数


八进制数


十六进制数

0




0




0




0

1




1




1




1

2




10




2




2

3


11




3




3

4




100




4




4

5




101




5




5

6




110




6




6

7




111


7


7

8




1000


10




8

9


1001


11


9

10


1010


12




A

11


1011


13


B

12


1100


14


C

13


1101


15


D

14


1110


16


E

15


1111


17


F

不同进制(二、八、十、十六)转换

基本思想:借十转换、小数点为中心、大向小1变多、小变大多变1

1.  十to二、八、十六

(1)整数

方法一:10除以2/4/8/16取余

十to二快算:13=1+0+4+8=(1011)2

(2)小数

小数部分连续乘以2/4/8/16直到结果无小数,取每次结果的整数部分从签到后组成小数点后的数码。



例:将十进制数0.625分别转换为二进制,八进制和十六进制



二进制:0.625*2=

1

.250


1.250*2=

0

.500


0.5*2=

1

.000


0.101



八进制:0.625*8=

5

.000


0.5



十六进制:0.625*16=10.000


0.A

2.二、八、十六to十

规则:按位权表示法展开求和



例:将(100011.01101)2、(675.351)8、(AE.8F)16 转化为十进制数



(100011.01101)2=1*2^5+0*2^4+0*2^3+0*2^2+1*2^1+1*2^0+0*2^-1+1*2^-2+1*2^-3+0*2^-4+1*2^-5=35



(675.351)8=6*8^2+7*8^1+5*8^0+3*8^-1+5*8^-2+1*8^-3=445



(AE.8F)16=10*16^1+14*16^0+8*16^-1+15*16^-2=174

3.二to八

因为2^3=8,所以二进制中,三个连续数码可以化为一个八进制数码。

方法:以小数点为基准点想两边三个数码为一组划分(不够补0),然后将每组化为8进制下数码(先化为十进制然后对应进制对应关系表转化为8进制)。



例:将二进制数(1001110.10101)转化为八进制数。



分组 001 001 110.101 010



1     1      6  .   5     2



116.52

4.二to十六

因为2^4=8,所以二进制中,四个连续数码可以化为一个十六进制数码。

方法:以小数点为基准点想两边四个数码为一组划分(不够补0),然后将每组化为16进制下数码(先化为十进制然后对应进制对应关系表转化为16进制)。



例:将二进制数(1001110.10101)转化为十六进制数。



分组 0100 1110 . 1010 1000



4


E   .


A         8



4E.A8

5.八to二

方法:将每位八进制数用3位二进制数替换,按原有顺序排列,去掉两端多余0。



例:将八进制数(116.52)8转换为二进制数



116.52



001 001 110 .101 010



(116.52)8=(1001110.10101)2

6.十六to二

方法:将每位十六进制数用4位二进制数替换,按原有顺序排列,去掉两端多余0。



例:将十六进制数(4E.A8)16转换为二进制数



4E.A8



0100 1110 . 1010 1000



(4E.A8)16=(1001110.10101)2

二进制数的运算

1.算数运算

(1)加法运算规则



0+0=0



0+1=1+0=1



1+1=10(向高位进位)

(2)减法运算规则



0-0=1-1=0



1-0=1



0-1=1(向高位错位)

(3)乘法运算规则



0*0=0



0*1=1*0=0



1*1=1

(4)除法运算规则



0/1=0(1/0无意义)



1/1=1

2.逻辑运算

(1)或运算规则   ∨



有1必1

(2)与运算规则    ∧



有0必有0

(3)非运算规则



0=1



1=0

(4)异或    ⊕



同为0



异为1

文字在计算机中表示方法

位(bit)存储最小单位  0或1

字节(Byte)基本单位   8个bit构成1个字节(1B=8bits)

1KB=2^10B=1024B

1MB=2^20B=1024KB

1GB=2^30B=1024MB

1TB=2^40B=1024GB

bit<Bety<KB<MB<GB<TB<PB<EB<ZB<YB<DB<NB

英文字母的表示

ASCII


7位二进制表示每个字符,128(2^7)个

扩展ASCII


8位二进制表示每个字符,(2^8)

EBCDID

Unicode


16位二进制表示每个字符  (2^16)  支持多语言

中文汉字表示

1980《信息交换用汉字编码字符集——基本集》,国标GB2312-80

16字节为一个汉字,每个字节只用低7位  128*128,但ASCII中控制代码,不作为汉字代码(128-34=94)*(128-34=94)=8836个,7445个汉字和图形符号;

由94个区和94个位。区号和位号构成区位码。

区位码→国标码



例:“德”区位码2134



高位字节=(21)(十进制)+20H(16 进制)=15H+20H=35H(H 标记表示)



地位字节=(34)(十进制)+20H(16进制)=22H+20H=42H



“德”国标码:3542H

国标码→j机内码(国标中每个字节最高改为1)



例:接上



(3542)H=(0011 0101 0100 0010)B



机内码:



(1011 0101 1100 0010)B=(B5C2)H



版权声明:本文为dj741原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。