深入理解RISC机器与ARM架构
1. 二进制与十进制转换
1.1 二进制基础
在计算机的底层,二进制是基础。二进制数由 1 和 0 组成,这些 1 和 0 在微处理器内部代表“开”或“关”的状态,通常对应 +5V 或 0V。操作码(opcode)和操作数(operand)由八个二进制位组合而成,这八个位合称为一个字节(byte)。字节中的位编号从右到左递增,这与十进制数中数字的权重概念类似。例如,十进制数 2934 中,2 代表两千,权重最高在左边,4 代表四个一,权重最低在右边。
1.2 二进制位的权重
在二进制表示中,每个位的权重是通过将基数 2 提升到该位的位置来计算的。如下表所示:
| 位编号 | 表示 | 权重 |
| ---- | ---- | ---- |
| b7 | 2^7 | 128 |
| b6 | 2^6 | 64 |
| b5 | 2^5 | 32 |
| b4 | 2^4 | 16 |
| b3 | 2^3 | 8 |
| b2 | 2^2 | 4 |
| b1 | 2^1 | 2 |
| b0 | 2^0 | 1 |
1.3 二进制转十进制
将二进制转换为十进制很简单,遵循两个规则:
1. 如果位为 1,则加上其权重。
2. 如果位为 0,则忽略其权重。
例如,将二进制数 10101010 转换为十进制:
| 位 | 权重 | 值 |
| ---- | ---- | ---- |
| 1 | 128 | 128
超级会员免费看
订阅专栏 解锁全文
2007

被折叠的 条评论
为什么被折叠?



