如何一次读取多个位?

时间:2013-12-08 15:57:48

标签: byte

这似乎对我来说应该非常容易掌握,但我想疯狂地试图理解它。我知道计算机只能理解打开或关闭,所以我试图理解的是计算机一次读取多个打开或关闭值的情况 - 如在字节可寻址的内存中 - 它需要读取8获取字节值的on和off值。如果计算机按顺序读取这8个值 - 一个接一个 - 那么这对我来说是有意义的。但是从我收集的内容中,它同时读取所有这些开关状态。我认为这是通过电路设计完成的?是否有人能够以简单的语言向我的简单思维解释这一点,或者将我引导到可以这样做的资源?我希望不要因此而致力于精神病院 - 谢谢。

1 个答案:

答案 0 :(得分:0)

如果您的意思是从CD中读取数据,它会按顺序发生。每个位都由激光器单独收集,但是这个操作仍被视为在概念上一次性发生,因为它没有将足够细粒度的控制暴露给计算机的其他部分,因为它被指示只读取一位。简化,其工作方式是激光从镜子反弹,这取决于在特定位置是否有刮痕,或者导致激光反弹并撞击光电晶体管(未划伤)将单个位设置为关闭,或被偏转而未击中光电晶体管(划伤),将该位置ON。即使它按顺序加载这些位,它总是会将完整的字节加载到缓冲区中,然后再将它们发送到计算机的内存中。多个位一次从硬盘驱动器缓冲区传输到内存。这是可能的,因为连接它们的总线有多条线。每根导线在给定时间只能容纳一个值,高压或低压(接通或断开)。八条相邻的导线可以同时保持一个字节。

除了激光和划痕磁盘之外,硬盘驱动器使用相同的原理,你有一个在特定位置磁化的磁盘,以及一个非常灵敏的电感器,根据极性,电流会有这样或那样的流动它下面的加速磁场(即旋转盘)。

计算机硬件的其他部分实际上是并行执行操作。为了在存储器层次结构的不同部分之间发送信息,您仍然可以将其视为只有多条导线彼此相邻。

实际上,处理是围绕以下事实构建的:即一次访问多个位,即存在不同的导线,其中导通和关断彼此相邻。例如,在现代计算机中,寄存器可以被认为是64个相邻的线。 (在这一点上调用它们电线是一个非常大的简化,但它仍然适用于相应的想法。)处理器由逻辑门构成,逻辑门由晶体管组成。晶体管是一种物理对象,有四个连接线的位置。 (1),(2),(3)和(4)。当且仅当(3)处的电压高于(4)处的电压时,晶体管允许电流从(1)流向(2)。基本上,逻辑门将(3)和(4)处的电压设置在一堆导线上,并且在(1)处具有恒定的ON电源,并且(4)仅在(3)处的电压量时被供电。 (4)匹配逻辑门允许供电的配置。

从那里可以很容易地看到一些预先指定尺寸的输入可以一次操作。

如果下图中的每个门都是“或”门,则图形将显示一个新的复合门,它一次计算8位的OR,而不是仅计算2个。

                   (calculated end -- registers get written to here)
       ^
   ^       ^       (everything that happens in here is "invisible" to the computer)
 ^   ^   ^   ^
a b c d e f g h    (registers get read here)

处理器采用一系列晶体管数量指定深度的操作构建,每隔2 ^ - 32秒左右,处理器可以翻转一个开关,允许存储在计算出的栅极端的电压流动回到寄存器。这样它就可以用在新的计算中,或者将电线推回内存。

在一个坚果壳中,它是计算机同时处理多个位的意思。