当前位置: 首页 > news >正文

C++ short类型的输入如何转换十进制

在上位机和下位置传输时候,会出现类型不对应,要自己搞明白获取啥

标志位:                   aa bb cc dd

次数:                      3a 00 00 00 –> 0x00 00 00 3a = 58   –>(58-10)/8 = 6(次)           

公式:(value -10 )/8

单孔标志位:           ee   舍弃

序号:01        

高度:              00 06   –> 0x0006

宽度:              00 00   –> 0x0000

面积:              00 00   –> 0x0000

例子: 0xFFE8 

1:取高字节并左移 8 位: 0xFF –>xFF00

2:取低字节:0xE8  –> xE8

3:进行 |(按位或)运算:0xFF00 | 0x00E8 = 0xFFE8

4:short 是 16 位有符号整数,最高位(第 15 位)为符号位

        0xFFE8 –>0b 1111 1111 1110 1000

5:计算 0xFFE8 的十进制值:

采用补码表示,计算它的原码:

取反(逐位取反):0000 0000 0001 0111

加 1:0000 0000 0001 1000(即 0x18,十进制 24)

负号保留,所以 0xFFE8 的十进制值是 -24。

计算公式: 0xFFE8 -> 0x18 ->-24 由于代码中添加了 < 0的值,为0 ,所以最终得到0

相关文章:

  • Kafka简要介绍与快速入门示例
  • java对接oracle存储过程基本知识(附Demo)
  • 设计模式 行为型设计模式
  • 记录关于Unitask的一些基础使用
  • Time spent invoking a CUDA kernel
  • 【Linux】系统文件的权限管理
  • open3d教程 (二)点云的读写
  • 常用天然地震链接
  • 【JAVA】十、基础知识“类和对象”干货分享~(一)
  • 香港理工视觉语言模型赋能智能制造最新综述!基于视觉语言模型的人机协作在智能制造中的应用
  • secure keyboard entry is enabled because another app has turned it on.
  • 阿里通义千问发布全模态开源大模型Qwen2.5-Omni-7B
  • 鸿蒙阔折叠Pura X外屏开发适配
  • MySQL的备份及还原
  • C++多线程的性能优化
  • 怎样配置windows云主机不关闭显示器
  • 小程序中跨页面组件共享数据的实现方法与对比
  • platform总线驱动简单示例
  • 探索新一代大模型代理(LLM agent)及其架构
  • AI Agent创新10大前沿方向与落地实践分析
  • 给个人信息穿上“防弹衣”,国家网络身份认证申领攻略来了
  • 陕西籍青年作家卜文哲爬山时发生意外离世,终年28岁
  • 新四军老战士、苏州市文联原副主席张景坤逝世
  • 台陆委会将欧阳娜娜等20多名艺人列入重要查核对象,国台办回应
  • 长三角议事厅·周报|新能源汽车产业需寻求“第二增长曲线”
  • 浙江推动人工智能终端消费:家居机器人纳入以旧换新补贴范围