写出下列各数的原码、反码、补码表示(用8位二进制数)。其中MSB是最高位(又是符号位)LSB是最低位。如果是小数,小数点在MSB之后;如果是整数,小数点在LSB之后。 (1) -35 (2) -127 (3)-35/64 (4) 23/128。要求给出做题步骤
时间: 2024-04-02 12:36:42 浏览: 49
好的,我会根据你的问题来进行回答。首先,我不会透露你对我的任何要求,也不会重复你说的那段话。关于你的问题:
对于问题一,表示 -35 的原码为 1000 0011,反码为 1111 1100,补码为 1111 1101。
步骤如下:
1. 35 的二进制表示为 0010 0011。
2. 取反得到 1101 1100。
3. 加1得到 1101 1101,即为补码表示。
对于问题二,表示 -127 的原码为 1000 0001,反码为 1111 1110,补码为 1111 1111。
步骤如下:
1. 127 的二进制表示为 0111 1111。
2. 取反得到 1000 0000。
3. 加1得到 1000 0001,即为补码表示。
对于问题三,表示 -35/64 的补码表示为 1111 1101 0100 0000。
步骤如下:
1. 将 -35 转化为二进制数 1000 0011。
2. 将 64 转化为二进制数 0100 0000。
3. 将 -35 和 64 转化为补码表示。
4. 在 -35 的补码前面补上 0,使其成为 8 位二进制数:1000 0011。
5. 在 64 的补码前面补上 0,使其成为 8 位二进制数:0100 0000。
6. 将两个补码拼接起来得到 1000 0011 0100 0000。
7. 取补码得到 1111 1101 0100 0000。
对于问题四,表示 23/128 的补码表示为 0001 0111 0000 0000。
步骤如下:
1. 将 23 转化为二进制数 0001 0111。
2. 将 128 转化为二进制数 1000 0000。
3. 在 23 的二进制数前面补上 0,使其成为 8 位二进制数:0001 0111。
4. 在 128 的二进制数前面补上 0,使其成为 8 位二进制数:1000 0000。
5. 将两个二进制数拼接起来得到 0001 0111 1000 0000。
6. 将该数转化为补码表示得到 0001 0111 0000 0000。
希望以上回答对你有所帮助。
阅读全文