Python Monitoring UPS with SNMPWALK
2024-09-05 15:13:21
##Background
My co-worker told me he needed to monitor UPS with SNMP module but he only can get hexadecimal digits from UPS module with SNMPWALK commands. Then I had to turn hexadecimal to decimal.
He gave me a passage about IEEE754: http://www.softelectro.ru/ieee754_en.html
C 12 F 15
B 11 E 14 C2 05 FB EE 1100 0010 0000 0101 1111 1011 1110 1110 1 = negative "-" 1
1000 01000
0101 1111 1011 1110 1110 1000 0100 = 132 - 127 = 5 so 2^5 = 32 0000 1011 1111 0111 1101 110 = 392174, so 392174/2^23 = 0.0467507 fomula = - 2^5 x (1+0.0467507) = -33.4 0101 1111 1011 1110 1110 = 392174 C205FBEE
Python Script
#!/usr/bin/env python
#-*- coding:utf-8 -*-
var = input("Please enter dec number:")
b = bin(int(var, 16))
print(b)
S = int(b[2])
#print(S)
e = b[3:11]
#print(e) E = int(e, 2)
#print(E) m = b[12:]
#print(m)
M = int(m, 2)
#print(M) F = ((-1)**S)*(2**(E-127))*(1+M/(2**23))
print(round(F, 10))
最新文章
- C#设计模式系列:状态模式(State)
- layer弹窗监控键盘事件
- HTML认识
- 2. scala中的数组
- 在ASP.NET开始执行HTTP请求的处理程序之前
- python 获取当前调用函数名等log信息
- HTML+CSS3 纯代码实现转盘效果
- 实习笔记-3:ef实体操作错误篇
- C#_会员管理系统:开发三(修改密码)
- MUI AJAX Raw请求数据
- 泛泰A900 刷4.4中国民营TWRP2.7.1.1版本 支持自己主动识别移动版本号(世界上第一)
- 推荐几个JSON工具
- 红帽 Red Hat Linux相关产品iso镜像下载【百度云】(转载)
- Android 设备兼容性(1)
- bzoj 4567: [Scoi2016]背单词
- gRPC 如何使用python表示多维数组
- 第三节:Action向View传值的四种方式(ViewData、ViewBag、TempData、Model)
- ShellSort
- python numpy 三行代码打乱训练数据
- 优化 SQL SELECT 语句性能