Compare commits

..

2 Commits

Author SHA1 Message Date
LL
cd1fb70ddf docs(表格): 修正公式注释中的错别字 2025-11-27 17:33:46 +08:00
LL
da3fdef6e7 docs: 删除进制转换笔记文档
该文档内容已整合到其他文档中,不再需要单独维护
2025-11-27 17:32:13 +08:00
2 changed files with 1 additions and 156 deletions

View File

@@ -1,3 +1,3 @@
A1:D100
公式B2:="0x"&TEXT(DEC2HEX(VALUE(MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789")),10^9))),"0000")
B2公式:="0x"&TEXT(DEC2HEX(VALUE(MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789")),10^9))),"0000")
B2:0x0064

View File

@@ -1,155 +0,0 @@
# 进制转换笔记
## 1. 不同进制表示法
- **十进制(Decimal)**: 普通数字,如 `100`
- **二进制(Binary)**: 前缀 `0b`,如 `0b1100100`
- **八进制(Octal)**: 前缀 `0o``0`,如 `0o144`
- **十六进制(Hexadecimal)**: 前缀 `0x`,如 `0x64`
## 2. 十进制转其他进制
### 2.1 十进制转二进制
方法:**除2取余逆序排列**
示例:十进制 100 转二进制
```
100 ÷ 2 = 50 余 0
50 ÷ 2 = 25 余 0
25 ÷ 2 = 12 余 1
12 ÷ 2 = 6 余 0
6 ÷ 2 = 3 余 0
3 ÷ 2 = 1 余 1
1 ÷ 2 = 0 余 1
```
结果:**0b1100100**
### 2.2 十进制转八进制
方法:**除8取余逆序排列**
示例:十进制 100 转八进制
```
100 ÷ 8 = 12 余 4
12 ÷ 8 = 1 余 4
1 ÷ 8 = 0 余 1
```
结果:**0o144**
### 2.3 十进制转十六进制
方法:**除16取余逆序排列**
示例:十进制 100 转十六进制
```
100 ÷ 16 = 6 余 4
6 ÷ 16 = 0 余 6
```
结果:**0x64**
根据公式转换后变为0x0064
## 3. 其他进制转十进制
### 3.1 二进制转十进制
方法:**按权展开相加**
示例:二进制 0b1100100 转十进制
```
1×2^6 + 1×2^5 + 0×2^4 + 0×2^3 + 1×2^2 + 0×2^1 + 0×2^0
= 64 + 32 + 0 + 0 + 4 + 0 + 0
= 100
```
### 3.2 八进制转十进制
方法:**按权展开相加**
示例:八进制 0o144 转十进制
```
1×8^2 + 4×8^1 + 4×8^0
= 64 + 32 + 4
= 100
```
### 3.3 十六进制转十进制
方法:**按权展开相加**
示例:十六进制 0x64 转十进制
```
6×16^1 + 4×16^0
= 96 + 4
= 100
```
## 4. 二进制与十六进制互转
### 4.1 二进制转十六进制
方法:**四位一组,从右到左**
示例:二进制 0b1100100 转十六进制
```
0110 0100
6 4
```
结果:**0x64**
### 4.2 十六进制转二进制
方法:**一位变四位**
示例:十六进制 0x64 转二进制
```
6 → 0110
4 → 0100
```
结果:**0b01100100** (即 0b1100100)
## 5. 计算机中常用的进制表示
### 5.1 字节表示
- 1字节(Byte) = 8位(bit)
- 十六进制通常用两个字符表示一个字节 (如 0x00 到 0xFF)
### 5.2 有符号和无符号
- 无符号:所有位都表示数值大小
- 有符号:最高位表示符号 (0表示正1表示负)
## 6. 进制转换工具
### 6.1 编程实现
- PHP: `dechex()`, `hexdec()`, `decbin()`, `bindec()`, `decoct()`, `octdec()`
- JavaScript: `Number.toString()`, `parseInt()`
- Python: `bin()`, `oct()`, `hex()`, `int()`
### 6.2 实际应用场景
- 网络编程: IP地址通常用十进制点分表示但内部处理用二进制
- 计算机图形: 颜色值通常用十六进制表示 (如 #FF0000 表示红色)
- 底层编程: 寄存器、内存地址等通常用十六进制表示
## 7. 注意事项
- 不同编程语言对进制字面量的表示可能略有不同
- 处理大数值时要注意溢出问题
- 进行位运算时,确保理解二进制补码表示