基数为 2 的计数方法,其中仅使用数字 0 和 1。在这个基数中,数字 1011 等于 。这种基数在计算机中使用,因为所有数字都可以简单地表示为一系列电脉冲的开和关。在计算机术语中,一个二进制数字称为位,两个数字称为crumb,四个数字称为半字节,八个数字称为字节。
整数 可以在 Wolfram 语言中使用以下命令以二进制表示BaseForm[n, 2],实数
的前
位数字可以使用以下命令以二进制获得RealDigits[x, 2, d]。最后,二进制数字列表
可以使用以下命令转换为十进制有理数或整数FromDigits[l, 2]。
上面的图示以图形方式显示了从 0 到 63 的二进制数(Wolfram 2002,第 117 页),下表给出了前几个十进制数的二进制等效值。
1 | 1 | 11 | 1011 | 21 | 10101 |
2 | 10 | 12 | 1100 | 22 | 10110 |
3 | 11 | 13 | 1101 | 23 | 10111 |
4 | 100 | 14 | 1110 | 24 | 11000 |
5 | 101 | 15 | 1111 | 25 | 11001 |
6 | 110 | 16 | 10000 | 26 | 11010 |
7 | 111 | 17 | 10001 | 27 | 11011 |
8 | 1000 | 18 | 10010 | 28 | 11100 |
9 | 1001 | 19 | 10011 | 29 | 11101 |
10 | 1010 | 20 | 10100 | 30 | 11110 |
负数 最常使用正数
的补码以二进制表示,因此
将被写成
的补码,即 11110101。这允许使用通常的进位进行加法运算,并丢弃最左边的数字,因此
给出
给定二进制数 能被 2 整除的次数
由从右边数起的第一个
的位置给出。例如,
可以被 2 整除两次,而
被 2 整除零次。1, 2, ... 被 2 整除的次数分别是 0, 1, 0, 2, 0, 1, 0, 3, 0, 1, 0, 2, 0, 1, 0, 4, 0, 1, 0, 2, ... (OEIS A007814),这是二进制进位序列。
实数也可以使用二进制表示法来表示,方法是将“小数点”后的数字解释为 2 的负幂,因此二进制数字 将表示数字
因此,1/2 将表示为 ,1/4 表示为
,3/4 表示为
,等等。整数
, 1, ... 的二进制数字序列连接在一起并解释为二进制常数,得到二进制 Champernowne 常数
(OEIS A030190)。
不幸的是,二进制数在计算机中的存储并非完全标准化。由于计算机以 8-位 字节(其中位是单个二进制数字)存储信息,因此根据机器的“字长”,需要超过 8 位的数字必须存储在多个字节中。通常的FORTRAN77整型大小为 4 个字节长。但是,在 VAX 中表示为 (byte1 byte2 byte3 byte4) 的数字在 Sun 上将被读取和解释为 (byte4 byte3 byte2 byte1)。对于浮点(实数)数字,情况甚至更糟,它们以二进制形式表示为尾数和特征值,对于长(8 字节)实数而言则更糟!
单位比特数字(0 或 1)的二进制乘法等同于“与”运算,如下面的乘法表所示。
0 | 1 | |
0 | 0 | 0 |
1 | 0 | 1 |
考虑所有直到 1, 2, ..., 的二进制数的累积数字和。前几个项是 1, 2, 4, 5, 7, 9, 12, 13, 15, 17, 20, 22, ... (OEIS A000788)。这个序列是单调递增的(左图),但如果移除主要渐近项,则会得到趋向于 Blancmange 函数的一系列驼峰曲线(右图;Trott 2004,第 218 页)。