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

求无符号字符型数据乘积的高一半

两个无符号字符型数据x和y的乘积是unsigned int数据。程序通过unsigned_high_prod( )函数调用signed_high_prod( )实现。signed_high_prod( )函数把x和y作为带符号数,计算得到它们乘积的高一半(char)。

程序代码

typedef unsigned char u8;
u8 unsigned_high_prod(u8 x, u8 y);
char signed_high_prod(char x, char y);
unsigned int z;void main()
{static u8 x, y,huxy;x=255;y=255;huxy=unsigned_high_prod(x, y);while(1);
}
u8 unsigned_high_prod(u8 x, u8 y)
{u8 r;r=signed_high_prod(x, y);return r;
}
char signed_high_prod(char x, char y)
{char hxy,i=1;if(x<0&&y<0)z=(y+x)*(i<<8)+(i<<16)+x*y;else if(x<0&&y>0)z=y*(i<<8)+x*y;else if(x>0&&y<0)z=x*(i<<8)+x*y;else z=x*y;z>>=8;hxy=(char)z;return hxy;
}

运行结果

255\times255=0xFE01。

http://www.xdnf.cn/news/7963.html

相关文章:

  • 隧道自动化监测解决方案
  • 【攻防实战】MacOS系统上线Cobalt Strike
  • 高并发内存池|六、page cache的设计
  • 13、自动配置【源码分析】-自动包规则原理
  • Springboot2
  • Qt enabled + geometry 属性(2)
  • 微信小游戏流量主广告自动化浏览功能案例5
  • 【IP101】图像质量评价体系:从主观评价到客观度量的完整解析
  • RL电路的响应
  • Spring AI 1.0 GA 于 2025 年 5 月 20 日正式发布,都有哪些特性?
  • 防火墙高可靠性
  • AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年5月21日第84弹
  • nlohmann json:检查类型并取出数据
  • 【八股战神篇】Spring高频面试题汇总
  • 企业数字化转型是否已由信息化+自动化向智能化迈进?
  • YCKC【二分答案专题】题解
  • 关于C++使用位运算交换变量值的分析
  • Vue学习记录
  • docker面试题(5)
  • LeetCode 1004. 最大连续1的个数 III
  • PH热榜 | 2025-05-21
  • 影刀Fun叉鸟-打刀刀
  • PyTorch的基本操作
  • 5月21日星期三今日早报简报微语报早读
  • 架构的设计
  • WebGL2混合与雾
  • tshark的使用技巧(wireshark的命令行,类似tcpdump):转换格式,设置filter
  • ARM64虚拟地址到物理地址转换页表映射过程--基于crash
  • 系统工程与一般系统理论 | 技术 / 应用 / 跨领域认知融合
  • 《AI工程技术栈》:三层结构解析,AI工程如何区别于ML工程与全栈工程