10、P1 W2 U2.1 二进制数
视频:
如果本次课程对应的 Coursera 的视频打不开,可以点击下面链接
P1W2U2.1 - Binary Numbers
第一周主要讲解了 布尔数(二进制数) 跟 逻辑门 的关系。
这周主要讲解 十进制世界的表示和计算 与 布尔数(二进制)的关系。
这样就可以把现实世界的计算 用 逻辑门 来表达。
二进制数如何表示成我们熟悉的数字(十进制数字)
如下图
第一行:1位(bit)二进制数,只能表示 2 种可能。(0 或 1)
第二行:2位二进制数,可以表示 4 种可能。(00,01,10,11)
第三行:3位二进制数,8种可能
第四行:n位,2的N次方种可能
下图是二进制(Binary) 对应表示的 十进制(Decimal)
但是上图的对应关系是如何进行的呢?回顾一下熟悉的十进制
789(十进制)=7x10^2 + 8x10^1 + 9 x10^0 = 700 + 90 + 8 = 798(十进制)
10的零次方等于1 (10^0 = 1)从上图可以总结出一个规律,任何进制转十进制的通用公式。
101(二进制) = 1x2^2 + 0x2^1 + 1x2^0 = 4 + 0 + 1 = 5(十进制)
非0数的零次方 = 1,2^0 =1下图上部给出了 二进制 转 十进制 的 通用公式
另外二进制的位数的大小,也决定了它能表示的最大十进制数。
比如 3位二进制最大数是 111 就是十进制的 1+2+4 = 7。
也能推出一个二进制能表示的最大十进制数的公式:2的位数次方-1
在计算机里,位数通常是固定的,比如8位。如下图
能表示多少个数:2^k (k = 二进制数的位数)但事实情况,是计算机还会保留一位数用来表示数的正负。如下图
老师说课程只用正的那部分数(8位二进制的话就是 0 到 127)
于是剩下的7位能表示的最大数就变成127了
最后:十进制 转 二进制
例如 下图 87
注:2的平方数序列(...、256、128、64、32、16、8、4、2、1)
- 找出离87最接近的2的平方数,64。
- 找出剩下的23(87-64=23)最接近的2的平方数,16。
- 依次类推:获得 64 + 16 + 4 + 2 + 1
- 还是根据2的平方数序列。从右往左,如果有数字对应,就写1(64、16、4、2、1)。没有,就写0(32 和 8)
这节学习了 我们熟悉的 十进制 如何 表示和转换成 计算机世界的 二进制。
下节课学习 计算机世界的 二进制 如何 进行计算。