• 注册
  • 信息技术 信息技术 关注:458 内容:10

    触发器的原理和应用

  • 查看作者
  • 打赏作者
  • 当前位置: 博科园 > IT计算机科学 > 信息技术 > 正文
    • 11
    • Lv.19分子
      麦克斯韦
    • 博科园AI人工智能助手 图灵
      [ AI在线 ]
      __
    • 作者:浮槎 

      审核:时 


             要提到计算机的工作原理,就不得不提到一种电子装置:触发器。触发器主要由两个电子管组成,当电流通过触发器时会通过其中一个电子管。触发器一共有四个接触点,其中两个用来接收外部脉冲,另外两个用来输出回答脉冲。外部脉冲输入的瞬间,触发器就会“翻转”,使原本导通的电子管变成闭合状态,电流转而进入另一个电子管。当一边电子管闭合、另一边电子管导通的瞬间,触发器就会输出回答脉冲。

       

           现在我们给触发器连续不断地输入脉冲,并根据图1中两根电子管其中的一根——右侧的电子管的状态来确定触发器的状态:当右侧电子管闭合时,设定触发器是「0 状态」;当右侧电子管导通时,设定触发器是「1 状态」。 

             如果触发器的初始状态为「0 状态」,即右侧电子管为闭合状态时(如图 1所示),那么输入第一个脉冲后,右侧电子管导通,触发器翻转成「1 状态」。此时,触发器不会输出回答脉冲,因为左侧电子管并未导通。接下来,当我们输入第二个脉冲时,左侧电子管导通,右侧电子管闭合,触发器翻转为「0 状态」,输出回答脉冲。 

             通过观察可以发现,经过两次输入脉冲之后触发器回到了原始状态。接着继续输入第三个脉冲,触发器变成了「1 状态」,再输入第四个脉冲,触发器又变成「0 状态」……也就是说,触发器的状态是以2个脉冲为周期进行循环的。

      触发器的原理和应用

      图1

             如果将多个触发器相互连接会发生什么事呢?以三个触发器:触发器1、触发器2、触发器3相连为例(如图 2 ),给触发器1输入脉冲信号,之后触发器1的回答脉冲会作为触发器2的输入脉冲,触发器2的回答脉冲之后又会作为触发器3的输入脉冲,最后触发器3产生回答脉冲。

       

      触发器的原理和应用

      图2

       

            假设一共有 5 个触发器相互连接,最初的状态都为「0 状态」,我们可以把这个触发器组的状态标记为「00000」。给最右边的触发器输入第一个脉冲后,该触发器的状态变为「1 状态」,但由于没有回答脉冲,左侧的 4 个触发器依旧是「0 状态」,整体可以标记为「00001」。接着,我们输入第二个脉冲,最右边的触发器翻转为「0 状态」,同时最右边的触发器输出的回答脉冲输入相邻的触发器中,相邻的触发器翻转,成为「1 状态」,其他触发器由于没有接收到回答脉冲,仍旧处于「0 状态」,整体可标记为「00010」。紧接着输入第三个脉冲,最右边的触发器又会翻转为「1 状态」同时不输出回答脉冲,其他触发器状态不变,状态为「00011」。如此循环,我们最终得到如下据: 

      输入第 1 个脉冲后的状态为:00001 

      输入第 2 个脉冲后的状态为:00010 

      输入第 3 个脉冲后的状态为:00011 

      输入第 4 个脉冲后的状态为:00100 

      输入第 5 个脉冲后的状态为:00101 

      输入第 6 个脉冲后的状态为:00110 

      …… 

             如果把上述状态视为二进制的数字,转换为十进制之后我们就能依次得到1,2,3,4,5,6,…。由此可见,相互连接的触发器可以对外部脉冲信号进行「计数」,而且是一种特殊的计数方式。 

             二进制通过「0」和「1」来表示所有数字。与十进制有所不同的是,二进制的后一位是前一位的 2 倍,而不是 10 倍。二进制数转化成十进制数时,将每位数分别乘以2 的 n 次方( n 代表位数)并求和即可。例如,将二进制数「10011」转化为十进制,就是 1 × 2^0 + 1 × 2^1 + 0 × 2^2 + 0 × 2^3 + 1 × 2^4 = 19。 

             触发器每翻转一次(也就是每输入一个脉冲信号),只需要一亿分之几秒的时间。现代计数触发器可以在 1 秒之内「计算」1000 多万个脉冲,而人眼需要 0.1 秒左右才能识别变换的信号。可以说,跟人类相比,它快了将近 100 万倍。 

             下面,我们来看看触发器如何进行加法运算。把三排触发器按照图 3 所示连接起来,其中第一排触发器用来表示被加数,第二排触发器用来表示加数,第三排触发器则用来表示二者之和。当上面两排触发器的状态为「1」时,会分别向第三排触发器输出脉冲信号。

      触发器的原理和应用

      图3

             图3的例子中,前两排触发器记下的两个二进制数是 101 和 111。第三排的第一触发器从前两排的第一触发器处别得到一个脉冲信号(一共得到两个脉冲信号),根据前面的分析,第三排的第一触发器依旧处于「0 状态」,同时会给第三排的第二触发器输出一个回答脉冲。除了这个回答脉冲之外,第三排的第二触发器还会从第二排的第二触发器得到一个回答脉冲,一共得到两个脉冲信号,处于「0 状态」,并输出一个回答脉冲给第三排的第三触发器。除了这个回答脉冲之外,第三排的第三触发器还从第一排和第二排各得到一个脉冲,共得到 3 个脉冲,状态为「1」,同时输出一个回答脉冲。第三排的第四触发器只得到这一个回答脉冲,状态为「1」。以上过程就是二进制数的加法运算,如果写成竖式运算,就如图4所示:

      触发器的原理和应用

      图4

             将图4中的二进制数换算为十进制数,就会得到 5 + 7 = 12。第三排触发器输出的回答脉冲相当于竖式加法运算的进位。如果每排的触发器有 20 个(或者大于 20 个),就可以计算百万级甚至千万级数的加法。如果把上述方案改造一下,不但可以进行加减法运算,还可以进行乘法运算和除法运算。 

      参考文献;趣味代数学

    • 生成海报
    • Lv.8仄米空洞
      靓号:1956
      9周年🎂
      科学技术发展到今天,已是综合的、大规模的、集体的事业——王方定
      回复
      Lv.19分子
      博科园VIP4
      法拉第
      打赏了3金币
      回复
      Lv.35火星
      博科园VIP6
      9周年🎂
      可算是更新了 [s-3]
      回复
      Lv.35火星
      博科园VIP6
      9周年🎂
      打赏了3金币
      回复
      Lv.35火星
      博科园VIP6
      9周年🎂
      赠送了礼物[棒棒糖]
      回复
      Lv.44猫眼星云
      飞越太阳系
      触发器的电子管
      回复
      Lv.44猫眼星云
      飞越太阳系
      打赏了3金币
      回复
      Lv.43刺魟星云
      博科园VIP7
      冯·诺依曼
      博科园|追逐大美宇宙科学|科学、科技、科研、科普
      回复
      Lv.43刺魟星云
      博科园VIP7
      冯·诺依曼
      打赏了3金币
      回复
      Lv.28蜂鸟
      林奈
      不错 [s-70]
      回复

      请登录之后再进行评论

      登录

      赞助商

    • 相互支持,合作共赢 Win-Win Cooperation

      邀请好友加入【博科园】有奖励啦♪

    • 任务
    • 偏好设置(换皮肤)
    • ★基于全球领先的AI4.0大语言模型 知识问答 内容创作 AI绘画 代码编程 生活办公 对话聊天 样样精通 超强大的AI助手★
      博科园AI
      有疑惑?万能AI为你解答
    • 到底部
    • 帖子间隔 侧栏位置:
      关闭窗口
      下载海报