0
0
0

【中软设】2.2 计算机组成与体系结构-码值

![image.png](https://blogs.evocosmos.com/upload/blogs_20260910004-jianshu-complement-code-true-value-range.jpg) ![image.png](https://blogs.evocosmos.com/upload/blogs_20260910004-jianshu-complement-code-true-value-range-2.jpg) ### 题目:2X的补码为90H,求X的真值 ![image.png](https://blogs.evocosmos.com/upload/blogs_20260910004-jianshu-complement-code-true-value-range-3.jpg) ### 1. 补码二进制展开 90H 转换为8位二进制补码: 90H = 1001 0000 B 最高位为1,代表负数。 ### 2. 补码转原码(负数规则) 符号位保持不变,仅对数值位取反再加1: ``` 补码:1 0010000 数值位-1:10001111 最终原码:1111 0000 ``` ### 3. 计算2X真值 原码11110000,符号位为负,数值部分1110000 = 112 2X = -112 ### 4. 计算X X = -112 ÷ 2 = -56 答案:B ![image.png](https://blogs.evocosmos.com/upload/blogs_20260910004-jianshu-complement-code-true-value-range-4.jpg) ## 二、各码制取值范围与数码个数 ![image.png](https://blogs.evocosmos.com/upload/blogs_20260910004-jianshu-complement-code-true-value-range-5.jpg) ### 1. 原码 **取值范围**:$-(2^{n-1}-1) \sim +(2^{n-1}-1)$ **数码个数**:$2^{n}-1$ **原因**:存在正零、负零两组编码表示数值0,编码重复,因此少1个有效数码。 ### 2. 反码 **取值范围**:$-(2^{n-1}-1) \sim +(2^{n-1}-1)$ **数码个数**:$2^{n}-1$ **原因**:与原码一致,存在零的二义性,编码重复。 ### 3. 补码 **取值范围**:$-2^{n-1} \sim +(2^{n-1}-1)$ **数码个数**:$2^{n}$ **核心特点(原图重点)**:补码是唯一可以表示 **$-2^{n-1}$** 的码制,无零二义性,所有编码唯一有效,数码全覆盖。 ### 4. 移码 **取值范围**:$-2^{n-1} \sim +(2^{n-1}-1)$ **数码个数**:$2^{n}$ ##题目 采用n位补码(包含一个符号位)表示数据,可以直接表示数值() A、$2^n$    B、$-2^n$    C、$2^{n-1}$    D、$-2^{n-1}$ ![image.png](https://blogs.evocosmos.com/upload/blogs_20260910004-jianshu-complement-code-true-value-range-6.jpg) 1. 根据补码取值范围:$-2^{n-1} \sim +(2^{n-1}-1)$ 2. 除了D其他的值都不在这个范围内,所以只有 $-2^{n-1}$,可表示补码数值 答案:D

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或者给予支持!

评论