日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Computing--状态机

發布時間:2025/5/22 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Computing--状态机 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Computing--狀態機和圖靈機

  • Computing--狀態機
    • 狀態機(State Machine)
      • 實例1
      • 實例2
      • 實例3

Computing–狀態機

第一次寫博客,不足之處請見諒,分享一下自己之前學信息基礎的時候做過的講義,主要是介紹Computing這塊的State Machine。大家有什么好的建議可以在評論區給我留言一下,謝謝。

狀態機(State Machine)

State Machine 由三部分組成:Inputs,Outputs,StateTransitions。
State Machine 根據當前狀態和輸入決定輸出和下一次的狀態。所以狀態機就可以看做是具有計算能力的一種工具。

實例1


輸入為0 時表示Stay(狀態不變),輸入為1 時表示Change(狀態改變)。“/0 或/1”表示狀態機的輸出.
根據狀態轉換圖得到狀態轉換表

Inputs0100110001
Outputs0111011110
Statesaabbbabbbb

從狀態轉換表可以看出這個狀態機的功能就是: 當輸入奇數個1 時輸出為1,當輸入偶數個1 時輸出為0。更進一步說這個狀態機實現XOR。

那么如何Relay Circuits去實現這個狀態機呢?
紅色的線代表 1 ,藍色的線代表 0。所以當Inputs 為奇數個1 時電路連通,而Inputs為偶數個1 時電路不連通。
實際上這種思維方式就很類似于數電當中的時序邏輯電路的分析。因此當我們拿到狀態機的狀態轉換圖或者狀態轉換表的時候,我們需要找到輸入-輸出關系(Inputs-Outputs Relationship),從而分析出狀態機的計算功能。同樣當我們需要設計實現布爾函數的時候,也可以先畫出狀態轉換圖或狀態轉換表從而去設計一個狀態機。

實例2

根據狀態機的狀態轉換圖,判斷輸入序列(11100000100和100000101001100)后是否能輸出1?

實際上要想這個狀態機輸入序列后輸出1,從狀態轉換圖來看只有一條途徑能夠輸出1,那就是序列中必須存在能使狀態機從D狀態返回到C狀態的小段子序列。那這個小段子序列就是“0101”。因此可見序列11100000100不可以使狀態機輸出1,而序列100000101001100則可以。

實例3

實例1的升級變式。當初始狀態在a時,輸入什么可以達到其他的狀態?

1:如果輸入為偶數個1時,則會到達狀態a或者c
2:如果輸入為偶數個0時,則會到達狀態a或者b
3:如果輸入為奇數個1時,則會到達狀態b或者d
4:如果輸入為奇數個0時,則會到達狀態c或者d

因此從狀態a要到達b,則輸入必須為偶數個0和奇數個1. 同理,從狀態a要到達c,則輸入必須為偶數個1和奇數個0;從狀態a到達d,則輸入必須為奇數個1和奇數個0.

好啦,就寫到這里了,希望對大家理解狀態機有所幫助。

總結

以上是生活随笔為你收集整理的Computing--状态机的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。