密码学中的数学基础:二进制数学与数论知识
1. 二进制数学基础
二进制数学虽不属于信息论范畴,但却是理解密码学的关键知识。很多人可能对二进制数学有所了解,这里可当作复习;若不熟悉,下面将介绍其要点。
1.1 二进制数学定义
二进制数学采用以 2 为基数的数学体系,不同于我们更熟悉的以 10 为基数的十进制体系。我们觉得十进制更“自然”,是因为人类通常有 10 根手指和 10 根脚趾。在十进制中引入 0 后,有 0 - 9 这 10 个数字,实际上“10”是十位为 1、个位为 0 的表示。二进制也是如此,不存在数字“2”,“2”表示为 2 的位置为 1、1 的位置为 0,即“10”。以下是十进制与二进制数字的对应表:
| 十进制数字 | 二进制数字 |
| — | — |
| 0 | 0 |
| 1 | 1 |
| 2 | 10 |
| 3 | 11 |
| 4 | 100 |
| 5 | 101 |
| 6 | 110 |
| 7 | 111 |
| 8 | 1000 |
二进制数字很重要,因为计算机最终理解的就是二进制。当然,我们可以用任何数制表示数字,历史上也有一些广泛使用的数制,如十六进制(基数 16)和八进制(基数 8),它们在计算机科学中常用,因为它们是 2 的幂次方,便于与二进制相互转换。巴比伦人使用的是 60 进制,如今在地理坐标系统中仍有体现,例如 60 秒为 1 分钟,60 分钟为 1 度。现代二进制数字的概念可追溯到戈特弗里德·莱布尼茨,他在《二进制算术的解释》一文中指出,中国的《易经》卦象对应着从 0 到 1111111(十进
超级会员免费看
订阅专栏 解锁全文
48

被折叠的 条评论
为什么被折叠?



