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

用算术右移实现逻辑右移及用逻辑右移实现算术右移

函数srl()用算术右移实现逻辑右移,函数sra()用逻辑右移实现算术右移。

程序代码

int sra(int x,int k);
unsigned int srl(unsigned int x, int k);void main()
{int rx1,k,x1;unsigned int rx2,x2;k=3;x1=0x8777;x2=0x8777;rx1=sra(x1, k);rx2=srl(x2, k);while(1);
}
int sra(int x,int k)
{int xsrl;int y=-1;int length=8*sizeof(int);xsrl=(unsigned int) x>>k;if(x<0){y<<=(length-k);xsrl=xsrl|y;}return xsrl;
}
unsigned int srl(unsigned int x, int k)
{unsigned int xsra=(int) x>>k;int i=1;int length=8*sizeof(int);if(x>(i<<15))xsra &=(i<<(length-k))-1;return xsra;
}

运行结果

rx1=0xf0ee, rx2=0x10ee。

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

相关文章:

  • 3.4/Q2,Charls最新文章解读
  • Day 24 训练
  • 2009-2025计算机408统考真题及解析
  • Java——创建多线程的四种方式
  • (二十一)Java集合框架源码深度解析
  • 渗透测试核心技术:信息收集与扫描
  • Java开发经验——阿里巴巴编码规范实践解析3
  • 报告精读:华为2024年知行合一通信行业数据治理实践指南报告【附全文阅读】
  • 职场方法论总结(4)-如何正确地汇报
  • Python Logging 模块完全指南
  • MyBatis(二)
  • 存储系统中的Mezzanine卡、Daughter卡与PCIe卡:功能与差异
  • Java中关于方法的调用和递归
  • Python_day29类的装饰器知识点回顾
  • frp内网穿透
  • DAY 4 缺失值的处理
  • yolov5和yolov8 配置torch离线文件GPU版本分享下载
  • 归一化函数 & 激活函数
  • 大模型deepseek如何助力数据安全管理
  • JavaScript原型链
  • 谢赛宁团队提出 BLIP3-o:融合自回归与扩散模型的统一多模态架构,开创CLIP特征驱动的图像理解与生成新范式
  • MLLM常见概念通俗解析(四)
  • 机器学习(11)——xgboost
  • C# 深入理解类(成员常量)
  • Spring Cloud Sentinel 快速入门与生产实践指南
  • 【U-boot 命令使用】
  • 【c库主要功能】
  • 智能工具管理系统|DW-S308系统组成
  • day 29
  • 【数据结构】2-2-2 顺序表的插入删除查找