项目名称     长度 类型 说明
起始标识      1 Hex 通讯数据的开始标识(常量0xF0)
包生成时间    7 Bcd 时间戳,格式:YYYYMMDDHHMMSS
序号      2 Hex 序列号码(从0开始计数,当时间戳相同时,自动加1)问题:hex 长度为2 如何表示序号
如果这两个数据存储在b[0],b[1]中是什么格式!

解决方案 »

  1.   

    上边是一个数据包的协议格式
    序号用一个hex存储我可以理解
    用2两hex怎么存储?
      

  2.   

    大概明白樓主的意思。我想這很簡單,兩個Hex表示可以存到FF FF = 65535個序號。大約是這樣
    [code=C#
    int i = 5;b[0] = (0xFF & (i >> 8)); //因為5位移了8個bit所以為b[0] = 0x00
    b[1] = (0xFF & i); //b[1] = 0x05i = 10000;  //i = 0x2710
    b[0] = (0xFF & (i >> 8)); //因為5位移了8個bit所以為b[0] = 0x27
    b[1] = (0xFF & i); //b[1] = 0x10
    [/code]這樣樓主明白怎處理您的問題了嗎?
      

  3.   

    大概明白樓主的意思。 我想這很簡單,兩個Hex表示可以存到FF FF = 65535個序號。 大約是這樣 int i = 5; b[0] = (0xFF & (i >> 8));    //因為5位移了8個bit所以為b[0] = 0x00 
    b[1] = (0xFF & i);           //b[1] = 0x05 i = 10000;  //i = 0x2710 
    b[0] = (0xFF & (i >> 8));    //因為5位移了8個bit所以為b[0] = 0x27 
    b[1] = (0xFF & i);           //b[1] = 0x10 
     這樣樓主明白怎處理您的問題了嗎?
      

  4.   

    抱歉註解寫錯,重弄一次。
    int i = 5; b[0] = (0xFF & (i >> 8));    //因為i位移了8個bit所以為b[0] = 0x00 
    b[1] = (0xFF & i);           //b[1] = 0x05 i = 10000;  //i = 0x2710 
    b[0] = (0xFF & (i >> 8));    //因為i位移了8個bit所以為b[0] = 0x27 
    b[1] = (0xFF & i);           //b[1] = 0x10