3位如何存储8个值



我正在自学编程。和任何(好)学生一样,我遇到了一个障碍。

首先,我一直在读-一个比特可以存储的值的数量是2。没有人说是0还是1。

第二,3位可以存储8个值。。。嗯。。如何???

这在数学上难道不是不可能的吗?

如果我们有一个开关。。。一个开关能够:ON或OFF两个开关:

开关1:ON OFF ON OFF开关2:ON-OFF OFF ON<-四个值。

3位如何加起来8个值??

应该是对吗?

开关1:ON OFF ON OFF开关2:ON OFF OFF ON开关3:ON-OFF ON-OFF

很快会有人帮忙!

000
001
010
011
100
101
110
111

其中0=关闭1=开启

:)

一个位可以有两个值。如果有三个比特,则23=8。

一位可以存储两个值。0和1两位可以选通四个值00、01、10和11三个比特可以存储八个值000001010011、100101110和111。

这意味着所有比特的组合表示一个值,如010表示2和101表示5。相同的表达式是n比特可以表示2n值,因为在核心1比特可以表示两个值。

因为这里我们谈论的是位,所以它的定义是"0/1",即"False/True"或"OFF/ON"的表示。根据维基的说法,比特是计算和数字通信中信息的基本单位。一个比特只能具有两个值中的一个,因此可以用两态设备物理实现。这些值最常见的表示形式是0和1。

所以我们取三个比特,创建一个真值表,我们将得到以下八个组合。

[1st bit]   [2nd bit]   [3rd bit]   [Bits into decimal number]
 0              0           0               0
 0              0           1               1
 0              1           0               2
 0              1           1               3
 1              0           0               4
 1              0           1               5
 1              1           0               6
 1              1           1               7

它显示了来自3位的8种不同组合。我希望这能回答你的问题。

二进制-十进制

00000000-0
0000000 1-1
00000010-2
00000011-3
00000100-4
00000101-5
00000110-6
00000111-7

8个比特被分组在一起以形成一个字节。在上面的例子中,1表示为00000001,2表示为00000010,依此类推。希望这有帮助。

考虑一个位是1或0。如果你想知道3位的最大值,写三个1,因为1是二进制值的最大值。这是111,检查它的十进制值7。所以0到7是8位

对于8位二进制11111111,十进制为255。因此0 t0 255是256是可能的最大值

每个开关有两个值-(ON,OFF)或(1,0)

它实际上很简单SET交叉操作

{(000),(001),(010),(011),(100),(101),(110),(111)}-8值

开关1开关2开关3ON ON ON关闭关闭

每个开关值的可能组合数为2 X 2 X 2=8

这是我自己想出来的。我必须首先意识到一些事情。

  1. 因为一个比特可以保持0或1,所以该比特是0或1。

  2. 所讨论的比特数量是水平排列的。所以4位就是4个占位符。其中,每个占位符将可能的值数量增加2的倍数。

  3. 值的数量是二进制数字的不同组合的数量,以及所讨论的比特数量。

4位示例:

没有1的组合:0000

组合一个:0001001001001000

与两个一的组合:0011011011110010100101

三个一的组合:011101111101101

四个一的组合:1111

有16种不同的组合,因此4位可以存储16种不同可能的值。这就是为什么2^n,其中n是比特数量,n=4是16。

1位:2值

2位:4值

3位:8值

4位:16个值

带3个开关:如果开关==off==>binair==0如果开关==打开===>二进制==1

[看图片][1]

https://i.stack.imgur.com/bSfha.jpg

相关内容

  • 没有找到相关文章

最新更新