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

按位宽提取十六进制值

 需求:给出一个十六进制值,要求提取high和low位之间的值。比如16'ha0f0,这是一个16bit宽的十六进制数0xa0f0,提取[15:12]范围内的值。

def extract_bits(value, high, low):"""从 value 中提取 [high:low] 位的值:param value: 整数,比如 0x8844:param high: 高位,比如 31:param low: 低位,比如 18:return: 提取后的整数"""print(1 << (high - low + 1))mask = (1 << (high - low + 1)) - 1result = (value >> low) & maskreturn resultdef main():# 输入部分hex_str = '0xa0f0'val = int(hex_str, 16)  # 你的输入数据bit_high = 15       # 高位bit_low = 12        # 低位# 处理extracted = extract_bits(val, bit_high, bit_low)# 输出print(f"原数值: 0x{val:08x}")print(f"提取位 [{bit_high}:{bit_low}] 后的结果:")print(f"十进制: {extracted}")print(f"十六进制: 0x{extracted:x}")print(f"二进制: {bin(extracted)}")if __name__ == "__main__":main()"""
原数值: 0x0000a0f0
提取位 [15:12] 后的结果:
十进制: 10
十六进制: 0xa
二进制: 0b1010
"""

相关文章:

  • 【动态导通电阻】p-GaN HEMTs正向和反向导通下的动态导通电阻
  • 催缴机器人如何实现停车费追缴“零遗漏”?
  • 【递归、搜索和回溯】递归、搜索和回溯介绍及递归类算法例题
  • 2025数维杯数学建模B题完整限量论文:马拉松经济的高质量发展思路探索
  • 动态创建链表(头插法、尾插法)
  • Oracle链接服务器导致SQL Server异常终止
  • 相机的方向和位置
  • 波特五力分析——AI与思维模型【99】
  • 软件工程之软件项目管理深度解析
  • The 2024 ICPC Kunming Invitational Contest G. Be Positive
  • 人工智能 机器学习期末考试题
  • 8.1.Kubernetes进阶
  • 事务失效的场景
  • 【推荐笔记工具】思源笔记 - 隐私优先的个人知识管理系统,支持 Markdown 排版、块级引用和双向链接
  • Swagger 3.0 中注解详细示例
  • 【计算机网络-传输层】传输层协议-TCP核心机制与可靠性保障
  • ai break down 带有#和t=的路由
  • 《探索React Native社交应用中WebRTC实现低延迟音视频通话的奥秘》
  • 从 Qwen-3 发布看 AI 服务器选型新方向:硬件配置与成本优化策略
  • 大数据狙击金融欺诈——技术如何守护交易安全?
  • 印度32座机场暂停民用航班运营,印称在边境多处发现无人机
  • 巴基斯坦首都及邻近城市听到巨大爆炸声
  • 央行:中国政府债务扩张仍有可持续性
  • 上海:企业招用高校毕业生可享受1500元/人一次性扩岗补助
  • OpenAI任命了一位新CEO
  • 如此城市|上海老邬:《爱情神话》就是我生活的一部分