2011-10-14 131 views
0

任何人都可以使用擴展位(位0)向我提供有關在何處以及如何理解「地址字段」(在HDLC幀中)編碼爲八位字節的良好資源信息甚至延伸尋址。HDLC擴展尋址

讓我們假設我想發送地址0x1234,用擴展位編碼後最後的八位字節是什麼。希望你能理解我的問題?

感謝您的期待。

地址字段範圍可以通過保留每個地址字節的第一個傳輸位(低位)然後將其設置爲二進制零來擴展,以指示後面的八位字節是地址字段的擴展。擴展字節的格式應與第一個八位字節的格式相同。因此,地址字段可以遞歸地擴展。通過將低位設置爲二進制來指示地址字段的最後八位字節。見附圖1。 Fig1 使用擴展名時,第一個地址八位字節的第一個傳輸位中存在二進制「1」表示只使用一個地址八位字節。地址擴展的使用因此將單個八位字節地址的範圍限制爲0x7F,並且將兩個八位字節地址的範圍限制爲0 ... 0x3FFF。

下HDLC地址= 3FFF H = 0011111111111111乙

上HDLC地址= 1234 H = 0001001000110100乙

考慮在圖2中示出上面的地址和其編碼的結果,真想知道他們如何得到這個最終編碼的八位字節(圖2)Fig2。 我無法修復它。這就是爲什麼我需要更多可以幫助我理解的信息。任何人都可以提供一些簡單的解釋?謝謝。

+0

像http://www.armware.dk/RFC/rfc/rfc3572.html並從那裏到http://www.armware.dk/RFC/rfc/rfc2175.html –

+0

@nos請閱讀上面的編輯。我有點解釋我的問題進一步謝謝 –

+0

@ott請閱讀上面的編輯。我有點解釋我的問題進一步謝謝 –

回答

0

1111111b + 128 * 1111111b = 0x3FFF
0110100b + 128 * 0100100b爲0x1234

從這裏很明顯,他們拿走了這些十六進制數字中的每一個,並從中提取7個最不重要和7個最重要的si有意義的位(假設總共只有14位)並將它們放入4個八位位組中。

+0

我不明白請。請您可以使用上面編輯中所示的擴展比特編碼規則來解釋。這會幫助我更好地理解你。謝謝 –

0

我想這組不同的其中u是單播位x是LSB:簡單的步驟

u1 0010 0x 011 0100x 11 1111 1x 111 1111x 
1 2  3 4 3 F  F F 
0

答案。

  1. 分割的2個字節爲8位,各
  2. 的2個半的(上半&下半部)消除的上半部
  3. 所得是14位,它拆分成2的2個MSB一半是7位。
  4. 將擴展位添加到每個半位的LSB,因此每個位的結果爲8位。
  5. 結果給出了編碼八位組!

請注意,第1步可以避免,但我只是想幫助簡化答案。感謝所有人的貢獻,我希望這有助於某一天!