1.我的理解是流水線最多200個輪胎,只在入口檢測,到對應位置打開對應輸出?首先標定各個輸出與入口的距離存入數組(假設為p1,p2,p3...),然后整個線體一圈假定N個脈沖,計數器為環形計數器最好,不是的話需要程序取余數但是可能溢出會導致取余數不準。當入口感應到輪胎則記錄當前編碼器數字假設為P,然后就得到了每個輸出輸出時的位置(P+P1)MOD N,當當前值大于等于此值時輸出打開一段時間。上述可以構造一個200*40的數組實現,然后輸出過后可以再設置個標志位,當所有標志位ON之后就可以清除這個輪胎的位置數據了。
2.可以理解成原本Y0對應Y0,Y1對應Y1,。。。程序可以先做一次映射,比如Y0--M0,Y1--M1。那么原本的映射關系可以看成是M0=Y0*1+Y1*0+....所以所要做的是構建一個單位矩陣,對角線全為1,映射關系就是矩陣的乘積,所以輸入數字改變映射關系就是改變這個矩陣,也就是每一行1的位置,這個應該就沒啥難度了吧,這樣可以實現全輸出任意映射的切換。
3.沒太看懂題目?感覺用個存儲1--8的8個寄存器隊列,移動一次先出后入一次記憶工位,產品對應關系,然后另有8個寄存器存儲報警。報警發生時,現根據隊列找到對應關系然后存入報警信息不就好了?
4.怎么提取,輸入起始位置和長度提取?要是我就直接整個字符串異或0b1000 0000,因為ASC范圍也就到0X7F,這樣把H00轉化成合法字符串用字符串指令操作好再異或回來。
5.二分法,思路很簡單只不過寫的時候細節很多。