计算下列数的原码、补码、反码,(机器字长8位)急.(1)_16(2)_0.1875(3)_2FH

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/18 16:17:40
计算下列数的原码、补码、反码,(机器字长8位)急.(1)_16(2)_0.1875(3)_2FH计算下列数的原码、补码、反码,(机器字长8位)急.(1)_16(2)_0.1875(3)_2FH计算下列

计算下列数的原码、补码、反码,(机器字长8位)急.(1)_16(2)_0.1875(3)_2FH
计算下列数的原码、补码、反码,(机器字长8位)急.
(1)_16(2)_0.1875(3)_2FH

计算下列数的原码、补码、反码,(机器字长8位)急.(1)_16(2)_0.1875(3)_2FH
都是负数?
(1)
16的二进制表示:1 0000
因为总的不足7位(第一位是符号位,表示正负),整数在7位中的最高位左边(符号位的右侧)加零以补足.
因为是负数,所以符号位为1
原码:1001 0000
反码:负数的反码,符号位保持不变,数值部分按位取反.
1110 1111
补码:反码+1
1111 0000
(2)
小数原码的求法:
0.1875的整数部分是0,因为是负数,所以第一位是1.
小数部分是0.1875.
0.1875 × 2 = 0.375 < 1 ∴小数部分左起第一位是0
0.375 × 2 = 0.75 < 1 ∴小数部分左起第二位是0
0.75 × 2 = 1.5 > 1 ∴小数部分左起第三位是1
再取1.5的小数部分
0.5 × 2 = 1 ≥ 1 ∴小数部分左起第四位是1
因为总的不足7位(第一位表示正负),小数在最低位右边加零以补足.
原码:1.001 1000
反码:1.110 0111
补码:1.110 1000
(3)
2FH是16进制,转化为二进制是0010 1111(H表示十六进制)
原码:1010 1111
反码:1101 0000
补码:1101 0001