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

从无符号长整型数中提取字节

从无符号长整型数x中提取4个字节,使用左右移位及减法实现。

实现代码

typedef unsigned long packed_t;
long xbyte(packed_t lword,int bytenum);void main()
{packed_t lword=0x81729083;int bytenum;  // 字节编号0~3long s[4];    for(bytenum=0;bytenum<4;bytenum++)s[bytenum]=xbyte(lword, bytenum);  // 依次存放编号为0~3字节while(1);
}
long xbyte(packed_t lword,int bytenum)
{int k,n;packed_t m,temp;k=(bytenum<<3);     // k=bytenum*8temp=(lword>>k)<<k;   // 把lword的低k位清0n=(bytenum+1)<<3;  // n=(bytenum+1)*8m=temp-((lword>>n)<<n); m>>=(bytenum<<3);  //得到编号为bytenum的字节return m;
}

运行结果

相关文章:

  • 力扣刷题Day 56:岛屿数量(200)
  • 策略模式与责任链模式学习笔记:从入门到理解
  • 如何选择自动化编程平台
  • OpenSSL 签名验证详解:PKCS7* p7、cafile 与 RSA 验签实现
  • 【windwos】文本编辑器Notepad++ 替代品Notepad--
  • 支持向量机(SVM)例题
  • 综合实现案例 LVS keepalived mysql 等
  • 深入解析Spring Boot与Redis集成:高效缓存与性能优化实践
  • 《软件工程》第 3 章 -需求工程概论
  • vae 视频截图 复习 gans和vae的原理区别
  • 【通用智能体】Dify API 文件上传功能: 两种传参方式的API传参方式
  • 【Pandas】pandas DataFrame add_prefix
  • window 显示驱动开发-呈现开销改进
  • 系统分析师备考总结
  • Ubuntu从0到1搭建监控平台:本地部署到公网访问实战教程Cpolar穿透与Docker部署全过程
  • 加密货币犯罪的涉案金额如何计算?
  • 使用 `.inl` 文件和 `#pragma once` 解决模板函数头文件膨胀问题指南
  • 网络编程学习笔记——TCP网络编程
  • window 显示驱动开发-视频内存的直接交替(二)
  • [TriCore] 01.QEMU 虚拟化 TriCore 架构中的寄存器 指令
  • 怎么用wordpress仿站/网络营销有哪些推广方式
  • 做电影网站用什么软件叫什么名字吗/市场营销计划方案
  • wordpress subway/深圳seo优化排名推广
  • 有经验的南昌网站制作/seo推广软件代理
  • 做新浪网网站所需的条件/外链互换平台
  • 济南网站建设公司有哪些/个人seo怎么赚钱