二进制和十六进制
用0和1表示各种信息
计算机的电路由逻辑门电路组成。一个逻辑门电路可以看成一个开关,每个开关的状态是“开"(高电位)或“关”(低电位),即对应于1或0
课程推荐 【【计算机科学速成课】[40集全/精校] - Crash Course Computer Science】 https://www.bilibili.com/video/BV1EW411u7th/?share_source=copy_web&vd_source=3b2cc08efb537592debc1e358b5d787f
计算机的电路由逻辑门电路组成。一个逻辑门电路可以看成一个开关,每个开关的状态是“开"(高电位)或“关”(低电位),即对应于1或0
二进制数的一位,取值只能是0或1,称为一个“比特”(bit),简写:b
计算机的电路由逻辑门电路组成。一个逻辑门电路可以看成一个开关,每个开关的状态是“开"(高电位)或“关”(低电位),即对应于1或0
二进制数的一位,取值只能是0或1,称为一个“比特”(bit),简写:b
八个二进制位称为一个“字节”(byte),简写: B
计算机的电路由逻辑门电路组成。一个逻辑门电路可以看成一个开关,每个开关的状态是“开"(高电位)或“关”(低电位),即对应于1或0
二进制数的一位,取值只能是0或1,称为一个“比特”(bit),简写:b
八个二进制位称为一个“字节”(byte),简写: B
1024(210)字节称为1KB ,1024KB称作1MB(1兆),
1024MB称作1GB,
1024GB称作1TB。
用0和1表示各种信息
0和1足以表示和传播各种信息。
比如, 用8个连续的0或1(即1个字节)来表示一个字母、数字或标点符号
,比如用“00100000”表示空格,用“01100001”表示字母“a”,用
“01100010”表示字母“b”,用“01100011”表示字母“c”……。由8个
0或者1的组成的串,一共有28即256种不同的组合,这就足以表示10个阿拉伯数字以及英语中用到的所有字母和标点符号了。此即为ASCII编码方案。
图片、视频和可执行程序,也可以用0和1表示
给定一个K进制数
给定一个K进制数,求它是多大
假设有一个n+1位的K进制数,它的形式如下:
AnAn-1An-2。。。。。。A2A1A0 (比如 八进制数 1723)
则其大小为:
A0×K0 + A1×K1 + ……+ An-1×Kn-1+ An×Kn
数就是数,没有进制之分,只有数的表示形式,才有进制之分。
所谓“十进制数”,是“数的十进制表示形式" 的简称。
给定一个数,求其K进制表示形式
10
求数的K进制表示形式 -- 短除法
给定一个整数N和进制K,那么N可表示成以下形式:
N = A0×K0+A1×K1+A2×K2+……+An-1×Kn-1+An×Kn
= A0 +K (A1 +A2×K1+……+An-1×Kn-2+An×Kn-1
)
N除以K所得到的余数是A0,商是A1+A2×K1+……+An-1×Kn-2+An×Kn-1。将这个商再除
以K,就得到余数A1,新的商是
A2 + A3×K1+……+An-1×Kn-3+An×Kn-2
不停地将新得到的商除以K,直到商变成0,就能依次求得A0 、A1、 A2 …… An-1 、An
。显然,Ai <K ( i = 0…n),且最终得到的K进制数就是:
AnAn-1An-2。。。。。。A2A1A0
K进制小数
11
K进制小数 0.A0A1……An的值是:
A0×K-1+A1×K-2+……+An×K-(n+1)
(0.12)10 = 1 ×10-1 + 2 ×10-2
(0.1)3 = 1 ×3
-1 即1/3, 表示成10进制就是无限循环小数
可见,n进制下的有限位小数,在m进制下可能就无法精确表示,因为会无限
循环
十进制有限位小数,在二进制的情况未必能用有限位数表示出来。计算机内
存有限,不可能存放无限位,因此计算机的小数运算会有误差。比如,计算
机其实无法精确表示 4.9,只能精确表示4.899999999...之类一个很接近的数
十六进制数
十六进制数应该有16个数字,除0到9外:
A 10
B 11
C 12
D 13
E 14
F 15
小写也可以