问题
单项选择题
已知x=-109/128,若采用8位机器码表示,则[X]补=()。
A.10010011
B.11010101
C.11101101
D.10010010
答案
参考答案:A
解析:
[要点解析] 这一类型的题目考查的知识点是小数的原码和补码表示方法。在机内码的表示中,小数的表示方法是,数的最左面是符号位,对于原码、反码或补码,如果该小数是正数,则该符号位为0,如果该小数是负数,则该符号位为1。其余各位为该小数的数据位,从左起,第2位的权值为1/2,第3位的权值为1/4,以此类推。 解答此类题目的一般思路是,将给定的分式分解成多个分式之和的形式,每个分式的分子为1,分母为2的幂次,这样可以确定其使用原码表示。而使用补码表示一个小数时,只要将该数除符号位之外求反,然后加1,就可以得到该数的补码表示。 针对这道题目,由于109=64+32+8+4+1,则x=-109/128=-(64/128+32/128+8/128+4/128+1/128) =-(1/2+1/4+1/16+1/32+1/128)。根据上面的分析,可以确定x的原码为1110 1101。对原码求反(符号位不变)后的值为1001 0010,加1得到该数的补码为1001 0011。所以本试题的正确答案是选项A。