全部题库 / 计算机 / 试题详情
单选题 计算机
2013-09-26

一个C语言程序在一台32位机器上运行。程序中定义了三个变量xyz,其中x和z是int型,y为short型。当x=127,y=-9时,执行赋值语句z=x+y后,xyz的值分别是 

A.X=0000007FH,y=FFF9H,z=00000076H 
B.X=0000007FH,y=FFF9H,z=FFFF0076H 
C.X=0000007FH,y=FFF7H,z=FFFF0076H 
D.X=0000007FH,y=FFF7H,z=00000076H 

参考答案

D

答案解析

十进制转换:

十进制转任意进制的通用方法是:除x取余倒排法(x代表进制数)。
如:将十进制数76转换成任意进制
1.
转成二进制
76 / 2 ... 0
= 38 / 2 ... 0
= 19 / 2 ... 1
= 9 / 2 ... 1
= 4 / 2 ... 0
= 2 / 2 ... 0
= 1 / 2 ... 1
76(10) = 1001100(2)

2.
转成八进制
76 / 8 ... 4
= 9 / 8 ... 1
= 1 / 8 ... 1
76(10) = 114(8)

3.
转成十六进制
76 / 16 ... 12
= 4 / 16 ... 4
76(10)=4C(16)

B :二进制数。
Q
:八进制数。
D
:十进制数。
H
:十六进制数。

负数用十六进制和八进制怎么表示?

使用补码(二进制),而且还要指定字长

比如说一个二字节整型的 -2 就应该是:
11111111 11111110
再转化其它进制
十六进制:FFFE
八进制:177776

你可能感兴趣的试题