4 已知[x/2]补=C6H,计算机的机器字长为8位二进制编码,则[X]补为()(5.0分) A、8CHB、18Hc. E3HD、F1H
时间: 2024-02-16 16:01:27 浏览: 62
根据题意,我们需要先将C6H转换为二进制补码,然后再计算[X]的补码。
C6H的二进制补码为:11000110。
由于机器字长为8位,因此我们需要将补码缩短至8位。由于最高位为1,表示负数,因此我们需要将其转换为原码,即求其补码的补码。补码的补码等于原码,因此可以直接将11000110取反加1得到补码的补码为00111010。
将补码的补码转换为原码,即取反加1,得到[X]的补码为1100011,转换为十六进制为18H。
因此,答案为B、18H。
相关问题
[X]补=80H,设机器字长为8位,写出X的真值,用十进制表示。
补码的计算方式是先将原码转换为补码,再将补码的每一位取反后加1。
因为补=80H,所以补码为10000000B。将补码的每一位取反后加1,得到的结果为01111111B。
因为机器字长为8位,所以最高位为符号位。因为补码的最高位为1,所以X为负数。所以X的真值为-127。
将-127转换为十六进制,得到的结果为81H。
[X]反=4FH,设机器字长为8位,写出X的真值,用十进制表示。
首先将X转换为二进制,将其取反(每一位取反,0变为1,1变为0),得到:01001111
然后将这个二进制数转换为十进制,即
01001111 = 0*2^7 + 1*2^6 + 0*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 1*2^1 + 1*2^0 = 79
因此,X的真值为79,用十进制表示。