程序员必备的数学课
黄申
LinkedIn资深数据科学家
1 人已学习
限活动获得
课程目录
已完结/共 8 讲
01 | 作为程序员,为什么你应该学好数学?
02 | 程序员应该怎么学数学?
03 | 二进制:不了解计算机的源头,你学什么编程
04 | 余数:原来取余操作本身就是个哈希函数
05 | 迭代法:不用编程语言的自带函数,你会如何计算平方根?
06 | 数学归纳法:如何用数学归纳提升代码的运行效率?
07 | 递归(上):泛化数学归纳,如何将复杂问题简单化?
08 | 递归(下):分而治之,从归并排序到MapReduce
程序员必备的数学课
15
15
1.0x
00:00/00:00
登录|注册

03 | 二进制:不了解计算机的源头,你学什么编程

我们都知道,计算机的起源是数学中的二进制计数法。可以说,没有二进制,就没有如今的计算机系统。那什么是二进制呢?为什么计算机要使用二进制,而不是我们日常生活中的十进制呢?如何在代码中操作二进制呢?专栏开始,我们就从计算机认知的起源——二进制出发,讲讲它在计算机中的“玄机”。

什么是二进制计数法?

为了让你更好地理解二进制计数法,我们先来简单地回顾一下人类计数的发展史。
原始时代,人类用路边的小石子,来统计放牧归来的羊只数量,这表明我们很早就产生了计数的意识。后来,罗马人用手指作为计数的工具,并在羊皮上画出Ⅰ、Ⅱ、Ⅲ来代替手指的数量。表示一只手时,就写成“Ⅴ”形,表示两只手时,就画成“ⅤⅤ”形等等。
公元 3 世纪左右,印度数学家(也有说法是阿拉伯人)发明了阿拉伯数字。阿拉伯数字由从 0 到 9 这样 10 个计数符号组成,并采取进位制法,高位在左,低位在右,从左往右书写。由于阿拉伯数字本身笔画简单,演算便利,因此它们逐渐在各国流行起来,成为世界通用的数字。
日常生活中,我们广泛使用的十进制计数法,也是基于阿拉伯数字的。这也是十进制计数法的基础。因此,相对其他计数方法,十进制最容易被我们所理解。
让我们来观察一个数字:2871。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
返回
顶部