进制转换工具
用法:输入任意进制数值(十进制直接输、十六进制加 0x、二进制加 0b、八进制加 0o),自动转换为所有进制。支持有符号/无符号、ASCII 互转、状态字位解析。
全部在浏览器本地计算,不上传、不联网、不记录。
1 数值进制互转
输入数值后实时出所有进制结果
2 ASCII ↔ HEX 互转
在上方任一框输入后显示转换结果
工控常用进制对照表
| 十进制 | 十六进制 | 二进制(16位) | 八进制 | ASCII |
|---|---|---|---|---|
| 0 | 0x0000 | 0000 0000 0000 0000 | 0o0 | NUL |
| 65 | 0x0041 | 0000 0000 0100 0001 | 0o101 | A |
| 255 | 0x00FF | 0000 0000 1111 1111 | 0o377 | ÿ |
| 1024 | 0x0400 | 0000 0100 0000 0000 | 0o2000 | — |
| 1234 | 0x04D2 | 0000 0100 1101 0010 | 0o2322 | — |
| 32767 | 0x7FFF | 0111 1111 1111 1111 | 0o77777 | — |
| 65535 | 0xFFFF | 1111 1111 1111 1111 | 0o177777 | — |
常见问题
工控调试中进制转换最常用的场景是什么?
最常见的是 PLC 寄存器值的进制转换:监控软件里看到的是十进制(如 1234),但协议报文里是十六进制(0x04D2),做位操作时又需要看二进制(0b0000010011010010)。还有 Modbus 地址换算、状态字位解析、ASCII 报文解析等场景都需要频繁在不同进制间切换。
有符号数和无符号数怎么区分?
同样一个 16 位值 0xFFFF,作为无符号数是 65535,作为有符号数(补码)是 -1。判断方法看最高位:16 位时最高位(bit15)为 1 表示负数,为 0 表示正数。负数的绝对值 = 0x10000 - 原值。PLC 中 INT(16位有符号)、DINT(32位有符号)、UINT(16位无符号)要区分清楚。
状态字(Status Word)怎么看每一位的含义?
状态字通常是 16 位,每一位代表一个布尔状态(如 bit0=就绪、bit1=故障、bit3=运行中)。用本工具输入状态字的十进制或十六进制值,切换到二进制视图,就能逐位查看。例如状态字 0x0401 = 0b0000010000000001,bit0 和 bit10 为 1,其余为 0。
ASCII 和十六进制怎么互相转换?
ASCII 字符的十六进制就是它的 ASCII 码值。例如字符 "A" 的 ASCII 码是 65(十进制)= 0x41(十六进制)。一串 ASCII 文本 "ABC" 转十六进制就是 41 42 43。反过来,十六进制 48 65 6C 6C 6F 转 ASCII 就是 "Hello"。工控中串口报文、HTTP 报文经常需要这种转换。