CMPP协议里的Msg_Id字段如何生成

爱编程_无需等待 2017-02-26 03:38:21
CMPP3.0协议里面CMPP¬_SUBMIT_RESP包里包含一个Msg_Id字段,协议规定的生成算法如下:
(1) 时间(格式为MMDDHHMMSS,即月日时分秒):bit64~bit39,其中
bit64~bit61:月份的二进制表示;
bit60~bit56:日的二进制表示;
bit55~bit51:小时的二进制表示;
bit50~bit45:分的二进制表示;
bit44~bit39:秒的二进制表示;
(2) 短信网关代码:bit38~bit17,把短信网关的代码转换为整数填写到该字段中。
(3) 序列号:bit16~bit1,顺序增加,步长为1,循环使用。
这样描述的非常不清楚,前面日期用二进制表示可是后面短信网关代码用什么进制呢?还有将二进数一位一位的拼成这样64位长的整数该怎么拼成呢,有没有哪位好心人能给我一个用C或C++实现的生成算法好学习学习,谢谢大家了
...全文
378 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
hudou_k 2017-02-26
  • 打赏
  • 举报
回复
cmpp3这个协议在百度里面搜索一下,有很多java版的实现,照着抄吧。
  • 打赏
  • 举报
回复
引用 楼主 u012496128 的回复:
还有将二进数一位一位的拼成这样64位长的整数该怎么拼成呢
那个不叫“一位一位地拼成”,那是数值的 & 运算。例如 a & b 就是将“拼在一起”的意思。你应该在所有编程语言之前,学过计算机原理,知道数值 &、<<、>>操作吧?

111,112

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧