-2
我已經嘗試了幾個小時來弄清楚如何操縱一個字節數組來做「拆包」和用C#打包。c中的字節數組操作#
盒裝數據格式
數據被打包在8字節的「數據包」,用MS位從7個 參數字節剝離,並裝入第八字節,這是在開始 發送8字節的數據包。
實施例:
Input Data 1 A7 A6 A5 A4 A3 A2 A1 A0 2 B7 B6 B5 B4 B3 B2 B1 B0 3 C7 C6 C5 C4 C3 C2 C1 C0 4 D7 D6 D5 D4 D3 D2 D1 D0 5 E7 E6 E5 E4 E3 E2 E1 E0 6 F7 F6 F5 F4 F3 F2 F1 F0 7 G7 G6 G5 G4 G3 G2 G1 G0 Packed MIDI data 1 00 G7 F7 E7 D7 C7 B7 A7 2 00 A6 A5 A4 A3 A2 A1 A0 3 00 B6 B5 B4 B3 B2 B1 B0 4 00 C6 C5 C4 C3 C2 C1 C0 5 00 D6 D5 D4 D3 D2 D1 D0 6 00 E6 E5 E4 E3 E2 E1 E0 7 00 F6 F5 F4 F3 F2 F1 F0 8 00 G6 G5 G4 G3 G2 G1 G0
每行表示一個字節,每列一個位(MSB第一)。
如何實現此轉換?
我覺得你的問題停止了一半... –
該規範和示例來自http://www.scribd.com/doc/54261730/Prophet-08-Manual-v1-3#page=60並且不似乎沒有提供比問題更多的細節。所以我想它需要一些獨創性來弄清楚如何實現這種轉換。 – dtb
我想我明白了:行表示一個字節,行中的每個位置都有一位。值中的字母實際上是解壓縮序列中字節的數量/位置(排序),其中A =第1個字節,B =第2個字節等等。字母后面的數字是字節中的實際位在指示的位置上。這是我的猜測,我不確定,因此沒有答案。 – elgonzo