前言 🔗
随着.net的学习已经接近尾声,转向golang python亦或是前端的欲望越来越强烈
在fox大佬的补习下,粗略的掌握了计算机最最基础的底层知识和原理,这对后续的学习是大有脾益的
甚至我现在觉得,一个程序员如果连最基础的二进制都不会的话,那么罔为程序员
二进制之概念 🔗
二进制之 & 🔗
二进制之 | 🔗
二进制之 ^ 🔗
二进制之 » 🔗
二进制之 « 🔗
二进制之补码 🔗
二进制之浮点数(float) 🔗
二进制之妙用 🔗
在使用& |时候,一个int32的类型最多可以表示32种不同的状态,int64最多可以表示64种不同的状态
这对于数据库的设计来说是有很大的作用的(虽然现在硬盘不值钱了,但是学会这些基础的概念是非常有必要的)
int32
对应的状态位数值 🔗
位数 | 数值 | 二进制表示 |
---|---|---|
0 | 1 | 0000 0001 |
1 | 2 | 0000 0010 |
2 | 4 | 0000 0100 |
3 | 8 | 0000 1000 |
4 | 16 | 0001 0000 |
5 | 32 | 0010 0000 |
6 | 64 | 0100 0000 |
7 | 128 | 1000 0000 |
8 | 256 | 0001 0000 0000 |
9 | 512 | 0010 0000 0000 |
10 | 1024 | 0100 0000 0000 |
11 | 2048 | 1000 0000 0000 |
12 | 4096 | 0001 0000 0000 0000 |
13 | 8192 | 0010 0000 0000 0000 |
14 | 16384 | 0100 0000 0000 0000 |
15 | 32768 | 1000 0000 0000 0000 |
16 | 65536 | 0001 0000 0000 0000 0000 |
17 | 131072 | 0010 0000 0000 0000 0000 |
18 | 262144 | 0100 0000 0000 0000 0000 |
19 | 524288 | 1000 0000 0000 0000 0000 |
20 | 1048576 | 0001 0000 0000 0000 0000 0000 |
21 | 2097152 | 0010 0000 0000 0000 0000 0000 |
22 | 4194304 | 0100 0000 0000 0000 0000 0000 |
23 | 8388608 | 1000 0000 0000 0000 0000 0000 |
24 | 16777216 | 0001 0000 0000 0000 0000 0000 0000 |
25 | 33554432 | 0010 0000 0000 0000 0000 0000 0000 |
26 | 67108864 | 0100 0000 0000 0000 0000 0000 0000 |
27 | 134217728 | 1000 0000 0000 0000 0000 0000 0000 |
28 | 268435456 | 0001 0000 0000 0000 0000 0000 0000 0000 |
29 | 536870912 | 0010 0000 0000 0000 0000 0000 0000 0000 |
30 | 1073741824 | 0100 0000 0000 0000 0000 0000 0000 0000 |
31 | 2147483648 | 1000 0000 0000 0000 0000 0000 0000 0000 |
int64
对应的状态位数值 🔗
位数 | 数值 | 二进制表示 |
---|---|---|
0 | 1 | 0000 0001 |
1 | 2 | 0000 0010 |
2 | 4 | 0000 0100 |
3 | 8 | 0000 1000 |
4 | 16 | 0001 0000 |
5 | 32 | 0010 0000 |
6 | 64 | 0100 0000 |
7 | 128 | 1000 0000 |
8 | 256 | 0001 0000 0000 |
9 | 512 | 0010 0000 0000 |
10 | 1024 | 0100 0000 0000 |
11 | 2048 | 1000 0000 0000 |
12 | 4096 | 0001 0000 0000 0000 |
13 | 8192 | 0010 0000 0000 0000 |
14 | 16384 | 0100 0000 0000 0000 |
15 | 32768 | 1000 0000 0000 0000 |
16 | 65536 | 0001 0000 0000 0000 0000 |
17 | 131072 | 0010 0000 0000 0000 0000 |
18 | 262144 | 0100 0000 0000 0000 0000 |
19 | 524288 | 1000 0000 0000 0000 0000 |
20 | 1048576 | 0001 0000 0000 0000 0000 0000 |
21 | 2097152 | 0010 0000 0000 0000 0000 0000 |
22 | 4194304 | 0100 0000 0000 0000 0000 0000 |
23 | 8388608 | 1000 0000 0000 0000 0000 0000 |
24 | 16777216 | 0001 0000 0000 0000 0000 0000 0000 |
25 | 33554432 | 0010 0000 0000 0000 0000 0000 0000 |
26 | 67108864 | 0100 0000 0000 0000 0000 0000 0000 |
27 | 134217728 | 1000 0000 0000 0000 0000 0000 0000 |
28 | 268435456 | 0001 0000 0000 0000 0000 0000 0000 0000 |
29 | 536870912 | 0010 0000 0000 0000 0000 0000 0000 0000 |
30 | 1073741824 | 0100 0000 0000 0000 0000 0000 0000 0000 |
31 | 2147483648 | 1000 0000 0000 0000 0000 0000 0000 0000 |
32 | 4294967296 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 |
33 | 8589934592 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 |
34 | 17179869184 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 |
35 | 34359738368 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 |
36 | 68719476736 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
37 | 137438953472 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
38 | 274877906944 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
39 | 549755813888 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
40 | 1099511627776 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
41 | 2199023255552 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
42 | 4398046511104 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
43 | 8796093022208 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
44 | 17592186044416 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
45 | 35184372088832 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
46 | 70368744177664 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
47 | 140737488355328 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
48 | 281474976710656 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
49 | 562949953421312 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
50 | 1125899906842624 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
51 | 2251799813685248 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
52 | 4503599627370496 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
53 | 9007199254740992 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
54 | 18014398509481984 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
55 | 36028797018963968 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
56 | 72057594037927936 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
57 | 144115188075855872 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
58 | 288230376151711744 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
59 | 576460752303423488 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
60 | 1152921504606846976 | 0001 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
61 | 2305843009213693952 | 0010 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
62 | 4611686018427387904 | 0100 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |
63 | 9223372036854775808 | 1000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 |